diff --git a/.github/ISSUE_TEMPLATE/bug.md b/.github/ISSUE_TEMPLATE/bug.md deleted file mode 100644 index 63e0e64f94..0000000000 --- a/.github/ISSUE_TEMPLATE/bug.md +++ /dev/null @@ -1,44 +0,0 @@ ---- -name: 🐛 Bug Report -about: Submit a bug report to help us improve -labels: "bug" ---- - -## 🐛 Bug Report - -(A clear and concise description of what the bug is) - -## Have you spent some time to check if this issue has been raised before? - -(Have you googled for a similar issue or checked our older issues for a similar bug) - -## To Reproduce - -(Write your steps here:) - -## Expected behavior - - - -(Write what you thought would happen.) - -## Actual Behavior - - - -(Write what happened. Add screenshots, if applicable.) - -## Your Environment - - - -(Write Environment, Operating system and version etc.) diff --git a/.github/ISSUE_TEMPLATE/bug.yaml b/.github/ISSUE_TEMPLATE/bug.yaml new file mode 100644 index 0000000000..1399d56746 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug.yaml @@ -0,0 +1,83 @@ +name: "🐛 Bug Report" +description: "Submit a bug report to help us improve" +title: "🐛 Bug Report: " +labels: [bug] +body: + - type: markdown + attributes: + value: | + Thanks for taking the time to fill out our bug report form 🙏 + - type: textarea + id: steps-to-reproduce + validations: + required: true + attributes: + label: "👟 Reproduction steps" + description: "How do you trigger this bug? Please walk us through it step by step." + placeholder: "When I ..." + - type: textarea + id: expected-behavior + validations: + required: true + attributes: + label: "👍 Expected behavior" + description: "What did you think would happen?" + placeholder: "It should ..." + - type: textarea + id: actual-behavior + validations: + required: true + attributes: + label: "👎 Actual Behavior" + description: "What did actually happen? Add screenshots, if applicable." + placeholder: "It actually ..." + - type: dropdown + id: appwrite-version + attributes: + label: "🎲 Appwrite version" + description: "What version of Appwrite are you running?" + options: + - Version 0.11.x + - Version 0.10.x + - Version 0.9.x + - Version 0.8.x + - Version 0.7.x + - Version 0.6.x + - Different version (specify in environment) + validations: + required: true + - type: dropdown + id: operating-system + attributes: + label: "💻 Operating system" + description: "What OS is your server / device running on?" + options: + - Linux + - MacOS + - Windows + - Something else + validations: + required: true + - type: textarea + id: environment + validations: + required: false + attributes: + label: "🧱 Your Environment" + description: "Is your environment customized in any way?" + placeholder: "I use Cloudflare for ..." + - type: checkboxes + id: no-duplicate-issues + attributes: + label: "👀 Have you spent some time to check if this issue has been raised before?" + description: "Have you Googled for a similar issue or checked our older issues for a similar bug?" + options: + - label: "I checked and didn't find similar issue" + required: true + - type: checkboxes + id: read-code-of-conduct + attributes: + label: "🏢 Have you read the Code of Conduct?" + options: + - label: "I have read the [Code of Conduct](https://github.com/appwrite/appwrite/blob/HEAD/CODE_OF_CONDUCT.md)" + required: true diff --git a/.github/ISSUE_TEMPLATE/documentation.md b/.github/ISSUE_TEMPLATE/documentation.md deleted file mode 100644 index 9aa7e59e19..0000000000 --- a/.github/ISSUE_TEMPLATE/documentation.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -name: 📚 Documentation -about: Report an issue related to documentation -labels: "documentation" ---- - -## 📚 Documentation - -(A clear and concise description of what the issue is.) - -## Have you spent some time to check if this issue has been raised before? - -(Have you googled for a similar issue or checked our older issues for a similar bug) - -### Have you read the [Code of Conduct](https://github.com/appwrite/appwrite/blob/master/CODE_OF_CONDUCT.md)? - -(Write your answer here.) diff --git a/.github/ISSUE_TEMPLATE/documentation.yaml b/.github/ISSUE_TEMPLATE/documentation.yaml new file mode 100644 index 0000000000..c2f829df39 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/documentation.yaml @@ -0,0 +1,32 @@ +name: "📚 Documentation" +description: "Report an issue related to documentation" +title: "📚 Documentation: " +labels: [documentation] +body: + - type: markdown + attributes: + value: | + Thanks for taking the time to make our documentation better 🙏 + - type: textarea + id: issue-description + validations: + required: true + attributes: + label: "💭 Description" + description: "A clear and concise description of what the issue is." + placeholder: "Documentation should not ..." + - type: checkboxes + id: no-duplicate-issues + attributes: + label: "👀 Have you spent some time to check if this issue has been raised before?" + description: "Have you Googled for a similar issue or checked our older issues for a similar bug?" + options: + - label: "I checked and didn't find similar issue" + required: true + - type: checkboxes + id: read-code-of-conduct + attributes: + label: "🏢 Have you read the Code of Conduct?" + options: + - label: "I have read the [Code of Conduct](https://github.com/appwrite/appwrite/blob/HEAD/CODE_OF_CONDUCT.md)" + required: true \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/feature.md b/.github/ISSUE_TEMPLATE/feature.md deleted file mode 100644 index 35ad1b9d8f..0000000000 --- a/.github/ISSUE_TEMPLATE/feature.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -name: 🚀 Feature -about: Submit a proposal for a new feature -labels: "feature" ---- - -## 🚀 Feature - -(A clear and concise description of what the feature is.) - -## Have you spent some time to check if this issue has been raised before? - -(Have you googled for a similar issue or checked our older issues for a similar bug) - -### Have you read the [Code of Conduct](https://github.com/appwrite/appwrite/blob/master/CODE_OF_CONDUCT.md)? - -(Write your answer here.) - -## Pitch - -(Please explain why this feature should be implemented and how it would be used. Add examples, if applicable.) diff --git a/.github/ISSUE_TEMPLATE/feature.yaml b/.github/ISSUE_TEMPLATE/feature.yaml new file mode 100644 index 0000000000..6181cda753 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature.yaml @@ -0,0 +1,40 @@ +name: 🚀 Feature +description: "Submit a proposal for a new feature" +title: "🚀 Feature: " +labels: [feature] +body: + - type: markdown + attributes: + value: | + Thanks for taking the time to fill out our feature request form 🙏 + - type: textarea + id: feature-description + validations: + required: true + attributes: + label: "🔖 Feature description" + description: "A clear and concise description of what the feature is." + placeholder: "You should add ..." + - type: textarea + id: pitch + validations: + required: true + attributes: + label: "🎤 Pitch" + description: "Please explain why this feature should be implemented and how it would be used. Add examples, if applicable." + placeholder: "In my use-case, ..." + - type: checkboxes + id: no-duplicate-issues + attributes: + label: "👀 Have you spent some time to check if this issue has been raised before?" + description: "Have you Googled for a similar issue or checked our older issues for a similar bug?" + options: + - label: "I checked and didn't find similar issue" + required: true + - type: checkboxes + id: read-code-of-conduct + attributes: + label: "🏢 Have you read the Code of Conduct?" + options: + - label: "I have read the [Code of Conduct](https://github.com/appwrite/appwrite/blob/HEAD/CODE_OF_CONDUCT.md)" + required: true \ No newline at end of file diff --git a/.travis-ci/build.sh b/.travis-ci/build.sh index 050168289a..af8156f901 100644 --- a/.travis-ci/build.sh +++ b/.travis-ci/build.sh @@ -15,7 +15,7 @@ then exit 1 fi -if test $(find "./app/db/DBIP/dbip-country-lite-2021-06.mmdb" -mmin +259200) +if test $(find "./app/db/DBIP/dbip-country-lite-2021-10.mmdb" -mmin +259200) then printf "${RED}GEO country DB has not been updated for more than 6 months. Go to https://db-ip.com/db/download/ip-to-country-lite to download a newer version${NC}\n" fi diff --git a/CHANGES.md b/CHANGES.md index e95a225b84..61fc8d0635 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,3 +1,71 @@ +# Version 0.11.0 + +## Features +- Added Swift Platform Support +- Added new Cloud Functions Runtimes: + - Swift 5.5 + - Java 17 + - Python 3.10 + - Deno 1.12 + - Deno 1.13 + - Deno 1.14 +- Added translations: + - German `de` by @SoftCreatR in https://github.com/appwrite/appwrite/pull/1790 + - Hebrew `he` by @Kokoden in https://github.com/appwrite/appwrite/pull/1846 + - Oriya `or` by @Rutam21 in https://github.com/appwrite/appwrite/pull/1827 + - Italian `it` by @ilmalte in https://github.com/appwrite/appwrite/pull/1824 + - Portugese (Portugal) `pt-PT` by @OscarRG in https://github.com/appwrite/appwrite/pull/1820 + - Portugese (Brazil) `pt-BR` by @renato04 in https://github.com/appwrite/appwrite/pull/1817 + - Indonesian `id` by @Hrdtr in https://github.com/appwrite/appwrite/pull/1816 + - Korean `ko` by @ssong in https://github.com/appwrite/appwrite/pull/1814 + - Ukrainian `uk` by @daniloff200 in https://github.com/appwrite/appwrite/pull/1794 + - Russian `ru` by @daniloff200 in https://github.com/appwrite/appwrite/pull/1795 + - Belarusian `be` by @daniloff200 in https://github.com/appwrite/appwrite/pull/1796 + - Arabic `ar` by @arsangamal in https://github.com/appwrite/appwrite/pull/1800 + - Malay `ms` by @izqalan in https://github.com/appwrite/appwrite/pull/1806 + - Gujarati `gu` by @honeykpatel in https://github.com/appwrite/appwrite/pull/1808 + - Polish `pl` by @achromik in https://github.com/appwrite/appwrite/pull/1811 + - Malayalam `ml` by @anoopmsivadas in https://github.com/appwrite/appwrite/pull/1813 + - Croatian `hr` by @mbos2 in https://github.com/appwrite/appwrite/pull/1825 + - Danish `da` by @Ganzabahl in https://github.com/appwrite/appwrite/pull/1829 + - French `fr` by @Olyno in https://github.com/appwrite/appwrite/pull/1771 + - Spanish `es` by @chuiizeet in https://github.com/appwrite/appwrite/pull/1833 + - Vietnamese `vt` by @hdkhoasgt in https://github.com/appwrite/appwrite/pull/1880 + - Kannada `kn` by @Nikhil-1503 in https://github.com/appwrite/appwrite/pull/1840 + - Finnish `fi` by @minna-xD in https://github.com/appwrite/appwrite/pull/1847 + - Thai `th` by @teeradon43 in https://github.com/appwrite/appwrite/pull/1851 + - Persian `fa` by @aerabi in https://github.com/appwrite/appwrite/pull/1878 + - Norwegian `no` by @NeonSpork in https://github.com/appwrite/appwrite/pull/1871 + - Norwegian (Nynorsk) `nn` by @NeonSpork in https://github.com/appwrite/appwrite/pull/2019 + - Norwegian (Bokmål) `nb` by @Exouxas in https://github.com/appwrite/appwrite/pull/1877 + - Dutch `nl` by @ArtixAllMighty in https://github.com/appwrite/appwrite/pull/1879 + - Sanskrit `sa` by @Rutam21 in https://github.com/appwrite/appwrite/pull/1895 + - Nepali `ne` by @TheLearneer in https://github.com/appwrite/appwrite/pull/1807 + - Swedish `sv` by @didair in https://github.com/appwrite/appwrite/pull/1948 + - Hindi `hi` by @willtryagain in https://github.com/appwrite/appwrite/pull/1810 + - Luxembourgish `lb` by @OscarRG in https://github.com/appwrite/appwrite/pull/1857 + - Catalan `ca` by @und1n3 in https://github.com/appwrite/appwrite/pull/1875 + - Chinese (Taiwan) `zh-TW` by @HelloSeaNation in https://github.com/appwrite/appwrite/pull/2134 + - Chinese (PRC) `zh-CN` by @HelloSeaNation in https://github.com/appwrite/appwrite/pull/1836 + - Bihari `bh` by @dazzlerkumar in https://github.com/appwrite/appwrite/pull/1841 + - Romanian `ro` by @cristina-sirbu in https://github.com/appwrite/appwrite/pull/1868 + - Slovak `sk` by @jakubhi in https://github.com/appwrite/appwrite/pull/1958 + - Greek `el` by @kostapappas in https://github.com/appwrite/appwrite/pull/1992 + - Assamese `as` by @PrerakMathur20 in https://github.com/appwrite/appwrite/pull/2023 + - Esperanto `eo` by @tacoelho in https://github.com/appwrite/appwrite/pull/1927 + - Irish `ga` by @ivernus in https://github.com/appwrite/appwrite/pull/2178 + - Azerbaijani `az` by @aerabi in https://github.com/appwrite/appwrite/pull/2129 + - Latvian `lv` by @RReiso in https://github.com/appwrite/appwrite/pull/2022 + - Lithuanian `lt` by @mantasio in https://github.com/appwrite/appwrite/pull/2018 + - Japanese `jp` by @takmar in https://github.com/appwrite/appwrite/pull/2177 +- Added new audio mime-types for viewing audio files on browsers by @eldadfux in https://github.com/appwrite/appwrite/pull/2239 + +## Bugs +- Fixed `sum` description by @eldadfux in https://github.com/appwrite/appwrite/pull/1659 +- Fixed `Add Team Membership` parameter order by @deshankoswatte in https://github.com/appwrite/appwrite/pull/1818 +- Fixed Storage File Preview on mobile devices by @m1ga in https://github.com/appwrite/appwrite/pull/2230 +- Fixed `top-left` gravity on `Get File Preview` endpoint by @lohanidamodar in https://github.com/appwrite/appwrite/pull/2249 + # Version 0.10.4 ## Bugs diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 945229c51c..01aa3d2ede 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -395,7 +395,7 @@ Pull requests are great, but there are many other areas where you can help Appwr ### Blogging & Speaking -Blogging, speaking about, or creating tutorials about one of Appwrite’s many features. Mention [@appwrite_io](https://twitter.com/appwrite_io) on Twitter and/or email team [at] appwrite [dot] io so we can give pointers and tips and help you spread the word by promoting your content on the different Appwrite communication channels. Please add your blog posts and videos of talks to our [Awesome Appwrite](https://github.com/appwrite/awesome-appwrite) repo on GitHub. +Blogging, speaking about, or creating tutorials about one of Appwrite’s many features. Mention [@appwrite_io](https://twitter.com/appwrite_io) on Twitter and/or [email team@appwrite.io](mailto:team@appwrite.io) so we can give pointers and tips and help you spread the word by promoting your content on the different Appwrite communication channels. Please add your blog posts and videos of talks to our [Awesome Appwrite](https://github.com/appwrite/awesome-appwrite) repo on GitHub. ### Presenting at Meetups diff --git a/Dockerfile b/Dockerfile index 18971b7596..f5f1279a39 100755 --- a/Dockerfile +++ b/Dockerfile @@ -18,7 +18,7 @@ ARG DEBUG=false ENV DEBUG=$DEBUG ENV PHP_REDIS_VERSION=5.3.4 \ - PHP_SWOOLE_VERSION=v4.7.0 \ + PHP_SWOOLE_VERSION=v4.8.0 \ PHP_IMAGICK_VERSION=3.5.1 \ PHP_YAML_VERSION=2.2.1 \ PHP_MAXMINDDB_VERSION=v1.10.1 diff --git a/README.md b/README.md index b3a0714789..e71cbf57e9 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@

-[![Hacktoberfest](https://badgen.net/badge/hacktoberfest/friendly/pink)](https://hacktoberfest.appwrite.io) +[![Hacktoberfest](https://img.shields.io/static/v1?label=hacktoberfest&message=friendly&color=90a88b&style=flat-square)](https://hacktoberfest.appwrite.io) [![Discord](https://img.shields.io/discord/564160730845151244?label=discord&style=flat-square)](https://appwrite.io/discord) [![Docker Pulls](https://img.shields.io/docker/pulls/appwrite/appwrite?color=f02e65&style=flat-square)](https://hub.docker.com/r/appwrite/appwrite) [![Build Status](https://img.shields.io/travis/com/appwrite/appwrite?style=flat-square)](https://travis-ci.com/appwrite/appwrite) @@ -16,7 +16,7 @@ [![Translate](https://img.shields.io/badge/translate-f02e65?style=flat-square)](docs/tutorials/add-translations.md) -[**Appwrite 0.10 has been released! Learn what's new!**](https://dev.to/appwrite/it-s-here-announcing-appwrite-0-10-and-the-new-appwrite-realtime-api-lbm) +[**Appwrite 0.11 has been released! Learn what's new!**](https://dev.to/appwrite/building-apps-just-got-swifter-announcing-appwrite-v011-4g62) Appwrite is an end-to-end backend server for Web, Mobile, Native, or Backend apps packaged as a set of Docker microservices. Appwrite abstracts the complexity and repetitiveness required to build a modern backend API from scratch and allows you to build secure apps faster. @@ -39,6 +39,7 @@ Table of Contents: - [SDKs](#sdks) - [Client](#client) - [Server](#server) + - [Community](#community) - [Contributing](#contributing) - [Security](#security) - [Follow Us](#follow-us) @@ -57,7 +58,7 @@ docker run -it --rm \ --volume /var/run/docker.sock:/var/run/docker.sock \ --volume "$(pwd)"/appwrite:/usr/src/code/appwrite:rw \ --entrypoint="install" \ - appwrite/appwrite:0.10.4 + appwrite/appwrite:0.11.0 ``` ### Windows @@ -69,7 +70,7 @@ docker run -it --rm ^ --volume //var/run/docker.sock:/var/run/docker.sock ^ --volume "%cd%"/appwrite:/usr/src/code/appwrite:rw ^ --entrypoint="install" ^ - appwrite/appwrite:0.10.4 + appwrite/appwrite:0.11.0 ``` #### PowerShell @@ -79,10 +80,10 @@ docker run -it --rm , --volume /var/run/docker.sock:/var/run/docker.sock , --volume ${pwd}/appwrite:/usr/src/code/appwrite:rw , --entrypoint="install" , - appwrite/appwrite:0.10.4 + appwrite/appwrite:0.11.0 ``` -Once the Docker installation completes, go to http://localhost to access the Appwrite console from your browser. Please note that on non-linux native hosts, the server might take a few minutes to start after installation completes. +Once the Docker installation completes, go to http://localhost to access the Appwrite console from your browser. Please note that on non-Linux native hosts, the server might take a few minutes to start after installation completes. For advanced production and custom installation, check out our Docker [environment variables](https://appwrite.io/docs/environment-variables) docs. You can also use our public [docker-compose.yml](https://gist.github.com/eldadfux/977869ff6bdd7312adfd4e629ee15cc5#file-docker-compose-yml) file to manually set up an environment. @@ -93,14 +94,14 @@ If you are upgrading your Appwrite server from an older version, you should use ## Getting Started -Getting started with Appwrite is as easy as creating a new project, choosing your platform, and integrating its SDK in your code. You can easily get started with your platform of choice by reading one of our Getting Started tutorials. +Getting started with Appwrite is as easy as creating a new project, choosing your platform, and integrating its SDK into your code. You can easily get started with your platform of choice by reading one of our Getting Started tutorials. * [Getting Started for Web](https://appwrite.io/docs/getting-started-for-web) * [Getting Started for Flutter](https://appwrite.io/docs/getting-started-for-flutter) +* [Getting Started for Apple](https://appwrite.io/docs/getting-started-for-apple) +* [Getting Started for Android](https://appwrite.io/docs/getting-started-for-android) * [Getting Started for Server](https://appwrite.io/docs/getting-started-for-server) * [Getting Started for CLI](https://appwrite.io/docs/command-line) -* Getting Started for Android (Coming soon...) -* Getting Started for iOS (Coming soon...) ### Services @@ -122,18 +123,24 @@ Below is a list of currently supported platforms and languages. If you wish to h #### Client * ✅   [Web](https://github.com/appwrite/sdk-for-web) (Maintained by the Appwrite Team) * ✅   [Flutter](https://github.com/appwrite/sdk-for-flutter) (Maintained by the Appwrite Team) +* ✅   [Apple](https://github.com/appwrite/sdk-for-apple) - **Beta** (Maintained by the Appwrite Team) * ✅   [Android](https://github.com/appwrite/sdk-for-android) (Maintained by the Appwrite Team) #### Server * ✅   [NodeJS](https://github.com/appwrite/sdk-for-node) (Maintained by the Appwrite Team) * ✅   [PHP](https://github.com/appwrite/sdk-for-php) (Maintained by the Appwrite Team) -* ✅   [Dart](https://github.com/appwrite/sdk-for-dart) **Beta** (Maintained by the Appwrite Team) +* ✅   [Dart](https://github.com/appwrite/sdk-for-dart) - (Maintained by the Appwrite Team) * ✅   [Deno](https://github.com/appwrite/sdk-for-deno) - **Beta** (Maintained by the Appwrite Team) * ✅   [Ruby](https://github.com/appwrite/sdk-for-ruby) (Maintained by the Appwrite Team) * ✅   [Python](https://github.com/appwrite/sdk-for-python) (Maintained by the Appwrite Team) * ✅   [Kotlin](https://github.com/appwrite/sdk-for-kotlin) - **Beta** (Maintained by the Appwrite Team) +* ✅   [Apple](https://github.com/appwrite/sdk-for-apple) - **Beta** (Maintained by the Appwrite Team) * ✅   [.NET](https://github.com/appwrite/sdk-for-dotnet) - **Experimental** (Maintained by the Appwrite Team) +#### Community +* ✅   [Appcelerator Titanium](https://github.com/m1ga/ti.appwrite) (Maintained by [Michael Gangolf](https://github.com/m1ga/)) +* ✅   [Godot Engine](https://github.com/GodotNuts/appwrite-sdk) (Maintained by [fenix-hub @GodotNuts](https://github.com/fenix-hub)) + Looking for more SDKs? - Help us by contributing a pull request to our [SDK Generator](https://github.com/appwrite/sdk-generator)! ## Contributing @@ -148,7 +155,7 @@ For security issues, kindly email us at [security@appwrite.io](mailto:security@a ## Follow Us -Join our growing community around the world! See our official [Blog](https://medium.com/appwrite-io). Follow us on [Twitter](https://twitter.com/appwrite_io), [Facebook Page](https://www.facebook.com/appwrite.io), [Facebook Group](https://www.facebook.com/groups/appwrite.developers/) or join our live [Discord server](https://discord.gg/GSeTUeA) for more help, ideas, and discussions. +Join our growing community around the world! See our official [Blog](https://medium.com/appwrite-io). Follow us on [Twitter](https://twitter.com/appwrite_io), [Facebook Page](https://www.facebook.com/appwrite.io), [Facebook Group](https://www.facebook.com/groups/appwrite.developers/) , [Dev Community](https://dev.to/appwrite) or join our live [Discord server](https://discord.gg/GSeTUeA) for more help, ideas, and discussions. ## License diff --git a/app/config/locale/codes.php b/app/config/locale/codes.php index c8623f533c..b403a202f7 100644 --- a/app/config/locale/codes.php +++ b/app/config/locale/codes.php @@ -3,23 +3,30 @@ return [ 'af', // Afrikaans 'ar', // Arabic + 'as', // Assamese + 'az', // Azerbaijani 'be', // Belarusian 'bg', // Bulgarian + 'bh', // Bihari 'bn', // Bengali - 'bs', //Bosnian + 'bs', // Bosnian 'ca', // Catalan 'cs', // Czech + 'da', // Danish 'de', // German 'en', // English + 'eo', // Esperanto 'es', // Spanish 'fa', // Farsi/Persian 'fi', // Finnish 'fo', // Faroese 'fr', // French 'el', // Greek - 'gu', //Gujrati + 'ga', // Irish + 'gu', // Gujrati 'he', // Hebrew - 'hi', // Hindi + 'hi', // Hindi, + 'hr', // Croatian 'hu', // Hungarian 'hy', // Armenian 'id', // Indonesian @@ -30,22 +37,29 @@ return [ 'kn', // Kannada 'km', // Khmer 'ko', // Korean + 'lb', // Luxembourgish 'lt', // Lithuanian + 'lv', // Latvian 'ml', // Malayalam 'mr', // Marathi 'ms', // Malay + 'nb', // Norwegian - Bokmål 'nl', // Dutch - 'no', // Norwegian + 'nn', // Norwegian (nynorsk) + 'no', // Norwegian (bokmål) 'ne', // Nepali 'or', // Oriya 'tl', // Filipino 'pl', // Polish 'pt-br', // Portuguese - Brazil 'pt-pt', // Portuguese - Portugal - 'pa', //Punjabi + 'pa', // Punjabi 'ro', // Romanian 'ru', // Russian + 'sa', //Sanskrit + 'sd', // Sindhi 'si', // Sinhala + 'sk', // Slovakia 'sl', // Slovenian 'sq', // Albanian 'sv', // Swedish @@ -53,7 +67,7 @@ return [ 'th', // Thai 'tr', // Turkish 'uk', // Ukrainian - 'ur', //Urdu + 'ur', // Urdu 'vi', // Vietnamese 'zh-cn', // Chinese - China 'zh-tw', // Chinese - Taiwan diff --git a/app/config/locale/currencies.php b/app/config/locale/currencies.php index 461230f19a..ab40c216b7 100644 --- a/app/config/locale/currencies.php +++ b/app/config/locale/currencies.php @@ -870,13 +870,13 @@ return [ ], [ 'symbol' => 'zł', - 'name' => 'Polish Zloty', + 'name' => 'Polski Złoty', 'symbolNative' => 'zł', 'decimalDigits' => 2, 'rounding' => 0, 'code' => 'PLN', - 'namePlural' => 'Polish zlotys', - 'locations' => [], + 'namePlural' => 'Polish zlotych', + 'locations' => ['PL'], ], [ 'symbol' => '₲', diff --git a/app/config/locale/languages.php b/app/config/locale/languages.php index ee0d8697c0..99b1cb8b2b 100644 --- a/app/config/locale/languages.php +++ b/app/config/locale/languages.php @@ -291,7 +291,7 @@ return [ [ "code" => "hi", "name" => "Hindi", - "nativeName" => "हिन्दी" + "nativeName" => "हिन्दी / हिंदी " ], [ "code" => "ho", @@ -706,7 +706,7 @@ return [ [ "code" => "sd", "name" => "Sindhi", - "nativeName" => "सिनधि" + "nativeName" => "सिन्धी / सिंधी " ], [ "code" => "se", diff --git a/app/config/locale/translations/af.json b/app/config/locale/translations/af.json index 53e7176e31..d3bccdadae 100644 --- a/app/config/locale/translations/af.json +++ b/app/config/locale/translations/af.json @@ -3,24 +3,30 @@ "settings.locale": "af", "settings.direction": "ltr", "emails.sender": "%s span", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Rekening Bevestiging", + "emails.verification.hello": "Goeie dag {{name}}", + "emails.verification.body": "Volg hierdie skakel om u e-pos adres te bevestig.", + "emails.verification.footer": "Ignoreer gerus hierdie boodskap as u nie die versoek gestuur het om u adres te bevestig nie.", + "emails.verification.thanks": "Baie dankie", + "emails.verification.signature": "Die {{project}} span", + "emails.magicSession.subject": "Teken aan", + "emails.magicSession.hello": "Goeie dag,", + "emails.magicSession.body": "Volg hierdie skakel om in te teken.", + "emails.magicSession.footer": "Ignoreer gerus hierdie boodskap as u nie die versoek gestuur het om met die' adres in te teken nie.", + "emails.magicSession.thanks": "Baie dankie", + "emails.magicSession.signature": "Die {{project}} span", + "emails.recovery.subject": "Herstel Wagwoord", + "emails.recovery.hello": "Goeie dag {{name}}", + "emails.recovery.body": "Volg hierdie skakel om u {{project}} wagwoord te herstel.", + "emails.recovery.footer": "Ignoreer gerus hierdie boodskap as u nie die versoek gestuur het om u wagwoord te herstel nie.", + "emails.recovery.thanks": "Baie dankie", + "emails.recovery.signature": "Die {{project}} span", + "emails.invitation.subject": "Uitnodiging om by die %s span aan te sluit by %s", + "emails.invitation.hello": "Goeie dag,", + "emails.invitation.body": "Hierdie boodskap is aan u gestuur omdat {{owner}} u uitnooi om 'n lid van die {{team}} groep by die {{project}} projek te wees.", + "emails.invitation.footer": "As u nie belang stel nie, kan u gerus hierdie boodskap ignoreer.", + "emails.invitation.thanks": "Baie dankie", + "emails.invitation.signature": "Die {{project}} span", "locale.country.unknown": "Onbekend", "countries.af": "Afghanistan", "countries.ao": "Angola", diff --git a/app/config/locale/translations/ar.json b/app/config/locale/translations/ar.json index 53b69b81e0..9a40d4f1c3 100644 --- a/app/config/locale/translations/ar.json +++ b/app/config/locale/translations/ar.json @@ -3,24 +3,30 @@ "settings.locale": "ar", "settings.direction": "rtl", "emails.sender": "فريق %s", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "تأكيد الحساب", + "emails.verification.hello": "مرحبا {{name}}", + "emails.verification.body": "برجاء اتباع الرابط التالي لتأكيد بريدك الإلكتروني", + "emails.verification.footer": "لو لم تطلب تأكيد هذا البريد الإلكتروني، يمكنك تجاهل هذه الرسالة", + "emails.verification.thanks": "شكرا", + "emails.verification.signature": "فريق {{project}}", + "emails.magicSession.subject": "تسجيل الدخول", + "emails.magicSession.hello": "أهلا،", + "emails.magicSession.body": "اتبع هذا الرابط لتسجيل الدخول", + "emails.magicSession.footer": "لو لم تطلب تسجيل الدخول بهذا البريد الاكتروني ، يمكنك تجاهل هذه الرسالة", + "emails.magicSession.thanks": "شكرا", + "emails.magicSession.signature": "فريق {{project}}", + "emails.recovery.subject": "تغيير كلمة السر", + "emails.recovery.hello": "أهلا {{name}}", + "emails.recovery.body": "برجاء اتباع الراط التالي لتغيير كلمة السر الخاصة بـ{{project}}", + "emails.recovery.footer": "لولم تطلب تغيير كلمة السر، يمكنك تجاهل هذه الرسالة", + "emails.recovery.thanks": "شكرا", + "emails.recovery.signature": "فريق {{project}}", + "emails.invitation.subject": "دعوة لفريق %s في %s", + "emails.invitation.hello": "أهلا", + "emails.invitation.body": "هذة الرسالة تم ارسالها لك لأن {{owner}} ارسل لك دعوة لتكون عضوا بفريق {{team}} في {{project}}", + "emails.invitation.footer": "اذا كنت غير مهتم، يمكنك تجاهل هذه الرسالة", + "emails.invitation.thanks": "شكرا", + "emails.invitation.signature": "فريق {{project}}", "locale.country.unknown": "مجهول", "countries.af": "أفغانستان", "countries.ao": "أنغولا", diff --git a/app/config/locale/translations/as.json b/app/config/locale/translations/as.json new file mode 100644 index 0000000000..20bd54a8e9 --- /dev/null +++ b/app/config/locale/translations/as.json @@ -0,0 +1,232 @@ +{ + "settings.inspire": "\"জ্ঞানী হোৱাৰ কলা হৈছে কি উপেক্ষা কৰিব লাগে জনাৰ কলা।\"", + "settings.locale": "as", + "settings.direction": "ltr", + "emails.sender": "%s দল", + "emails.verification.subject": "একাউণ্ট প্ৰমাণীকৰণ", + "emails.verification.hello": "নমস্কাৰ {{name}}", + "emails.verification.body": "আপোনাৰ ইমেইল ঠিকনা প্ৰমাণিত কৰিবলৈ এই লিংকটো অনুসৰণ কৰক।", + "emails.verification.footer": "যদি আপুনি এই ঠিকনাটো সত্যাপিত কৰিবলৈ কোৱা নাই, আপুনি এই বাৰ্তাটো উপেক্ষা কৰিব পাৰে।", + "emails.verification.thanks": "ধন্যবাদ", + "emails.verification.signature": "{{project}} দল", + "emails.magicSession.subject": "লগইন", + "emails.magicSession.hello": "নমস্কাৰ,", + "emails.magicSession.body": "লগইন কৰিবলৈ এই লিংকটো অনুসৰণ কৰক।", + "emails.magicSession.footer": "যদি আপুনি এই ইমেইল ব্যৱহাৰ কৰি লগইন কৰিবলৈ কোৱা নাছিল, আপুনি এই বাৰ্তাটো উপেক্ষা কৰিব পাৰে।", + "emails.magicSession.thanks": "ধন্যবাদ", + "emails.magicSession.signature": "{{project}} দল", + "emails.recovery.subject": "পাছৱাৰ্ড ৰিছেট", + "emails.recovery.hello": "ধন্যবাদ {{name}}", + "emails.recovery.body": "আপোনাৰ {{project}} পাছৱৰ্ড ৰিছেট কৰিবলৈ এই লিংকটো অনুসৰণ কৰক।.", + "emails.recovery.footer": "যদি আপুনি আপোনাৰ পাছৱৰ্ড ৰিছেট কৰিবলৈ কোৱা নাছিল, আপুনি এই বাৰ্তাটো উপেক্ষা কৰিব পাৰে।", + "emails.recovery.thanks": "ধন্যবাদ", + "emails.recovery.signature": "{{project}} দল", + "emails.invitation.subject": "%s বছৰত %s দললৈ নিমন্ত্ৰণ", + "emails.invitation.hello": "নমস্কাৰ", + "emails.invitation.body": "এই মেইলটো আপোনালৈ প্ৰেৰণ কৰা হৈছিল কাৰণ {{owner}} জনে আপোনাক {{project}} বছৰবয়সত {{team}} দলৰ সদস্য হ'বলৈ আমন্ত্ৰণ জনাব বিচাৰিছিল।", + "emails.invitation.footer": "যদি আপুনি আগ্ৰহী নহয়, আপুনি এই বাৰ্তাটো উপেক্ষা কৰিব পাৰে।", + "emails.invitation.thanks": "ধন্যবাদ", + "emails.invitation.signature": "{{project}} দল", + "locale.country.unknown": "অজ্ঞাত ", + "countries.af": "আফগানিস্তান ", + "countries.ao": "এঙ্গোলা", + "countries.al": "আল্বেনিয়া", + "countries.ad": "এণ্ডোৰা", + "countries.ae": "সংযুক্ত আৰৱ আমিৰাট", + "countries.ar": "আৰ্জেণ্টিনা", + "countries.am": "আৰ্মেনিয়া", + "countries.ag": "এণ্টিগুয়া আৰু বাৰ্বুডা", + "countries.au": "অষ্ট্ৰেলিয়া", + "countries.at": "অষ্ট্ৰিয়া", + "countries.az": "আজাৰবাইজান", + "countries.bi": "বুৰুণ্ডি", + "countries.be": "বেলজিয়াম", + "countries.bj": "বেনিন", + "countries.bf": "বুৰ্কিনা ফাছো", + "countries.bd": "বাংলাদেশ", + "countries.bg": "বুলগেৰিয়া", + "countries.bh": "বাহৰেইন", + "countries.bs": "বাহামা", + "countries.ba": "বোছনিয়া আৰু হাৰ্জেগোভিনা", + "countries.by": "বেলাৰুচ", + "countries.bz": "বেলিজ", + "countries.bo": "বোলিভিয়া", + "countries.br": "ব্ৰাজিল", + "countries.bb": "বাৰ্বাডোচ", + "countries.bn": "ব্ৰুনেই", + "countries.bt": "ভূটান", + "countries.bw": "বটচৱানা", + "countries.cf": "মধ্য আফ্ৰিকান গণৰাজ্য", + "countries.ca": "কানাডা", + "countries.ch": "ছুইজাৰলেণ্ড", + "countries.cl": "চিলি", + "countries.cn": "চীন", + "countries.ci": "আইভৰী কোষ্ট", + "countries.cm": "কেমেৰুন", + "countries.cd": "ডি আৰ কঙ্গো", + "countries.cg": "কঙ্গো গণৰাজ্য", + "countries.co": "কলোম্বিয়া", + "countries.km": "কোমোৰোচ", + "countries.cv": "কেপ ভাৰ্ডে", + "countries.cr": "কোষ্টা ৰিকা", + "countries.cu": "কিউবা", + "countries.cy": "চাইপ্ৰাছ", + "countries.cz": "চেকিয়া", + "countries.de": "জাৰ্মানী", + "countries.dj": "জিবুতি", + "countries.dm": "ডমিনিকা", + "countries.dk": "ডেনমাৰ্ক", + "countries.do": "ডমিনিকান ৰিপাব্লিক", + "countries.dz": "আলজেৰিয়া", + "countries.ec": "ইকুৱেডৰ", + "countries.eg": "ইজিপ্ত", + "countries.er": "ইৰিট্ৰিয়া", + "countries.es": "স্পেইন", + "countries.ee": "এষ্টোনিয়া", + "countries.et": "ইথিওপিয়া", + "countries.fi": "ফিনলেণ্ড", + "countries.fj": "ফিজি", + "countries.fr": "ফ্ৰান্স", + "countries.fm": "মাইক্ৰনেচিয়া", + "countries.ga": "গেবন", + "countries.gb": "যুক্তৰাজ্য", + "countries.ge": "ইউনাইটেড কিংদম", + "countries.gh": "ঘানা", + "countries.gn": "গিনি", + "countries.gm": "গাম্বিয়া", + "countries.gw": "গিনি-বিচাউ", + "countries.gq": "বিষুৱীয় গিনি", + "countries.gr": "গ্ৰীচ", + "countries.gd": "গ্ৰেনাডা", + "countries.gt": "গুয়াতেমালা", + "countries.gy": "গায়ানা", + "countries.hn": "হণ্ডুৰাছ", + "countries.hr": "ক্ৰোৱেছিয়া", + "countries.ht": "হাইতি", + "countries.hu": "হাংগেৰী", + "countries.id": "ইণ্ডোনেছিয়া", + "countries.in": "ভাৰত", + "countries.ie": "আয়াৰলেণ্ড", + "countries.ir": "ইৰাণ", + "countries.iq": "ইৰাক", + "countries.is": "আইচলেণ্ড", + "countries.il": "ইস্ৰায়েল", + "countries.it": "ইটালী", + "countries.jm": "জামাইকা", + "countries.jo": "জৰ্ডান", + "countries.jp": "জাপান", + "countries.kz": "কাজাখস্তান", + "countries.ke": "কেনিয়া", + "countries.kg": "কিৰগিজস্তান", + "countries.kh": "কম্বোডিয়া", + "countries.ki": "কিৰিবাটি", + "countries.kn": "ছেইণ্ট কিটছ এণ্ড নেভিছ", + "countries.kr": "দক্ষিণ কোৰিয়া", + "countries.kw": "কুৱেইট", + "countries.la": "লাওচ", + "countries.lb": "লেবানন", + "countries.lr": "লাইবেৰিয়া", + "countries.ly": "লিবিয়া", + "countries.lc": "ছেইণ্ট লুচিয়া", + "countries.li": "লিকটেনষ্টাইন", + "countries.lk": "শ্ৰীলংকা", + "countries.ls": "লেচোথো", + "countries.lt": "লিথুৱানিয়া", + "countries.lu": "লাক্সেমবাৰ্গ", + "countries.lv": "লাটভিয়া", + "countries.ma": "মৰক্কো", + "countries.mc": "মোনাকো", + "countries.md": "মলদোভা", + "countries.mg": "মাদাগাস্কাৰ", + "countries.mv": "মালদ্বীপ", + "countries.mx": "মেক্সিকো", + "countries.mh": "মাৰ্শ্বেল দ্বীপপুঞ্জ", + "countries.mk": "মেচিডোনিয়া", + "countries.ml": "মালি", + "countries.mt": "মাল্টা", + "countries.mm": "ম্যানমাৰ", + "countries.me": "মণ্টেনিগ্ৰো", + "countries.mn": "মঙ্গোলিয়া", + "countries.mz": "মোজাম্বিক", + "countries.mr": "মৌৰিতানিয়া", + "countries.mu": "মৰিচাছ", + "countries.mw": "মালাৱী", + "countries.my": "মালয়েছিয়া", + "countries.na": "নামিবিয়া", + "countries.ne": "নাইজাৰ", + "countries.ng": "নাইজেৰিয়া", + "countries.ni": "নিকাৰাগুয়া", + "countries.nl": "নেডাৰলেণ্ড", + "countries.no": "নৰৱে", + "countries.np": "নেপাল", + "countries.nr": "নাউৰু", + "countries.nz": "নিউজিলেণ্ড", + "countries.om": "ওমান", + "countries.pk": "পাকিস্তান", + "countries.pa": "পানামা", + "countries.pe": "পেৰু", + "countries.ph": "ফিলিপাইনচ", + "countries.pw": "পালাউ", + "countries.pg": "পাপুয়া নিউ গিনি", + "countries.pl": "পোলেণ্ড", + "countries.kp": "উত্তৰ কোৰিয়া", + "countries.pt": "পৰ্তুগাল", + "countries.py": "পাৰাগুৱে", + "countries.qa": "কাটাৰ", + "countries.ro": "ৰোমানিয়া", + "countries.ru": "ৰাছিয়া", + "countries.rw": "ৰৱাণ্ডা", + "countries.sa": "চৌদি আৰৱ", + "countries.sd": "চুদান", + "countries.sn": "ছেনেগাল", + "countries.sg": "ছিংগাপুৰ", + "countries.sb": "চলোমন দ্বীপপুঞ্জ", + "countries.sl": "চিয়েৰা লিয়ন", + "countries.sv": "এল চালভাডৰ", + "countries.sm": "চান মাৰিনো", + "countries.so": "চোমালিয়া", + "countries.rs": "ছাৰ্বিয়া", + "countries.ss": "দক্ষিণ চুদান", + "countries.st": "চাও টোম আৰু প্ৰিন্সিপ", + "countries.sr": "চুৰিনাম", + "countries.sk": "স্লোভাকিয়া", + "countries.si": "স্লোভেনিয়া", + "countries.se": "চুইডেন", + "countries.sz": "স্বাজিলেণ্ড", + "countries.sc": "চেচেলচ", + "countries.sy": "চিৰিয়া", + "countries.td": "চাদ", + "countries.tg": "টোগো", + "countries.th": "থাইলেণ্ড", + "countries.tj": "তাজিকিস্তান", + "countries.tm": "তুৰ্কমেনিস্তান", + "countries.tl": "তিমুৰ-লেষ্টে", + "countries.to": "টংগা", + "countries.tt": "ত্ৰিনিদাদ আৰু টোবাগো", + "countries.tn": "টিউনিচিয়া", + "countries.tr": "তুৰ্কী", + "countries.tv": "টুভালু", + "countries.tz": "তাঞ্জানিয়া", + "countries.ug": "উগাণ্ডা", + "countries.ua": "ইউক্ৰেইন", + "countries.uy": "উৰুগুৱে", + "countries.us": "আমেৰিকা যুক্তৰাষ্ট্ৰ", + "countries.uz": "উজবেকিস্তান", + "countries.va": "ভেটিকান চিটি", + "countries.vc": "ছেইণ্ট ভিনচেণ্ট এণ্ড দ্য গ্ৰেনাডাইনচ", + "countries.ve": "ভেনিজুৱেলা", + "countries.vn": "ভিয়েটনাম", + "countries.vu": "ভানুৱাটু", + "countries.ws": "চামোৱা", + "countries.ye": "য়েমেন", + "countries.za": "দক্ষিণ আফ্ৰিকা", + "countries.zm": "জাম্বিয়া", + "countries.zw": "জিম্বাবোৱে", + "continents.af": "আফ্ৰিকা", + "continents.an": "এণ্টাৰ্কটিকা", + "continents.as": "এছিয়া", + "continents.eu": "ইউৰোপ", + "continents.na": "উত্তৰ আমেৰিকা", + "continents.oc": "ওচেনিয়া", + "continents.sa": "দক্ষিণ আমেৰিকা" +} \ No newline at end of file diff --git a/app/config/locale/translations/az.json b/app/config/locale/translations/az.json new file mode 100644 index 0000000000..dd26ebda8e --- /dev/null +++ b/app/config/locale/translations/az.json @@ -0,0 +1,225 @@ +{ + "settings.inspire": "\"Ağıllı olmaq sənəti, nəyi gözdən qaçıracağını bilmək sənətidir.\"", + "settings.locale": "az", + "settings.direction": "ltr", + "emails.sender": "%s Komandası", + "emails.verification.subject": "Hesab Doğrulama", + "emails.verification.hello": "Salam {{name}}", + "emails.verification.body": "E-poçt ünvanınızı təsdiq etmək üçün bu linki izləyin.", + "emails.verification.footer": "Bu ünvanı doğrulamağı xahiş etməmisinizsə, bu mesajı gözardı edə bilərsiniz.", + "emails.verification.thanks": "Təşəkkürlər", + "emails.verification.signature": "{{project}} komandası", + "emails.magicSession.subject": "Daxil Olmaq", + "emails.magicSession.hello": "Salam,", + "emails.magicSession.body": "Daxil olmaq üçün bu linki izləyin.", + "emails.magicSession.footer": "Bu e-poçtdan istifadə edərək giriş istəməmisinizsə, bu mesajı görməməzlikdən gələ bilərsiniz.", + "emails.magicSession.thanks": "Təşəkkürlər", + "emails.magicSession.signature": "{{project}} komandası", + "emails.recovery.subject": "Şifrə Sıfırlanması", + "emails.recovery.hello": "Salam {{name}}", + "emails.recovery.body": "{{project}} şifrənizi sıfırlamaq üçün bu linki izləyin.", + "emails.recovery.footer": "Şifrənizi sıfırlamağı xahiş etməmisinizsə, bu mesajı gözardı edə bilərsiniz.", + "emails.recovery.thanks": "Təşəkkürlər", + "emails.recovery.signature": "{{project}} komandası", + "emails.invitation.subject": "%s Komandasına Dəvət %sdə", + "emails.invitation.hello": "Salam", + "emails.invitation.body": "{{owner}}, {{project}}də {{team}} komandasına üzv olmağa dəvət etmək istədiyi üçün bu məktub sizə göndərildi.", + "emails.invitation.footer": "Əgər maraqlanmırsınızsa, bu mesajı gözardı edə bilərsiniz.", + "emails.invitation.thanks": "Təşəkkürlər", + "emails.invitation.signature": "{{project}} komandası", + "locale.country.unknown": "Naməlum", + "countries.af": "Əfqanıstan", + "countries.ao": "Anqola", + "countries.al": "Albaniya", + "countries.ad": "Andorra", + "countries.ae": "Birləşmiş Ərəb Əmirlikləri", + "countries.ar": "Argentina", + "countries.am": "Ermənistan", + "countries.ag": "Antigua və Barbuda", + "countries.au": "Avstraliya", + "countries.at": "Avstriya", + "countries.az": "Azərbaycan", + "countries.bi": "Burundi", + "countries.be": "Belçika", + "countries.bj": "Benin", + "countries.bf": "Burkina Faso", + "countries.bd": "Banqladeş", + "countries.bg": "Bolqarıstan", + "countries.bh": "Bəhreyn", + "countries.bs": "Bahamalar", + "countries.ba": "Bosniya və Herseqovina", + "countries.by": "Belarusiya", + "countries.bz": "Beliz", + "countries.bo": "Boliviya", + "countries.br": "Braziliya", + "countries.bb": "Barbados", + "countries.bn": "Bruney", + "countries.bt": "Butan", + "countries.bw": "Botsvana", + "countries.cf": "Mərkəzi Afrika Respublikası", + "countries.ca": "Kanada", + "countries.ch": "İsveçrə", + "countries.cl": "çili", + "countries.cn": "Çin", + "countries.ci": "Fil Dişi Sahili", + "countries.cm": "Kamerun", + "countries.cd": "DR Konqo", + "countries.cg": "Konqo Respublikası", + "countries.co": "Kolumbiya", + "countries.km": "Komorlar", + "countries.cv": "Kabo Verde", + "countries.cr": "Kosta Rika", + "countries.cu": "Kuba", + "countries.cy": "Kipr", + "countries.cz": "Çexiya", + "countries.de": "Almaniya", + "countries.dj": "Cibuti", + "countries.dm": "Dominika", + "countries.dk": "Danimarka", + "countries.do": "Dominik respublikası", + "countries.dz": "Əlcəzair", + "countries.ec": "Ekvador", + "countries.eg": "Misir", + "countries.er": "Eritreya", + "countries.es": "İspaniya", + "countries.ee": "Estoniya", + "countries.et": "Efiopiya", + "countries.fi": "Finlandiya", + "countries.fj": "Fici", + "countries.fr": "Fransa", + "countries.fm": "Mikroneziya", + "countries.ga": "Qabon", + "countries.gb": "Birləşmiş Krallıq", + "countries.ge": "Gürcüstan", + "countries.gh": "Qana", + "countries.gn": "Qvineya", + "countries.gm": "Qambiya", + "countries.gw": "Qvineya-Bisau", + "countries.gq": "Ekvatorial Qvineya", + "countries.gr": "Yunanıstan", + "countries.gd": "Qrenada", + "countries.gt": "Qvatemala", + "countries.gy": "Guyana", + "countries.hn": "Honduras", + "countries.hr": "Xorvatiya", + "countries.ht": "Haiti", + "countries.hu": "Macarıstan", + "countries.id": "İndoneziya", + "countries.in": "Hindistan", + "countries.ie": "İrlandiya", + "countries.ir": "İran", + "countries.iq": "İraq", + "countries.is": "İslandiya", + "countries.il": "İsrail", + "countries.it": "İtaliya", + "countries.jm": "Yamayka", + "countries.jo": "İordaniya", + "countries.jp": "Yaponiya", + "countries.kz": "Qazaxıstan", + "countries.ke": "Keniya", + "countries.kg": "Qırğızıstan", + "countries.kh": "Kamboca", + "countries.ki": "Kiribati", + "countries.kn": "Saint Kitts və Nevis", + "countries.kr": "Cənubi Koreya", + "countries.kw": "Küveyt", + "countries.la": "Laos", + "countries.lb": "Livan", + "countries.lr": "Liberiya", + "countries.ly": "Liviya", + "countries.lc": "Müqəddəs Lusiya", + "countries.li": "Lixtenşteyn", + "countries.lk": "Şri Lanka", + "countries.ls": "Lesoto", + "countries.lt": "Litva", + "countries.lu": "Lüksemburq", + "countries.lv": "Latviya", + "countries.ma": "Mərakeş", + "countries.mc": "Monako", + "countries.md": "Moldova", + "countries.mg": "Madaqaskar", + "countries.mv": "Maldiv adaları", + "countries.mx": "Meksika", + "countries.mh": "Marshall Adaları", + "countries.mk": "Makedoniya", + "countries.ml": "Mali", + "countries.mt": "Malta", + "countries.mm": "Myanma", + "countries.me": "Monteneqro", + "countries.mn": "Monqolustan", + "countries.mz": "Mozambik", + "countries.mr": "Mavritaniya", + "countries.mu": "Mavritaniya", + "countries.mw": "Malavi", + "countries.my": "Malayziya", + "countries.na": "Namibiya", + "countries.ne": "Niger", + "countries.ng": "Nigeriya", + "countries.ni": "Nikaraqua", + "countries.nl": "Hollandiya", + "countries.no": "Norveç", + "countries.np": "Nepal", + "countries.nr": "Nauru", + "countries.nz": "Yeni Zelandiya", + "countries.om": "Oman", + "countries.pk": "Pakistan", + "countries.pa": "Panama", + "countries.pe": "Peru", + "countries.ph": "Filippin", + "countries.pw": "Palau", + "countries.pg": "Papua Yeni Qvineya", + "countries.pl": "Polşa", + "countries.kp": "Simali Koreya", + "countries.pt": "Portuqaliya", + "countries.py": "Paraqvay", + "countries.qa": "Qətər", + "countries.ro": "Rumıniya", + "countries.ru": "Rusiya", + "countries.rw": "Ruanda", + "countries.sa": "Səudiyyə Ərəbistanı", + "countries.sd": "Sudan", + "countries.sn": "Seneqal", + "countries.sg": "Sinqapur", + "countries.sb": "Solomon Adaları", + "countries.sl": "Sierra Leone", + "countries.sv": "Xilaskar", + "countries.sm": "San Marino", + "countries.so": "Somali", + "countries.rs": "Serbiya", + "countries.ss": "Cənubi Sudan", + "countries.st": "Sao Tome və Principe", + "countries.sr": "Surinam", + "countries.sk": "Slovakiya", + "countries.si": "Sloveniya", + "countries.se": "İsveç", + "countries.sz": "Svazilend", + "countries.sc": "Seyşel adaları", + "countries.sy": "Suriya", + "countries.td": "Çad", + "countries.tg": "Getmək", + "countries.th": "Tayland", + "countries.tj": "Tacikistan", + "countries.tm": "Türkmənistan", + "countries.tl": "Şərqi Timor", + "countries.to": "Tonqa", + "countries.tt": "Trinidad və Tobaqo", + "countries.tn": "Tunis", + "countries.tr": "Türkiyə", + "countries.tv": "Tuvalu", + "countries.tz": "Tanzaniya", + "countries.ug": "Uqanda", + "countries.ua": "Ukrayna", + "countries.uy": "Uruqvay", + "countries.us": "Amerika Birləşmiş Ştatları", + "countries.uz": "Özbəkistan", + "countries.va": "Vatikan şəhəri", + "countries.vc": "Müqəddəs Vinsent və Qrenadinlər", + "countries.ve": "Venesuela", + "countries.vn": "Vyetnam", + "countries.vu": "Vanuatu", + "countries.ws": "Samoa", + "countries.ye": "Yəmən", + "countries.za": "Cənubi Afrika", + "countries.zm": "Zambiya", + "countries.zw": "Zimbabve" +} diff --git a/app/config/locale/translations/be.json b/app/config/locale/translations/be.json index 326a1312ba..c46c40f2c3 100644 --- a/app/config/locale/translations/be.json +++ b/app/config/locale/translations/be.json @@ -3,24 +3,30 @@ "settings.locale": "be", "settings.direction": "ltr", "emails.sender": "Каманда %s", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Верыфікацыя акаўнта", + "emails.verification.hello": "Прывітанне {{name}}", + "emails.verification.body": "Перайдзіце па гэтай спасылцы, каб пацвердзіць свой адрас электроннай пошты", + "emails.verification.footer": "Калі вы не запытвалі пацвярджэнне гэтага адрасу, праігнаруйце гэтае паведамленне.", + "emails.verification.thanks": "Дзякуем", + "emails.verification.signature": "каманда {{project}}", + "emails.magicSession.subject": "Лагін", + "emails.magicSession.hello": "Прывітанне,", + "emails.magicSession.body": "Перайдзіце па спасылцы, каб увайсці.", + "emails.magicSession.footer": "Калі вы не прасілі ўвайсці, выкарыстоўваючы гэты адрас электроннай пошты, праігнаруйце гэтае паведамленне.", + "emails.magicSession.thanks": "Дзякуем", + "emails.magicSession.signature": "каманда {{project}}", + "emails.recovery.subject": "Скід пароля", + "emails.recovery.hello": "Прывітанне, {{name}}", + "emails.recovery.body": "Перайдзіце па гэтай спасылцы, каб скінуць пароль для праекта {{project}}.", + "emails.recovery.footer": "Калі вы не прасілі скінуць пароль, вы можаце праігнараваць гэта паведамленне.", + "emails.recovery.thanks": "Дзякуем", + "emails.recovery.signature": "каманда {{project}}", + "emails.invitation.subject": "Запрошення до Команди %s у %s", + "emails.invitation.hello": "Прывітанне", + "emails.invitation.body": "Гэта паведамленне было адпраўлена вам, таму што {{owner}} хацеў запрасіць вас стаць членам каманды {{team}} у {{project}}.", + "emails.invitation.footer": "Калі вам гэта не цікава, вы можаце праігнараваць гэтае паведамленне.", + "emails.invitation.thanks": "Дзякуем", + "emails.invitation.signature": "каманда {{project}}", "locale.country.unknown": "Невядомы", "countries.af": "Афганістан", "countries.ao": "Ангола", @@ -223,4 +229,4 @@ "continents.na": "Паўночная Амерыка", "continents.oc": "Акіянія", "continents.sa": "Паўднёвая Амерыка" -} \ No newline at end of file +} diff --git a/app/config/locale/translations/bg.json b/app/config/locale/translations/bg.json index 2ffecc43eb..e7f5b50dda 100644 --- a/app/config/locale/translations/bg.json +++ b/app/config/locale/translations/bg.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/bh.json b/app/config/locale/translations/bh.json new file mode 100644 index 0000000000..d151297932 --- /dev/null +++ b/app/config/locale/translations/bh.json @@ -0,0 +1,232 @@ +{ + "settings.inspire": "\"बुद्धिमान होइत क कला ई जाने क कला अछि जे की अनदेखा कर्मा चाहि| \"", + "settings.locale": "bh", + "settings.direction": "ltr", + "emails.sender": "%s टीम", + "emails.verification.subject": "खाता प्रमाणिकरण", + "emails.verification.hello": "नमस्ते {{name}}", + "emails.verification.body": "ईमेल प्रमाणिकरण करे क लेल दिहल गइल लिंक फॉलो करें|", + "emails.verification.footer": "अगर ई पता को सत्यापित करे के लिए ना कहाले, तो आप ई संदेश क अनदेखा कर सकत अछि।", + "emails.verification.thanks": "धन्यवाद", + "emails.verification.signature": "{{project}} टीम", + "emails.magicSession.subject": "लॉग इन करीं|", + "emails.magicSession.hello": "प्रणाम", + "emails.magicSession.body": "लॉग इन करें लेल दिहल गइल लिंक फॉलो करें|", + "emails.magicSession.footer": "अगर लॉग इन करे के लिए ना कहाले, तो आप ई संदेश क अनदेखा कर सकत अछि।", + "emails.magicSession.thanks": "धन्यवाद", + "emails.magicSession.signature": "{{project}} टीम", + "emails.recovery.subject": "पासवर्ड बदल क लेल|", + "emails.recovery.hello": "प्रणाम {{name}}", + "emails.recovery.body": "पासवर्ड बदल क लेल दिहल गइल लिंक फॉलो करें|", + "emails.recovery.footer": "अगर पासवर्ड बदल क लेल ना कहाले, तो आप ई संदेश क अनदेखा कर सकत अछि।", + "emails.recovery.thanks": "धन्यवाद", + "emails.recovery.signature": "{{project}} टीम", + "emails.invitation.subject": "%s टीम क %s पे न्योता देवे क लेल|", + "emails.invitation.hello": "प्रणाम", + "emails.invitation.body": "ई मेल आपके एही लेल भेजल गईल रहल काहे क {{owner}} आपके {{project}} क {{team}} टीम का सदस्य बनावे चाहित रहे|", + "emails.invitation.footer": "अगर आवे क इच्छा ना होवत, तो आप ई संदेश क अनदेखा कर सकत अछि।", + "emails.invitation.thanks": "धन्यवाद", + "emails.invitation.signature": "{{project}} टीम", + "locale.country.unknown": "अनजान", + "countries.af": "अफ़ग़ानिस्तान", + "countries.ao": "अंगोला", + "countries.al": "अल्बानिया", + "countries.ad": "अंडोरा", + "countries.ae": "संयुक्त अरब अमीरात", + "countries.ar": "अर्जेंटीना", + "countries.am": "आर्मीनिया", + "countries.ag": "अंटीगुआ और बारबूडा", + "countries.au": "ऑस्ट्रेलिया", + "countries.at": "ऑस्ट्रिया", + "countries.az": "अज़रबैजान", + "countries.bi": "बुरुंडी", + "countries.be": "बेल्जियम", + "countries.bj": "बेनिन", + "countries.bf": "बुर्किना फासो", + "countries.bd": "बांग्लादेश", + "countries.bg": "बुल्गारिया", + "countries.bh": "बहरीन", + "countries.bs": "बहामास", + "countries.ba": "बॉस्निया और हर्ज़ेगोविना", + "countries.by": "बेलारूस", + "countries.bz": "बेलीज़", + "countries.bo": "बोलीविया", + "countries.br": "ब्राज़ील", + "countries.bb": "बारबाडोस", + "countries.bn": "ब्रुनेई", + "countries.bt": "भूटान", + "countries.bw": "बोत्सवाना", + "countries.cf": "मध्य अफ्रीकी गणराज्य", + "countries.ca": "कनाडा", + "countries.ch": "स्विट्ज़रलैंड", + "countries.cl": "चिली", + "countries.cn": "चीन", + "countries.ci": "आइवरी कोस्ट", + "countries.cm": "कैमरून", + "countries.cd": "कांगो लोकतान्त्रिक गणराज्य", + "countries.cg": "कांगो गणराज्य", + "countries.co": "कोलंबिया", + "countries.km": "कोमोरोस", + "countries.cv": "केप वर्दे", + "countries.cr": "कोस्टा रीका", + "countries.cu": "क्यूबा", + "countries.cy": "साइप्रस", + "countries.cz": "चेक गणराज्य", + "countries.de": "जर्मनी", + "countries.dj": "जिबूती", + "countries.dm": "डोमिनिका", + "countries.dk": "डेनमार्क", + "countries.do": "डोमिनिकन रिपब्लिक", + "countries.dz": "अल्जीरिया", + "countries.ec": "ईक्वाडोर", + "countries.eg": "मिस्र", + "countries.er": "इरित्रिया", + "countries.es": "स्पेन", + "countries.ee": "एस्टोनिया", + "countries.et": "इथियोपिया", + "countries.fi": "फ़िनलैंड", + "countries.fj": "फ़िजी", + "countries.fr": "फ्रांस", + "countries.fm": "माइक्रोनेशिया", + "countries.ga": "गबोन", + "countries.gb": "यूनाइटेड किंगडम", + "countries.ge": "जॉर्जिया", + "countries.gh": "घाना", + "countries.gn": "गिनी", + "countries.gm": "ज़ाम्बिया", + "countries.gw": "गिनी-बिसाऊ", + "countries.gq": "इक्वेटोरियल गिनी", + "countries.gr": "यूनान", + "countries.gd": "ग्रेनाडा", + "countries.gt": "ग्वाटेमाला", + "countries.gy": "गयाना", + "countries.hn": "होंडुरस", + "countries.hr": "क्रोएशिया", + "countries.ht": "हैती", + "countries.hu": "हंगरी", + "countries.id": "इंडोनेशिया", + "countries.in": "भारत", + "countries.ie": "आयरलैंड", + "countries.ir": "ईरान", + "countries.iq": "इराक", + "countries.is": "आइसलैंड", + "countries.il": "इज़राइल", + "countries.it": "इटली", + "countries.jm": "जमैका", + "countries.jo": "जॉर्डन", + "countries.jp": "जापान", + "countries.kz": "कज़ाख़िस्तान", + "countries.ke": "कीनियाा", + "countries.kg": "किर्गिज़स्तान", + "countries.kh": "कंबोडिया", + "countries.ki": "किरिबाती", + "countries.kn": "सेंट किट्स एंड नेविस", + "countries.kr": "दक्षिण कोरिया", + "countries.kw": "कुवैत", + "countries.la": "लाओस", + "countries.lb": "लेबनान", + "countries.lr": "लाइबेरिया", + "countries.ly": "लीबिया", + "countries.lc": "सेंट लूसिया", + "countries.li": "लिकटेंस्टीन", + "countries.lk": "श्रीलंका", + "countries.ls": "लेसोथो", + "countries.lt": "लिथुआनिया", + "countries.lu": "लक्ज़मबर्ग", + "countries.lv": "लातविया", + "countries.ma": "मोरक्को", + "countries.mc": "मोनैको", + "countries.md": "मॉल्डोवा", + "countries.mg": "मेडागास्कर", + "countries.mv": "मालदीव", + "countries.mx": "मेक्सिको", + "countries.mh": "मार्शल द्वीपसमूह", + "countries.mk": "मैसिडोनिया", + "countries.ml": "माली", + "countries.mt": "माल्टा", + "countries.mm": "म्यांमार", + "countries.me": "मोंटेनेग्रो", + "countries.mn": "मंगोलिया", + "countries.mz": "मोज़ाम्बिक", + "countries.mr": "मॉरिटानिया", + "countries.mu": "मॉरिशस", + "countries.mw": "मलावी", + "countries.my": "मलेशिया", + "countries.na": "नामीबिया", + "countries.ne": "नाइजर", + "countries.ng": "नाईजीरिया", + "countries.ni": "निकारागुआ", + "countries.nl": "नीदरलैंड", + "countries.no": "नॉर्वे", + "countries.np": "नेपाल", + "countries.nr": "नाउरु", + "countries.nz": "न्यूजीलैंड", + "countries.om": "ओमान", + "countries.pk": "पाकिस्तान", + "countries.pa": "पनामा", + "countries.pe": "पेरू", + "countries.ph": "फिलीपींस", + "countries.pw": "पलाऊ", + "countries.pg": "पापुआ न्यू गिनी", + "countries.pl": "पोलैंड", + "countries.kp": "उत्तर कोरिया", + "countries.pt": "पुर्तगाल", + "countries.py": "पैराग्वे", + "countries.qa": "क़तर", + "countries.ro": "रोमानिया", + "countries.ru": "रूस", + "countries.rw": "रवांडा", + "countries.sa": "सऊदी अरब", + "countries.sd": "सूडान", + "countries.sn": "सेनेगल", + "countries.sg": "सिंगापुर", + "countries.sb": "सोलोमन द्वीप", + "countries.sl": "सिएरा लियोन", + "countries.sv": "अल साल्वाडोर", + "countries.sm": "सैन मैरिनो", + "countries.so": "सोमालिया", + "countries.rs": "सर्बिया", + "countries.ss": "दक्षिण सूडान", + "countries.st": "साओ तोमे और प्रिंसिपी", + "countries.sr": "सूरीनाम", + "countries.sk": "स्लोवाकिया", + "countries.si": "स्लोवेनिया", + "countries.se": "स्वीडन", + "countries.sz": "स्वाज़ीलैंड", + "countries.sc": "सेशेल्स", + "countries.sy": "सीरिया", + "countries.td": "चाड", + "countries.tg": "टोगो", + "countries.th": "थाईलैंड", + "countries.tj": "ताजिकिस्तान", + "countries.tm": "तुर्कमेनिस्तान", + "countries.tl": "तिमोर-लेस्ते", + "countries.to": "टोंगा", + "countries.tt": "त्रिनिदाद और टोबैगो", + "countries.tn": "ट्यूनीशिया", + "countries.tr": "तुर्की", + "countries.tv": "तुवालू", + "countries.tz": "तंजानिया", + "countries.ug": "युगांडा", + "countries.ua": "यूक्रेन", + "countries.uy": "उरुग्वे", + "countries.us": "संयुक्त राज्य अमेरिका", + "countries.uz": "उज़्बेकिस्तान", + "countries.va": "वैटिकन सिटी", + "countries.vc": "सेंट विंसेंट एंड ग्रेनेडाइंस", + "countries.ve": "वेनेज़ुएला", + "countries.vn": "वियतनाम", + "countries.vu": "वानूआतू", + "countries.ws": "समोआ", + "countries.ye": "यमन", + "countries.za": "दक्षिण अफ्रीका", + "countries.zm": "ज़ाम्बिया", + "countries.zw": "ज़िम्बाब्वे", + "continents.af": "अफ़्रीका", + "continents.an": "अंटार्कटिका", + "continents.as": "एशिया", + "continents.eu": "यूरोप", + "continents.na": "उत्तरी अमेरिका", + "continents.oc": "ओशिनिया", + "continents.sa": "दक्षिण अमेरिका" +} \ No newline at end of file diff --git a/app/config/locale/translations/bn.json b/app/config/locale/translations/bn.json index a1163c3611..4030104f35 100644 --- a/app/config/locale/translations/bn.json +++ b/app/config/locale/translations/bn.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/bs.json b/app/config/locale/translations/bs.json index d80c0614d9..133594a710 100644 --- a/app/config/locale/translations/bs.json +++ b/app/config/locale/translations/bs.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/ca.json b/app/config/locale/translations/ca.json index 7f57bffd3a..32649b7e66 100644 --- a/app/config/locale/translations/ca.json +++ b/app/config/locale/translations/ca.json @@ -3,24 +3,30 @@ "settings.locale": "ca", "settings.direction": "ltr", "emails.sender": "%s Equip", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Verificació del compte", + "emails.verification.hello": "Hola {{name}}", + "emails.verification.body": "Accedeix a aquest enllaç per tal de verificar la teva adreça electrònica.", + "emails.verification.footer": "Si no has sol·licitat la verificació d'aquesta adreça electrònica, pots ignorar aquest missatge.", + "emails.verification.thanks": "Gràcies", + "emails.verification.signature": "Equip {{project}}", + "emails.magicSession.subject": "Entrar", + "emails.magicSession.hello": "Hola,", + "emails.magicSession.body": "Accedeix a aquest enllaç per a entrar.", + "emails.magicSession.footer": "Si no has sol·licitat entrar amb aquesta adreça electrònica, pots ignorar aquest missatge.", + "emails.magicSession.thanks": "Gràcies", + "emails.magicSession.signature": "Equip {{project}}", + "emails.recovery.subject": "Reinicialitzar contrasenya", + "emails.recovery.hello": "Hola {{name}}", + "emails.recovery.body": "Accedeix a aquest enllaç per a reinicialitzar la teva contrasenya de {{project}}.", + "emails.recovery.footer": "Si no has sol·licitat reinicialitzar la teva contrasenya, pots ignorar aquest missatge.", + "emails.recovery.thanks": "Gràcies", + "emails.recovery.signature": "Equip {{project}}", + "emails.invitation.subject": "Invitació a l'equip %s a s%", + "emails.invitation.hello": "Hola", + "emails.invitation.body": "Aquest correu se t'ha enviat perquè {{owner}} vol convidar-te a formar part de l'equip {{team}} al {{project}}.", + "emails.invitation.footer": "Si no és del teu interès, pots ignorar aquest missatge.", + "emails.invitation.thanks": "Gràcies", + "emails.invitation.signature": "Equip {{project}}", "locale.country.unknown": "Desconegut", "countries.af": "Afganistan", "countries.ao": "Angola", @@ -29,7 +35,7 @@ "countries.ae": "Unió dels Emirats Àrabs Units", "countries.ar": "Argentina", "countries.am": "Armènia", - "countries.ag": "Antigua o Barbuda", + "countries.ag": "Antigua i Barbuda", "countries.au": "Austràlia", "countries.at": "Àustria", "countries.az": "Azerbaidjan", @@ -38,7 +44,7 @@ "countries.bj": "Benín", "countries.bf": "Burkina Faso", "countries.bd": "Bangla Desh", - "countries.bg": "Bulgaria", + "countries.bg": "Bulgària", "countries.bh": "Bahrain", "countries.bs": "Bahamas", "countries.ba": "Bòsnia i Hercegovina", @@ -107,7 +113,7 @@ "countries.il": "Israel", "countries.it": "Itàlia", "countries.jm": "Jamaica", - "countries.jo": "Jordà", + "countries.jo": "Jordània", "countries.jp": "Japó", "countries.kz": "Kazakhstan", "countries.ke": "Kenya", @@ -121,7 +127,7 @@ "countries.lb": "Líban", "countries.lr": "Libèria", "countries.ly": "Líbia", - "countries.lc": "Santa Llúcia", + "countries.lc": "Saint Lucia", "countries.li": "Liechtenstein", "countries.lk": "Sri Lanka", "countries.ls": "Lesoto", diff --git a/app/config/locale/translations/cs.json b/app/config/locale/translations/cs.json index 2458e386b2..7d4a638b7f 100644 --- a/app/config/locale/translations/cs.json +++ b/app/config/locale/translations/cs.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/da.json b/app/config/locale/translations/da.json new file mode 100644 index 0000000000..68401be419 --- /dev/null +++ b/app/config/locale/translations/da.json @@ -0,0 +1,232 @@ +{ + "settings.inspire": "\"Kunsten at være klog er kunsten at vide, hvad man skal overse.\"", + "settings.locale": "da", + "settings.direction": "ltr", + "emails.sender": "%s Team", + "emails.verification.subject": "Konto Verifikation", + "emails.verification.hello": "Hej {{name}}", + "emails.verification.body": "Følg dette link, for at verificere din email adresse.", + "emails.verification.footer": "Hvis du ikke har bedt om at verificere denne adresse, ignorer venligst denne besked.", + "emails.verification.thanks": "Tak", + "emails.verification.signature": "{{project}} team", + "emails.magicSession.subject": "Login", + "emails.magicSession.hello": "Hej,", + "emails.magicSession.body": "Følg dette link for at logge ind.", + "emails.magicSession.footer": "Hvis du ikke har bedt om at logge ind med denne email, ignorer venligst denne besked.", + "emails.magicSession.thanks": "Tak", + "emails.magicSession.signature": "{{project}} team", + "emails.recovery.subject": "Nulstil Password", + "emails.recovery.hello": "Hej {{name}}", + "emails.recovery.body": "Følg dette link for at nulstille koden til {{project}}.", + "emails.recovery.footer": "Hvis du ikke har bedt om at nulstille dit password, ignorer venligst denne besked.", + "emails.recovery.thanks": "Tak", + "emails.recovery.signature": "{{project}} team", + "emails.invitation.subject": "Invitation til %s Team på %s", + "emails.invitation.hello": "Hej", + "emails.invitation.body": "Denne mail blev sendt til dig, fordi {{owner}} vil invitere dig til at blive medlem af {{team}} teamet på {{project}}.", + "emails.invitation.footer": "Hvis du ikke er interesseret, ignorer venligst denne besked.", + "emails.invitation.thanks": "Tak", + "emails.invitation.signature": "{{project}} team", + "locale.country.unknown": "Ukendt", + "countries.af": "Afghanistan", + "countries.ao": "Angola", + "countries.al": "Albanien", + "countries.ad": "Andorra", + "countries.ae": "Forenede Arabiske Emirater", + "countries.ar": "Argentina", + "countries.am": "Armenien", + "countries.ag": "Antigua and Barbuda", + "countries.au": "Australien", + "countries.at": "Østrig", + "countries.az": "Aserbajdsjan", + "countries.bi": "Burundi", + "countries.be": "Belgien", + "countries.bj": "Benin", + "countries.bf": "Burkina Faso", + "countries.bd": "Bangladesh", + "countries.bg": "Bulgarien", + "countries.bh": "Bahrain", + "countries.bs": "Bahamas", + "countries.ba": "Bosnien-Hercegovina", + "countries.by": "Hviderusland", + "countries.bz": "Belize", + "countries.bo": "Bolivia", + "countries.br": "Brasilien", + "countries.bb": "Barbados", + "countries.bn": "Brunei", + "countries.bt": "Bhutan", + "countries.bw": "Botswana", + "countries.cf": "Den Centralafrikanske Republik", + "countries.ca": "Canada", + "countries.ch": "Schweiz", + "countries.cl": "Chile", + "countries.cn": "Kina", + "countries.ci": "Elfenbenskysten", + "countries.cm": "Cameroun", + "countries.cd": "DR Congo", + "countries.cg": "Republikken Congo", + "countries.co": "Colombia", + "countries.km": "Comorerne", + "countries.cv": "Kap Verde", + "countries.cr": "Costa Rica", + "countries.cu": "Cuba", + "countries.cy": "Cypern", + "countries.cz": "Tjekkiet", + "countries.de": "Tyskland", + "countries.dj": "Djibouti", + "countries.dm": "Dominica", + "countries.dk": "Danmark", + "countries.do": "Dominikanske Republik", + "countries.dz": "Algeriet", + "countries.ec": "Ecuador", + "countries.eg": "Egypten", + "countries.er": "Eritrea", + "countries.es": "Spainen", + "countries.ee": "Estland", + "countries.et": "Etiopien", + "countries.fi": "Finland", + "countries.fj": "Fiji", + "countries.fr": "Frankrig", + "countries.fm": "Mikronesien", + "countries.ga": "Gabon", + "countries.gb": "Storbritannien", + "countries.ge": "Georgien", + "countries.gh": "Ghana", + "countries.gn": "Guinea", + "countries.gm": "Gambia", + "countries.gw": "Guinea-Bissau", + "countries.gq": "Ækvatorialguinea", + "countries.gr": "Grækenland", + "countries.gd": "Grenada", + "countries.gt": "Guatemala", + "countries.gy": "Guyana", + "countries.hn": "Honduras", + "countries.hr": "Kroatien", + "countries.ht": "Haiti", + "countries.hu": "Ungarn", + "countries.id": "Indonesien", + "countries.in": "Indien", + "countries.ie": "Irland", + "countries.ir": "Iran", + "countries.iq": "Irak", + "countries.is": "Island", + "countries.il": "Israel", + "countries.it": "Italen", + "countries.jm": "Jamaica", + "countries.jo": "Jordan", + "countries.jp": "Japan", + "countries.kz": "Kasakhstan", + "countries.ke": "Kenya", + "countries.kg": "Kirgisistan", + "countries.kh": "Cambodja", + "countries.ki": "Kiribati", + "countries.kn": "Saint Kitts og Nevis", + "countries.kr": "Sydkorea", + "countries.kw": "Kuwait", + "countries.la": "Laos", + "countries.lb": "Libanon", + "countries.lr": "Liberia", + "countries.ly": "Libyen", + "countries.lc": "Saint Lucia", + "countries.li": "Liechtenstein", + "countries.lk": "Sri Lanka", + "countries.ls": "Lesotho", + "countries.lt": "Litauen", + "countries.lu": "Luxembourg", + "countries.lv": "Letland", + "countries.ma": "Marokko", + "countries.mc": "Monaco", + "countries.md": "Moldova", + "countries.mg": "Madagaskar", + "countries.mv": "Maldiverne", + "countries.mx": "Mexico", + "countries.mh": "Marshalløerne", + "countries.mk": "Makedonien", + "countries.ml": "Mali", + "countries.mt": "Malta", + "countries.mm": "Myanmar", + "countries.me": "Montenegro", + "countries.mn": "Mongoliet", + "countries.mz": "Mozambique", + "countries.mr": "Mauritanien", + "countries.mu": "Mauritius", + "countries.mw": "Malawi", + "countries.my": "Malaysia", + "countries.na": "Namibia", + "countries.ne": "Niger", + "countries.ng": "Nigeria", + "countries.ni": "Nicaragua", + "countries.nl": "Holland", + "countries.no": "Norge", + "countries.np": "Nepal", + "countries.nr": "Nauru", + "countries.nz": "New Zealand", + "countries.om": "Oman", + "countries.pk": "Pakistan", + "countries.pa": "Panama", + "countries.pe": "Peru", + "countries.ph": "Filippinerne", + "countries.pw": "Palau", + "countries.pg": "Papua Ny Guinea", + "countries.pl": "Polen", + "countries.kp": "Nordkorea", + "countries.pt": "Portugal", + "countries.py": "Paraguay", + "countries.qa": "Qatar", + "countries.ro": "Rumænien", + "countries.ru": "Rusland", + "countries.rw": "Rwanda", + "countries.sa": "Saudi Arabien", + "countries.sd": "Sudan", + "countries.sn": "Senegal", + "countries.sg": "Singapore", + "countries.sb": "Salomonøerne", + "countries.sl": "Sierra Leone", + "countries.sv": "El Salvador", + "countries.sm": "San Marino", + "countries.so": "Somalia", + "countries.rs": "Serbien", + "countries.ss": "Sydsudan", + "countries.st": "Sao Tome og Principe", + "countries.sr": "Surinam", + "countries.sk": "Slovakiet", + "countries.si": "Slovenien", + "countries.se": "Sverige", + "countries.sz": "Swaziland", + "countries.sc": "Seychellerne", + "countries.sy": "Syrien", + "countries.td": "Tchad", + "countries.tg": "Togo", + "countries.th": "Thailand", + "countries.tj": "Tadsjikistan", + "countries.tm": "Turkmenistan", + "countries.tl": "Timor-Leste", + "countries.to": "Tonga", + "countries.tt": "Trinidad og Tobago", + "countries.tn": "Tunisien", + "countries.tr": "Tyrkiet", + "countries.tv": "Tuvalu", + "countries.tz": "Tanzania", + "countries.ug": "Uganda", + "countries.ua": "Ukraine", + "countries.uy": "Uruguay", + "countries.us": "Amerikas Forenede Stater", + "countries.uz": "Usbekistan", + "countries.va": "Vatikanet", + "countries.vc": "Saint Vincent og Grenadinerne", + "countries.ve": "Venezuela", + "countries.vn": "Vietnam", + "countries.vu": "Vanuatu", + "countries.ws": "Samoa", + "countries.ye": "Yemen", + "countries.za": "Sydafrika", + "countries.zm": "Zambia", + "countries.zw": "Zimbabwe", + "continents.af": "Afrika", + "continents.an": "Antarktis", + "continents.as": "Asien", + "continents.eu": "Europa", + "continents.na": "Nordamerica", + "continents.oc": "Oceanien", + "continents.sa": "Sydamerica" +} diff --git a/app/config/locale/translations/de.json b/app/config/locale/translations/de.json index 233149e5c4..b3de6a2fb1 100644 --- a/app/config/locale/translations/de.json +++ b/app/config/locale/translations/de.json @@ -3,24 +3,30 @@ "settings.locale": "de", "settings.direction": "ltr", "emails.sender": "%s Team", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Kontoverifizierung", + "emails.verification.hello": "Hey {{name}}", + "emails.verification.body": "Folge diesem Link, um deine E-Mail-Adresse zu bestätigen.", + "emails.verification.footer": "Solltest du keine Verifizierung dieser E-Mail-Adresse angefordert haben, kannst du diese Nachricht ignorieren.", + "emails.verification.thanks": "Danke", + "emails.verification.signature": "{{project}}-Team", + "emails.magicSession.subject": "Login", + "emails.magicSession.hello": "Hey,", + "emails.magicSession.body": "Folge diesem Link, um dich einzuloggen.", + "emails.magicSession.footer": "Solltest du keinen Login für diese E-Mail-Adresse angefordert haben, kannst du diese Nachricht ignorieren.", + "emails.magicSession.thanks": "Danke", + "emails.magicSession.signature": "{{project}}-Team", + "emails.recovery.subject": "Kennwort zurücksetzen", + "emails.recovery.hello": "Hallo {{name}}", + "emails.recovery.body": "Folge diesem Link, um dein {{project}}-Kennwort zurückzusetzen.", + "emails.recovery.footer": "Solltest du keine Kennwort-Zurücksetzung angefordert haben, kannst du diese Nachricht ignorieren.", + "emails.recovery.thanks": "Danke", + "emails.recovery.signature": "{{project}}-Team", + "emails.invitation.subject": "Einladung zum %s-Team auf %s", + "emails.invitation.hello": "Hello", + "emails.invitation.body": "Du erhälst diese E-Mail, weil {{owner}} dich in das Team {{team}} auf {{project}} eingeladen hat.", + "emails.invitation.footer": "Wenn du nicht interessiert bist, kannst du diese Nachricht ignorieren.", + "emails.invitation.thanks": "Danke", + "emails.invitation.signature": "{{project}}-Team", "locale.country.unknown": "Unbekannt", "countries.af": "Afghanistan", "countries.ao": "Angola", @@ -135,7 +141,7 @@ "countries.mv": "Malediven", "countries.mx": "Mexiko", "countries.mh": "Marshallinseln", - "countries.mk": "Mazedonien", + "countries.mk": "Nordmazedonien", "countries.ml": "Mali", "countries.mt": "Malta", "countries.mm": "Myanmar", @@ -163,7 +169,7 @@ "countries.pw": "Palau", "countries.pg": "Papua Neu-Guinea", "countries.pl": "Polen", - "countries.kp": "Nord Korea", + "countries.kp": "Nordkorea", "countries.pt": "Portugal", "countries.py": "Paraguay", "countries.qa": "Katar", @@ -223,4 +229,4 @@ "continents.na": "Nordamerika", "continents.oc": "Ozeanien", "continents.sa": "Südamerika" -} \ No newline at end of file +} diff --git a/app/config/locale/translations/el.json b/app/config/locale/translations/el.json index d59e6db3de..83af3cad0b 100644 --- a/app/config/locale/translations/el.json +++ b/app/config/locale/translations/el.json @@ -1,26 +1,32 @@ { - "settings.inspire": "\"The art of being wise is the art of knowing what to overlook.\"", + "settings.inspire": "\"Η τέχνη του να είσαι σοφός, είναι η τέχνη να ξέρεις τι πρέπει να παραβλέψεις.\"", "settings.locale": "gr", "settings.direction": "ltr", "emails.sender": "Ομάδα %s", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Επαλήθευση Λογαριασμού", + "emails.verification.hello": "Γεια σου {{name}}", + "emails.verification.body": "Ακολουθήστε αυτό το link για να επαληθεύσετε τη δ/νση του email σας", + "emails.verification.footer": "Εάν δεν ζητήσατε επαλήθευση αυτής της δ/νσης email, μπορείτε να αγνοήσετε αυτό το μήνυμα", + "emails.verification.thanks": "Ευχαριστούμε", + "emails.verification.signature": "Η ομάδα του {{project}}", + "emails.magicSession.subject": "Είσοδος", + "emails.magicSession.hello": "Γεια σου,", + "emails.magicSession.body": "Ακολουθήστε αυτό το link για να συνδεθείτε", + "emails.magicSession.footer": "Εάν δεν ζητήσατε να συνδεθείτε χρησιμοποιώντας αυτό το email, μπορείτε να αγνοήσετε αυτό το μήνυμα.", + "emails.magicSession.thanks": "Ευχαριστούμε", + "emails.magicSession.signature": "Η ομάδα του {{project}}", + "emails.recovery.subject": "Αλλαγή κωδικού πρόσβασης", + "emails.recovery.hello": "Γεια σου {{name}}", + "emails.recovery.body": "Ακολουθήστε αυτό το link για να αλλάξετε τον {{project}} κωδικό σας", + "emails.recovery.footer": "Εάν δεν ζητήσατε αλλαγή του κωδικού σας πρόσβασης, μπορείτε να αγνοήσετε αυτό το μήνυμα", + "emails.recovery.thanks": "Ευχαριστούμε", + "emails.recovery.signature": "Η ομάδα του {{project}}", + "emails.invitation.subject": "Πρόσκληση στην %s Ομάδα στον %s", + "emails.invitation.hello": "Γεια σου", + "emails.invitation.body": "Αυτό το email στάλθηκε επειδή ο/η {{owner}} θέλει να σας προσκαλέσει να γίνετε μέλος της ομάδας {{team}} του {{project}}.", + "emails.invitation.footer": "Εάν δεν ενδιαφέρεστε, μπορείτε να αγνοήσετε αυτό το μήνυμα.", + "emails.invitation.thanks": "Ευχαριστούμε", + "emails.invitation.signature": "Η ομάδα του {{project}}", "locale.country.unknown": "Άγνωστο", "countries.af": "Αφγανιστάν", "countries.ao": "Ανγκόλα", @@ -223,4 +229,4 @@ "continents.na": "Βόρεια Αμερική", "continents.oc": "Ωκεανία", "continents.sa": "Νότια Αμερική" -} \ No newline at end of file +} diff --git a/app/config/locale/translations/eo.json b/app/config/locale/translations/eo.json new file mode 100644 index 0000000000..e10dfd5d6e --- /dev/null +++ b/app/config/locale/translations/eo.json @@ -0,0 +1,231 @@ +{ + "settings.locale": "eo", + "settings.direction": "ltr", + "emails.sender": "Teamo %s", + "emails.verification.subject": "Konta Konfirmo", + "emails.verification.hello": "Saluton {{name}}", + "emails.verification.body": "Alklaku ĉi tiun ligon por kontroli vian retpoŝtan adreson.", + "emails.verification.footer": "Se vi ne petis ĉi tiun konfirmon de ĉi tiu retpoŝto, vi povas ignori ĉi tiun mesaĝon.", + "emails.verification.thanks": "Dankegon.", + "emails.verification.signature": "Teamo {{project}}", + "emails.magicSession.subject": "Login", + "emails.magicSession.hello": "Saluton,", + "emails.magicSession.body": "Alklaku ĉi tiun ligon por eniri.", + "emails.magicSession.footer": "Se vi ne petis ĉi tiun konfirmon de ĉi tiu retpoŝto, vi povas ignori ĉi tiun mesaĝon.", + "emails.magicSession.thanks": "Dankegon", + "emails.magicSession.signature": "Teamo {{project}}", + "emails.recovery.subject": "Parsvorta Restarigo", + "emails.recovery.hello": "Saluton {{name}}", + "emails.recovery.body": "Alklaku ĉi tiun ligon por reagordi vian pasvorton. {{project}}", + "emails.recovery.footer": "Se vi ne petis reagordi vian pasvorton, vi povas ignori ĉi tiun mesaĝon.", + "emails.recovery.thanks": "Dankegon", + "emails.recovery.signature": "Teamo {{project}}", + "emails.invitation.subject": "Invito al la Teamo %s em %s", + "emails.invitation.hello": "Dankegon", + "emails.invitation.body": "Ĉi tiu retpoŝto estis sendita ĉar la {{owner}} volas inviti vin fariĝi membro de la Teamo {{team}} en {{project}}.", + "emails.invitation.footer": "Se vi ne interesiĝas, vi povas ignori ĉi tiun mesaĝon.", + "emails.invitation.thanks": "Dankegon", + "emails.invitation.signature": "Teamo {{project}}", + "locale.country.unknown": "Unknown", + "countries.af": "Afghanistan", + "countries.ao": "Angola", + "countries.al": "Albania", + "countries.ad": "Andorra", + "countries.ae": "United Arab Emirates", + "countries.ar": "Argentina", + "countries.am": "Armenia", + "countries.ag": "Antigua and Barbuda", + "countries.au": "Australia", + "countries.at": "Austria", + "countries.az": "Azerbaijan", + "countries.bi": "Burundi", + "countries.be": "Belgium", + "countries.bj": "Benin", + "countries.bf": "Burkina Faso", + "countries.bd": "Bangladesh", + "countries.bg": "Bulgaria", + "countries.bh": "Bahrain", + "countries.bs": "Bahamas", + "countries.ba": "Bosnia and Herzegovina", + "countries.by": "Belarus", + "countries.bz": "Belize", + "countries.bo": "Bolivia", + "countries.br": "Brazil", + "countries.bb": "Barbados", + "countries.bn": "Brunei", + "countries.bt": "Bhutan", + "countries.bw": "Botswana", + "countries.cf": "Central African Republic", + "countries.ca": "Canada", + "countries.ch": "Switzerland", + "countries.cl": "Chile", + "countries.cn": "China", + "countries.ci": "Ivory Coast", + "countries.cm": "Cameroon", + "countries.cd": "DR Congo", + "countries.cg": "Republic of the Congo", + "countries.co": "Colombia", + "countries.km": "Comoros", + "countries.cv": "Cape Verde", + "countries.cr": "Costa Rica", + "countries.cu": "Cuba", + "countries.cy": "Cyprus", + "countries.cz": "Czechia", + "countries.de": "Germany", + "countries.dj": "Djibouti", + "countries.dm": "Dominica", + "countries.dk": "Denmark", + "countries.do": "Dominican Republic", + "countries.dz": "Algeria", + "countries.ec": "Ecuador", + "countries.eg": "Egypt", + "countries.er": "Eritrea", + "countries.es": "Spain", + "countries.ee": "Estonia", + "countries.et": "Ethiopia", + "countries.fi": "Finland", + "countries.fj": "Fiji", + "countries.fr": "France", + "countries.fm": "Micronesia", + "countries.ga": "Gabon", + "countries.gb": "United Kingdom", + "countries.ge": "Georgia", + "countries.gh": "Ghana", + "countries.gn": "Guinea", + "countries.gm": "Gambia", + "countries.gw": "Guinea-Bissau", + "countries.gq": "Equatorial Guinea", + "countries.gr": "Greece", + "countries.gd": "Grenada", + "countries.gt": "Guatemala", + "countries.gy": "Guyana", + "countries.hn": "Honduras", + "countries.hr": "Croatia", + "countries.ht": "Haiti", + "countries.hu": "Hungary", + "countries.id": "Indonesia", + "countries.in": "India", + "countries.ie": "Ireland", + "countries.ir": "Iran", + "countries.iq": "Iraq", + "countries.is": "Iceland", + "countries.il": "Israel", + "countries.it": "Italy", + "countries.jm": "Jamaica", + "countries.jo": "Jordan", + "countries.jp": "Japan", + "countries.kz": "Kazakhstan", + "countries.ke": "Kenya", + "countries.kg": "Kyrgyzstan", + "countries.kh": "Cambodia", + "countries.ki": "Kiribati", + "countries.kn": "Saint Kitts and Nevis", + "countries.kr": "South Korea", + "countries.kw": "Kuwait", + "countries.la": "Laos", + "countries.lb": "Lebanon", + "countries.lr": "Liberia", + "countries.ly": "Libya", + "countries.lc": "Saint Lucia", + "countries.li": "Liechtenstein", + "countries.lk": "Sri Lanka", + "countries.ls": "Lesotho", + "countries.lt": "Lithuania", + "countries.lu": "Luxembourg", + "countries.lv": "Latvia", + "countries.ma": "Morocco", + "countries.mc": "Monaco", + "countries.md": "Moldova", + "countries.mg": "Madagascar", + "countries.mv": "Maldives", + "countries.mx": "Mexico", + "countries.mh": "Marshall Islands", + "countries.mk": "Macedonia", + "countries.ml": "Mali", + "countries.mt": "Malta", + "countries.mm": "Myanmar", + "countries.me": "Montenegro", + "countries.mn": "Mongolia", + "countries.mz": "Mozambique", + "countries.mr": "Mauritania", + "countries.mu": "Mauritius", + "countries.mw": "Malawi", + "countries.my": "Malaysia", + "countries.na": "Namibia", + "countries.ne": "Niger", + "countries.ng": "Nigeria", + "countries.ni": "Nicaragua", + "countries.nl": "Netherlands", + "countries.no": "Norway", + "countries.np": "Nepal", + "countries.nr": "Nauru", + "countries.nz": "New Zealand", + "countries.om": "Oman", + "countries.pk": "Pakistan", + "countries.pa": "Panama", + "countries.pe": "Peru", + "countries.ph": "Philippines", + "countries.pw": "Palau", + "countries.pg": "Papua New Guinea", + "countries.pl": "Poland", + "countries.kp": "North Korea", + "countries.pt": "Portugal", + "countries.py": "Paraguay", + "countries.qa": "Qatar", + "countries.ro": "Romania", + "countries.ru": "Russia", + "countries.rw": "Rwanda", + "countries.sa": "Saudi Arabia", + "countries.sd": "Sudan", + "countries.sn": "Senegal", + "countries.sg": "Singapore", + "countries.sb": "Solomon Islands", + "countries.sl": "Sierra Leone", + "countries.sv": "El Salvador", + "countries.sm": "San Marino", + "countries.so": "Somalia", + "countries.rs": "Serbia", + "countries.ss": "South Sudan", + "countries.st": "São Tomé and Príncipe", + "countries.sr": "Suriname", + "countries.sk": "Slovakia", + "countries.si": "Slovenia", + "countries.se": "Sweden", + "countries.sz": "Swaziland", + "countries.sc": "Seychelles", + "countries.sy": "Syria", + "countries.td": "Chad", + "countries.tg": "Togo", + "countries.th": "Thailand", + "countries.tj": "Tajikistan", + "countries.tm": "Turkmenistan", + "countries.tl": "Timor-Leste", + "countries.to": "Tonga", + "countries.tt": "Trinidad and Tobago", + "countries.tn": "Tunisia", + "countries.tr": "Turkey", + "countries.tv": "Tuvalu", + "countries.tz": "Tanzania", + "countries.ug": "Uganda", + "countries.ua": "Ukraine", + "countries.uy": "Uruguay", + "countries.us": "United States", + "countries.uz": "Uzbekistan", + "countries.va": "Vatican City", + "countries.vc": "Saint Vincent and the Grenadines", + "countries.ve": "Venezuela", + "countries.vn": "Vietnam", + "countries.vu": "Vanuatu", + "countries.ws": "Samoa", + "countries.ye": "Yemen", + "countries.za": "South Africa", + "countries.zm": "Zambia", + "countries.zw": "Zimbabwe", + "continents.af": "Africa", + "continents.an": "Antarctica", + "continents.as": "Asia", + "continents.eu": "Europe", + "continents.na": "North America", + "continents.oc": "Oceania", + "continents.sa": "South America" +} diff --git a/app/config/locale/translations/es.json b/app/config/locale/translations/es.json index 5ad91fb82a..6310d8fe76 100644 --- a/app/config/locale/translations/es.json +++ b/app/config/locale/translations/es.json @@ -3,24 +3,30 @@ "settings.locale": "es", "settings.direction": "ltr", "emails.sender": "Equipo %s", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Verificación de cuenta", + "emails.verification.hello": "Hola {{name}}", + "emails.verification.body": "Haz clic en este enlace para verificar tu correo.", + "emails.verification.footer": "Si no has solicitado verificar este correo, puedes ignorar este mensaje.", + "emails.verification.thanks": "Gracias", + "emails.verification.signature": "Equipo de {{project}}", + "emails.magicSession.subject": "Inicio de sesión", + "emails.magicSession.hello": "Hola,", + "emails.magicSession.body": "Haz clic en este enlace para iniciar sesión.", + "emails.magicSession.footer": "Si no has solicitado ingresar usando este correo, puedes ignorar este mensaje.", + "emails.magicSession.thanks": "Gracias", + "emails.magicSession.signature": "Equipo de {{project}}", + "emails.recovery.subject": "Restablecer contraseña", + "emails.recovery.hello": "Hola {{name}}", + "emails.recovery.body": "Haz clic en este enlace para restablecer la contraseña de tu proyecto {{project}}.", + "emails.recovery.footer": "Si no has solicitado restablecer la contraseña, puedes ignorar este mensaje.", + "emails.recovery.thanks": "Gracias", + "emails.recovery.signature": "Equipo de {{project}}", + "emails.invitation.subject": "Invitación al equipo %s en %s", + "emails.invitation.hello": "Hola", + "emails.invitation.body": "Este correo ha sido enviado a petición de {{owner}} quien quiere invitarte a formar parte del equipo {{team}} en el proyecto {{project}}.", + "emails.invitation.footer": "Si no estas interesado, puedes ignorar este mensaje.", + "emails.invitation.thanks": "Gracias", + "emails.invitation.signature": "Equipo de {{project}}", "locale.country.unknown": "Desconocido", "countries.af": "Afganistán", "countries.ao": "Angola", @@ -133,7 +139,7 @@ "countries.md": "Moldavia", "countries.mg": "Madagascar", "countries.mv": "Maldivas", - "countries.mx": "Mexico", + "countries.mx": "México", "countries.mh": "Islas Marshall", "countries.mk": "Macedonia", "countries.ml": "Malí", diff --git a/app/config/locale/translations/fa.json b/app/config/locale/translations/fa.json index 722a87d0e9..2ea78963af 100644 --- a/app/config/locale/translations/fa.json +++ b/app/config/locale/translations/fa.json @@ -3,26 +3,32 @@ "settings.locale": "fa", "settings.direction": "rtl", "emails.sender": "تیم %s", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "تأیید حساب", + "emails.verification.hello": "سلام {{name}}", + "emails.verification.body": "برای تأیید حساب‌تان پیوند زیر را دنبال کنید.", + "emails.verification.footer": "اگر شما درخواست تأیید حساب نداده‌اید، می‌توانید این ایمیل را نادیده بگیرید.", + "emails.verification.thanks": "سپاس فراوان", + "emails.verification.signature": "تیم {{name}}", + "emails.magicSession.subject": "ورود به حساب کاربری", + "emails.magicSession.hello": "سلام،", + "emails.magicSession.body": "برای ورود به حساب‌تان پیوند زیر را دنبال کنید.", + "emails.magicSession.footer": "اگر شما درخواست ورود به حساب کاربری نداد‌ه‌اید، می‌توانید این ایمیل را نادیده بگیرید.", + "emails.magicSession.thanks": "سپاس فراوان", + "emails.magicSession.signature": "تیم {{name}}", + "emails.recovery.subject": "بازیابی گذرواژه", + "emails.recovery.hello": "سلام {{name}}", + "emails.recovery.body": "برای بازیابی گذرواژه‌تان پیوند زیر را دنبال کنید.", + "emails.recovery.footer": "اگر شما درخواست بازیابی گذرواژه نداده‌اید، می‌توانید این ایمیل را نادیده بگیرید.", + "emails.recovery.thanks": "سپاس فراوان", + "emails.recovery.signature": "تیم {{name}}", + "emails.invitation.subject": "دعوت به تیم %s در %s", + "emails.invitation.hello": "سلام", + "emails.invitation.body": "این ایمیل برای شما فرستاده شده‌است زیرا {{owner}} می‌خواهد شما را به تیم {{team}} در پروژه‌ی {{project}} بیفزاید.", + "emails.invitation.footer": "اگر علاقه ندارید، می‌توانید این پیام را نادیده بگیرید.", + "emails.invitation.thanks": "سپاس فراوان", + "emails.invitation.signature": "تیم {{name}}", "locale.country.unknown": "ناشناخته", - "countries.af": "افقانستان", + "countries.af": "افغانستان", "countries.ao": "آنگولا", "countries.al": "آلبانی", "countries.ad": "آندورا", @@ -102,20 +108,20 @@ "countries.in": "هند", "countries.ie": "ایرلند", "countries.ir": "ایران", - "countries.iq": "عراث", + "countries.iq": "عراق", "countries.is": "ایسلند", "countries.il": "اسرائیل", "countries.it": "ایتالیا", "countries.jm": "جاماییکا", "countries.jo": "اردن", - "countries.jp": "جاپن", + "countries.jp": "ژاپن", "countries.kz": "قزاقستان", "countries.ke": "کنیا", "countries.kg": "قرقیزستان", "countries.kh": "کامبوج", "countries.ki": "کیریباتی", "countries.kn": "سنت کیتس و نویس", - "countries.kr": "کرخ جنوبی", + "countries.kr": "کره جنوبی", "countries.kw": "کویت", "countries.la": "لائوس", "countries.lb": "لبنان", @@ -223,4 +229,4 @@ "continents.na": "آمریکای شمالی", "continents.oc": "اقیانوسیه", "continents.sa": "آمریکای جنوبی" -} \ No newline at end of file +} diff --git a/app/config/locale/translations/fi.json b/app/config/locale/translations/fi.json index 1472d28714..15d4508f5d 100644 --- a/app/config/locale/translations/fi.json +++ b/app/config/locale/translations/fi.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/fo.json b/app/config/locale/translations/fo.json index 64ebc9b337..b81562426f 100644 --- a/app/config/locale/translations/fo.json +++ b/app/config/locale/translations/fo.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/fr.json b/app/config/locale/translations/fr.json index 7339c03abc..704cf619e4 100644 --- a/app/config/locale/translations/fr.json +++ b/app/config/locale/translations/fr.json @@ -3,24 +3,30 @@ "settings.locale": "fr", "settings.direction": "ltr", "emails.sender": "Équipe %s", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Vérification du compte", + "emails.verification.hello": "Bonjour {{name}}", + "emails.verification.body": "Suivez ce lien pour vérifier votre adresse mail.", + "emails.verification.footer": "Si vous n'avez pas demandé à vérifier cette adresse mail, vous pouvez ignorer ce message.", + "emails.verification.thanks": "Merci", + "emails.verification.signature": "Équipe {{project}}", + "emails.magicSession.subject": "Connexion", + "emails.magicSession.hello": "Bonjour,", + "emails.magicSession.body": "Suivez ce lien pour vous connecter.", + "emails.magicSession.footer": "Si vous n'avez pas demandé à vous connecter en utilisant cet e-mail, vous pouvez ignorer ce message.", + "emails.magicSession.thanks": "Merci", + "emails.magicSession.signature": "Réinitialisation du mot de passe", + "emails.recovery.subject": "Bonjour {{name}}", + "emails.recovery.hello": "Bonjour {{name}}", + "emails.recovery.body": "Suivez ce lien pour réinitialiser votre mot de passe de {{projet}}.", + "emails.recovery.footer": "Si vous n'avez pas demandé à réinitialiser votre mot de passe, vous pouvez ignorer ce message.", + "emails.recovery.thanks": "Merci", + "emails.recovery.signature": "Équipe {{project}}", + "emails.invitation.subject": "Invitation à l'équipe %s de %s", + "emails.invitation.hello": "Bonjour", + "emails.invitation.body": "Ce mail vous a été envoyé parce que {{owner}} voulait vous inviter à devenir membre de l'équipe {{team}} de {{project}}.", + "emails.invitation.footer": "Si vous n'êtes pas intéressé, vous pouvez ignorer ce message.", + "emails.invitation.thanks": "Merci", + "emails.invitation.signature": "Équipe {{project}}", "locale.country.unknown": "Inconnu", "countries.af": "Afghanistan", "countries.ao": "Angola", diff --git a/app/config/locale/translations/ga.json b/app/config/locale/translations/ga.json new file mode 100644 index 0000000000..9ff3f16bfa --- /dev/null +++ b/app/config/locale/translations/ga.json @@ -0,0 +1,232 @@ +{ + "settings.inspire": "\"Is í ealaín na críonnachta ná rudaí a aithint chun cluas bhodhar a thabhairt dóibh.\"", + "settings.locale": "ga", + "settings.direction": "ltr", + "emails.sender": "%s Foireann", + "emails.verification.subject": "Fíoraithe cuntais", + "emails.verification.hello": "Haigh {{name}}", + "emails.verification.body": "Lean an nasc seo chun do ríomhphost a fhíorú.", + "emails.verification.footer": "Mura ndearna tú iarratas an seoladh seo a fhíoru, déan neamhaird den teachtaireacht seo.", + "emails.verification.thanks": "Go raibh maith agat", + "emails.verification.signature": "{{project}} foireann", + "emails.magicSession.subject": "Logáil isteach", + "emails.magicSession.hello": "Haigh,", + "emails.magicSession.body": "Lean an nasc seo chun logáil isteach.", + "emails.magicSession.footer": "Mura ndearna tú iarratas logáil isteach leis an ríomhphost seo, déan neamhaird den teachtaireacht seo.", + "emails.magicSession.thanks": "Go raibh maith agat", + "emails.magicSession.signature": "{{project}} foireann", + "emails.recovery.subject": "Athshocrú pasfhocail", + "emails.recovery.hello": "Haigh {{name}}", + "emails.recovery.body": "Lean an nasc seo chun do pasfhocal {{project}} a athshocrú.", + "emails.recovery.footer": "Mura ndearna tú iarratas do pasfhocal a athshocrú, déan neamhaird den teachtaireacht seo.", + "emails.recovery.thanks": "Go raibh maith agat", + "emails.recovery.signature": "{{project}} foireann", + "emails.invitation.subject": "Cuireadh do %s foireann ag %s", + "emails.invitation.hello": "Haigh", + "emails.invitation.body": "Seoladh an ríomhphost seo chugat mar ba mhaith le {{owner}} cuireadh a thabhairt duit bheith mar bhall den fhoireann {{team}} ag obair ar {{project}}.", + "emails.invitation.footer": "Is cuma leat? Déan neamhaird den teachtaireacht seo.", + "emails.invitation.thanks": "Go raibh maith agat", + "emails.invitation.signature": "{{project}} foireann", + "locale.country.unknown": "Neamhaithnid", + "countries.af": "Afghanistan", + "countries.ao": "Angola", + "countries.al": "Albania", + "countries.ad": "Andorra", + "countries.ae": "United Arab Emirates", + "countries.ar": "Argentina", + "countries.am": "Armenia", + "countries.ag": "Antigua and Barbuda", + "countries.au": "Australia", + "countries.at": "Austria", + "countries.az": "Azerbaijan", + "countries.bi": "Burundi", + "countries.be": "Belgium", + "countries.bj": "Benin", + "countries.bf": "Burkina Faso", + "countries.bd": "Bangladesh", + "countries.bg": "Bulgaria", + "countries.bh": "Bahrain", + "countries.bs": "Bahamas", + "countries.ba": "Bosnia and Herzegovina", + "countries.by": "Belarus", + "countries.bz": "Belize", + "countries.bo": "Bolivia", + "countries.br": "Brazil", + "countries.bb": "Barbados", + "countries.bn": "Brunei", + "countries.bt": "Bhutan", + "countries.bw": "Botswana", + "countries.cf": "Central African Republic", + "countries.ca": "Canada", + "countries.ch": "Switzerland", + "countries.cl": "Chile", + "countries.cn": "China", + "countries.ci": "Ivory Coast", + "countries.cm": "Cameroon", + "countries.cd": "DR Congo", + "countries.cg": "Republic of the Congo", + "countries.co": "Colombia", + "countries.km": "Comoros", + "countries.cv": "Cape Verde", + "countries.cr": "Costa Rica", + "countries.cu": "Cuba", + "countries.cy": "Cyprus", + "countries.cz": "Czechia", + "countries.de": "Germany", + "countries.dj": "Djibouti", + "countries.dm": "Dominica", + "countries.dk": "Denmark", + "countries.do": "Dominican Republic", + "countries.dz": "Algeria", + "countries.ec": "Ecuador", + "countries.eg": "Egypt", + "countries.er": "Eritrea", + "countries.es": "Spain", + "countries.ee": "Estonia", + "countries.et": "Ethiopia", + "countries.fi": "Finland", + "countries.fj": "Fiji", + "countries.fr": "France", + "countries.fm": "Micronesia", + "countries.ga": "Gabon", + "countries.gb": "United Kingdom", + "countries.ge": "Georgia", + "countries.gh": "Ghana", + "countries.gn": "Guinea", + "countries.gm": "Gambia", + "countries.gw": "Guinea-Bissau", + "countries.gq": "Equatorial Guinea", + "countries.gr": "Greece", + "countries.gd": "Grenada", + "countries.gt": "Guatemala", + "countries.gy": "Guyana", + "countries.hn": "Honduras", + "countries.hr": "Croatia", + "countries.ht": "Haiti", + "countries.hu": "Hungary", + "countries.id": "Indonesia", + "countries.in": "India", + "countries.ie": "Ireland", + "countries.ir": "Iran", + "countries.iq": "Iraq", + "countries.is": "Iceland", + "countries.il": "Israel", + "countries.it": "Italy", + "countries.jm": "Jamaica", + "countries.jo": "Jordan", + "countries.jp": "Japan", + "countries.kz": "Kazakhstan", + "countries.ke": "Kenya", + "countries.kg": "Kyrgyzstan", + "countries.kh": "Cambodia", + "countries.ki": "Kiribati", + "countries.kn": "Saint Kitts and Nevis", + "countries.kr": "South Korea", + "countries.kw": "Kuwait", + "countries.la": "Laos", + "countries.lb": "Lebanon", + "countries.lr": "Liberia", + "countries.ly": "Libya", + "countries.lc": "Saint Lucia", + "countries.li": "Liechtenstein", + "countries.lk": "Sri Lanka", + "countries.ls": "Lesotho", + "countries.lt": "Lithuania", + "countries.lu": "Luxembourg", + "countries.lv": "Latvia", + "countries.ma": "Morocco", + "countries.mc": "Monaco", + "countries.md": "Moldova", + "countries.mg": "Madagascar", + "countries.mv": "Maldives", + "countries.mx": "Mexico", + "countries.mh": "Marshall Islands", + "countries.mk": "Macedonia", + "countries.ml": "Mali", + "countries.mt": "Malta", + "countries.mm": "Myanmar", + "countries.me": "Montenegro", + "countries.mn": "Mongolia", + "countries.mz": "Mozambique", + "countries.mr": "Mauritania", + "countries.mu": "Mauritius", + "countries.mw": "Malawi", + "countries.my": "Malaysia", + "countries.na": "Namibia", + "countries.ne": "Niger", + "countries.ng": "Nigeria", + "countries.ni": "Nicaragua", + "countries.nl": "Netherlands", + "countries.no": "Norway", + "countries.np": "Nepal", + "countries.nr": "Nauru", + "countries.nz": "New Zealand", + "countries.om": "Oman", + "countries.pk": "Pakistan", + "countries.pa": "Panama", + "countries.pe": "Peru", + "countries.ph": "Philippines", + "countries.pw": "Palau", + "countries.pg": "Papua New Guinea", + "countries.pl": "Poland", + "countries.kp": "North Korea", + "countries.pt": "Portugal", + "countries.py": "Paraguay", + "countries.qa": "Qatar", + "countries.ro": "Romania", + "countries.ru": "Russia", + "countries.rw": "Rwanda", + "countries.sa": "Saudi Arabia", + "countries.sd": "Sudan", + "countries.sn": "Senegal", + "countries.sg": "Singapore", + "countries.sb": "Solomon Islands", + "countries.sl": "Sierra Leone", + "countries.sv": "El Salvador", + "countries.sm": "San Marino", + "countries.so": "Somalia", + "countries.rs": "Serbia", + "countries.ss": "South Sudan", + "countries.st": "São Tomé and Príncipe", + "countries.sr": "Suriname", + "countries.sk": "Slovakia", + "countries.si": "Slovenia", + "countries.se": "Sweden", + "countries.sz": "Swaziland", + "countries.sc": "Seychelles", + "countries.sy": "Syria", + "countries.td": "Chad", + "countries.tg": "Togo", + "countries.th": "Thailand", + "countries.tj": "Tajikistan", + "countries.tm": "Turkmenistan", + "countries.tl": "Timor-Leste", + "countries.to": "Tonga", + "countries.tt": "Trinidad and Tobago", + "countries.tn": "Tunisia", + "countries.tr": "Turkey", + "countries.tv": "Tuvalu", + "countries.tz": "Tanzania", + "countries.ug": "Uganda", + "countries.ua": "Ukraine", + "countries.uy": "Uruguay", + "countries.us": "United States", + "countries.uz": "Uzbekistan", + "countries.va": "Vatican City", + "countries.vc": "Saint Vincent and the Grenadines", + "countries.ve": "Venezuela", + "countries.vn": "Vietnam", + "countries.vu": "Vanuatu", + "countries.ws": "Samoa", + "countries.ye": "Yemen", + "countries.za": "South Africa", + "countries.zm": "Zambia", + "countries.zw": "Zimbabwe", + "continents.af": "Africa", + "continents.an": "Antarctica", + "continents.as": "Asia", + "continents.eu": "Europe", + "continents.na": "North America", + "continents.oc": "Oceania", + "continents.sa": "South America" +} diff --git a/app/config/locale/translations/gu.json b/app/config/locale/translations/gu.json index 6ea530f7ee..9357160cc5 100644 --- a/app/config/locale/translations/gu.json +++ b/app/config/locale/translations/gu.json @@ -3,25 +3,31 @@ "settings.locale": "gu", "settings.direction": "ltr", "emails.sender": "%s ટીમ", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", - "locale.country.unknown": "अज्ञात", + "emails.verification.subject": "ખાતાની ચકાસણી", + "emails.verification.hello": "નમસ્કાર {{name}}", + "emails.verification.body": "તમારું ઇમેઇલ સરનામું ચકાસવા માટે આ લિંકને અનુસરો.", + "emails.verification.footer": "જો તમે આ સરનામાંની ચકાસણી કરવાનું ન કહ્યું હોય, તો તમે આ સંદેશને અવગણી શકો છો.", + "emails.verification.thanks": "આભાર", + "emails.verification.signature": "{{project}} ટીમ", + "emails.magicSession.subject": "પ્રવેશ કરો", + "emails.magicSession.hello": "નમસ્કાર,", + "emails.magicSession.body": "પ્રવેશ કરવા માટે આ લિંકને અનુસરો.", + "emails.magicSession.footer": "જો તમે આ ઇમેઇલનો ઉપયોગ કરીને પ્રવેશ કરવાનું ન કહ્યું હોય, તો તમે આ સંદેશને અવગણી શકો છો.", + "emails.magicSession.thanks": "આભાર", + "emails.magicSession.signature": "{{project}} ટીમ", + "emails.recovery.subject": "પાસવર્ડ ફરીથી સેટ કરો", + "emails.recovery.hello": "નમસ્કાર {{name}}", + "emails.recovery.body": "તમારો {{project}} પાસવર્ડ ફરીથી સેટ કરવા માટે આ લિંકને અનુસરો.", + "emails.recovery.footer": "જો તમે તમારો પાસવર્ડ ફરીથી સેટ કરવાનું ન કહ્યું હોય, તો તમે આ સંદેશને અવગણી શકો છો.", + "emails.recovery.thanks": "આભાર", + "emails.recovery.signature": "{{project}} ટીમ", + "emails.invitation.subject": "%s ટીમને %s પર આમંત્રણ", + "emails.invitation.hello": "નમસ્કાર", + "emails.invitation.body": "આ મેઇલ તમને મોકલવામાં આવ્યો હતો કારણ કે {{owner}} તમને {{project}} માં {{team}} ટીમના સભ્ય બનવા માટે આમંત્રિત કરવા માંગતા હતો.", + "emails.invitation.footer": "જો તમને રસ નથી, તો તમે આ સંદેશને અવગણી શકો છો.", + "emails.invitation.thanks": "આભાર", + "emails.invitation.signature": "{{project}} ટીમ", + "locale.country.unknown": "અજાણ", "countries.af": "અફઘાનિસ્તાન", "countries.ao": "અંગોલા", "countries.al": "અલ્બેનિયા", diff --git a/app/config/locale/translations/he.json b/app/config/locale/translations/he.json index e11df0e734..ef4af6f56e 100644 --- a/app/config/locale/translations/he.json +++ b/app/config/locale/translations/he.json @@ -1,26 +1,32 @@ { - "settings.inspire": "\"The art of being wise is the art of knowing what to overlook.\"", + "settings.inspire": "\"להיות חכם זה לדעת ממה להתעלם.\"", "settings.locale": "he", "settings.direction": "rtl", "emails.sender": "צוות %s", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "אימות חשבון", + "emails.verification.hello": "שלום {{name}}", + "emails.verification.body": "לחץ על קישור זה כדי לאמת את כתובת הדוא\"ל שלך.", + "emails.verification.footer": "אם לא ביקשת לאמת כתובת זו, תוכל להתעלם מהודעה זו.", + "emails.verification.thanks": "תודה", + "emails.verification.signature": "צוות {{project}}", + "emails.magicSession.subject": "כניסה למערכת", + "emails.magicSession.hello": "שלום,", + "emails.magicSession.body": "לחץ על קישור זה כדי להיכנס.", + "emails.magicSession.footer": "אם לא ביקשת להיכנס באמצעות דוא\"ל זה, תוכל להתעלם מהודעה זו.", + "emails.magicSession.thanks": "תודה", + "emails.magicSession.signature": "צוות {{project}}", + "emails.recovery.subject": "איפוס סיסמא", + "emails.recovery.hello": "שלום {{name}}", + "emails.recovery.body": "עקוב אחר קישור זה כדי לאפס את סיסמתך ב-{{project}}.", + "emails.recovery.footer": "אם לא ביקשת לאפס את הסיסמה, תוכל להתעלם מהודעה זו.", + "emails.recovery.thanks": "תודה", + "emails.recovery.signature": "צוות {{project}}", + "emails.invitation.subject": "הזמנה לצוות %s ב- %s", + "emails.invitation.hello": "שלום", + "emails.invitation.body": "דואר זה נשלח אליך מכיוון ש {{owner}} רצה להזמין אותך להיות חבר בצוות {{team}} ב-{{project}}.", + "emails.invitation.footer": "אם אינך מעוניין, תוכל להתעלם מהודעה זו.", + "emails.invitation.thanks": "תודה", + "emails.invitation.signature": "צוות {{project}}", "locale.country.unknown": "לא ידוע", "countries.af": "אפגניסטן", "countries.ao": "אנגולה", diff --git a/app/config/locale/translations/hi.json b/app/config/locale/translations/hi.json index 2e63bc5b93..a1ef9b7aa5 100644 --- a/app/config/locale/translations/hi.json +++ b/app/config/locale/translations/hi.json @@ -3,24 +3,30 @@ "settings.locale": "hi", "settings.direction": "ltr", "emails.sender": "%s टीम", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "खाता सत्यापन", + "emails.verification.hello": "नमस्ते {{name}}", + "emails.verification.body": "इस लिंक के माध्यम से ईमेल सत्यापित कीजिये।", + "emails.verification.footer": "यदि आपने इस पते को सत्यापित करने के लिए नहीं कहा है, तो आप इस संदेश को नज़रअंदाज़ कर सकते हैं।", + "emails.verification.thanks": "धन्यवाद", + "emails.verification.signature": "{{project}} टीम", + "emails.magicSession.subject": "लॉग इन", + "emails.magicSession.hello": "नमस्ते,", + "emails.magicSession.body": "इस लिंक के माध्यम से लॉग इन करें।", + "emails.magicSession.footer": "यदि आपने इस ईमेल का उपयोग करके लॉगिन करने के लिए नहीं कहा है, तो आप इस संदेश को नज़रअंदाज़ कर सकते हैं।", + "emails.magicSession.thanks": "धन्यवाद", + "emails.magicSession.signature": "{{project}} टीम", + "emails.recovery.subject": "पासवर्ड रीसेट", + "emails.recovery.hello": "नमस्ते {{name}}", + "emails.recovery.body": "इस लिंक के माध्यम से अपना {{project}} पासवर्ड रीसेट करें।", + "emails.recovery.footer": "यदि आपने अपना पासवर्ड रीसेट करने के लिए नहीं कहा है, तो आप इस संदेश को नज़रअंदाज़ कर सकते हैं।", + "emails.recovery.thanks": "धन्यवाद", + "emails.recovery.signature": "{{project}} टीम", + "emails.invitation.subject": "%s टीम को %s पर आमंत्रण", + "emails.invitation.hello": "नमस्ते", + "emails.invitation.body": "यह मेल आपको इसलिए भेजा गया था क्योंकि {{owner}} आपको {{team}} टीम का सदस्य बनने के लिए आमंत्रित करना चाहते थे जो {{project}} से जुड़ा है।", + "emails.invitation.footer": "यदि यह आपके लिए आवश्यक नहीं है, तो आप इस संदेश को नज़रअंदाज़ कर सकते हैं।", + "emails.invitation.thanks": "धन्यवाद", + "emails.invitation.signature": "{{project}} टीम", "locale.country.unknown": "अज्ञात", "countries.af": "अफ़ग़ानिस्तान", "countries.ao": "अंगोला", @@ -223,4 +229,4 @@ "continents.na": "उत्तरी अमेरिका", "continents.oc": "ओशिनिया", "continents.sa": "दक्षिण अमेरिका" -} \ No newline at end of file +} diff --git a/app/config/locale/translations/hr.json b/app/config/locale/translations/hr.json new file mode 100644 index 0000000000..4dcebf0a41 --- /dev/null +++ b/app/config/locale/translations/hr.json @@ -0,0 +1,232 @@ +{ + "settings.inspire": "\"Umjetnost mudrosti je umjetnost znanja o tome što zanemariti.\"", + "settings.locale": "hr", + "settings.direction": "ltr", + "emails.sender": "%s Tim", + "emails.verification.subject": "Verifikacija računa", + "emails.verification.hello": "Pozdrav {{name}}", + "emails.verification.body": "Slijedite ovu poveznicu da biste potvrdili svoju adresu e-pošte.", + "emails.verification.footer": "Ukoliko niste zatražili potvrdu ove adrese, možete zanemariti ovu poruku.", + "emails.verification.thanks": "Hvala", + "emails.verification.signature": "{{project}} tim", + "emails.magicSession.subject": "Prijavite se", + "emails.magicSession.hello": "Pozdrav,", + "emails.magicSession.body": "Slijedite ovu poveznicu za prijavu.", + "emails.magicSession.footer": "Ako niste zatražili prijavu putem ove e-pošte, možete zanemariti ovu poruku.", + "emails.magicSession.thanks": "Hvala", + "emails.magicSession.signature": "{{project}} tim", + "emails.recovery.subject": "Ponovno postavljanje lozinke", + "emails.recovery.hello": "Pozdrav {{name}}", + "emails.recovery.body": "Slijedite ovu poveznicu za ponovno postavljanje {{project}} lozinke.", + "emails.recovery.footer": "Ako niste zatražili ponovno postavljanje Vaše lozinke, možete zanemariti ovu poruku.", + "emails.recovery.thanks": "Hvala", + "emails.recovery.signature": "{{project}} tim", + "emails.invitation.subject": "Pozivnica za %s tim na %s", + "emails.invitation.hello": "Pozdrav", + "emails.invitation.body": "Ova poruka Vam je poslana jer Vas je {{owner}} htio pozvati da postanete član {{team}} tima na {{project}}.", + "emails.invitation.footer": "Ukoliko niste zainteresirani, možete zanemariti ovu poruku.", + "emails.invitation.thanks": "Hvala", + "emails.invitation.signature": "{{project}} tim", + "locale.country.unknown": "Nepoznato", + "countries.af": "Afganistan", + "countries.ao": "Angola", + "countries.al": "Albanija", + "countries.ad": "Andora", + "countries.ae": "Ujedinjeni Arapski Emirati", + "countries.ar": "Argentina", + "countries.am": "Armenija", + "countries.ag": "Antigva i Barbuda", + "countries.au": "Australija", + "countries.at": "Austrija", + "countries.az": "Azerbajdžan", + "countries.bi": "Burundi", + "countries.be": "Belgija", + "countries.bj": "Benin", + "countries.bf": "Burkina Faso", + "countries.bd": "Bangladeš", + "countries.bg": "Bugarska", + "countries.bh": "Bahrein", + "countries.bs": "Bahami", + "countries.ba": "Bosna i Hercegovina", + "countries.by": "Bjelorusija", + "countries.bz": "Belize", + "countries.bo": "Bolivija", + "countries.br": "Brazil", + "countries.bb": "Barbados", + "countries.bn": "Brunej", + "countries.bt": "Butan", + "countries.bw": "Bocvana", + "countries.cf": "Srednjoafrička Republika", + "countries.ca": "Kanada", + "countries.ch": "Švicarska", + "countries.cl": "Čile", + "countries.cn": "Kina", + "countries.ci": "Obala bjelokosti", + "countries.cm": "Kamerun", + "countries.cd": "Demokratska Republika Kongo", + "countries.cg": "Republika Kongo", + "countries.co": "Kolumbija", + "countries.km": "Komori", + "countries.cv": "Zelenortska Republika", + "countries.cr": "Kostarika", + "countries.cu": "Kuba", + "countries.cy": "Cipar", + "countries.cz": "Češka", + "countries.de": "Njemačka", + "countries.dj": "Džibuti", + "countries.dm": "Dominika", + "countries.dk": "Danska", + "countries.do": "Dominikanska Republika", + "countries.dz": "Alžir", + "countries.ec": "Ekvador", + "countries.eg": "Egipt", + "countries.er": "Eritreja", + "countries.es": "Španjolska", + "countries.ee": "Estonija", + "countries.et": "Etiopija", + "countries.fi": "Finska", + "countries.fj": "Fidži", + "countries.fr": "Francuska", + "countries.fm": "Mikronezija", + "countries.ga": "Gabon", + "countries.gb": "Ujedinjeno Kraljevstvo", + "countries.ge": "Gruzija", + "countries.gh": "Gana", + "countries.gn": "Gvineja", + "countries.gm": "Gambija", + "countries.gw": "Gvineja Bisau", + "countries.gq": "Ekvatorijalna Gvineja", + "countries.gr": "Grčka", + "countries.gd": "Grenada", + "countries.gt": "Gvatemala", + "countries.gy": "Gvajana", + "countries.hn": "Honduras", + "countries.hr": "Hrvatska", + "countries.ht": "Haiti", + "countries.hu": "Mađarska", + "countries.id": "Indonezija", + "countries.in": "Indija", + "countries.ie": "Irska", + "countries.ir": "Iran", + "countries.iq": "Irak", + "countries.is": "Island", + "countries.il": "Izrael", + "countries.it": "Italija", + "countries.jm": "Jamajka", + "countries.jo": "Jordan", + "countries.jp": "Japan", + "countries.kz": "Kazahstan", + "countries.ke": "Kenija", + "countries.kg": "Kirgistan", + "countries.kh": "Kambodža", + "countries.ki": "Kiribati", + "countries.kn": "Sveti Kristofor i Nevis", + "countries.kr": "Južna Koreja", + "countries.kw": "Kuvajt", + "countries.la": "Laos", + "countries.lb": "Libanon", + "countries.lr": "Liberija", + "countries.ly": "Libija", + "countries.lc": "Sveta Lucija", + "countries.li": "Lihtenštajn", + "countries.lk": "Šri Lanka", + "countries.ls": "Lesoto", + "countries.lt": "Litva", + "countries.lu": "Luksemburg", + "countries.lv": "Latvija", + "countries.ma": "Maroko", + "countries.mc": "Monako", + "countries.md": "Moldavija", + "countries.mg": "Madagaskar", + "countries.mv": "Maldivi", + "countries.mx": "Meksiko", + "countries.mh": "Maršalovi otoci", + "countries.mk": "Sjeverna Makedonija", + "countries.ml": "Mali", + "countries.mt": "Malta", + "countries.mm": "Mijanmar", + "countries.me": "Crna Gora", + "countries.mn": "Mongolija", + "countries.mz": "Mozambik", + "countries.mr": "Mauritanija", + "countries.mu": "Mauricijus", + "countries.mw": "Malavi", + "countries.my": "Malezija", + "countries.na": "Namibija", + "countries.ne": "Niger", + "countries.ng": "Nigerija", + "countries.ni": "Nikaragva", + "countries.nl": "Nizozemska", + "countries.no": "Norveška", + "countries.np": "Nepal", + "countries.nr": "Nauru", + "countries.nz": "Novi Zeland", + "countries.om": "Oman", + "countries.pk": "Pakistan", + "countries.pa": "Panama", + "countries.pe": "Peru", + "countries.ph": "Filipini", + "countries.pw": "Palau", + "countries.pg": "Papua Nova Guineja", + "countries.pl": "Poljska", + "countries.kp": "Sjeverna Koreja", + "countries.pt": "Portugal", + "countries.py": "Paragvaj", + "countries.qa": "Katar", + "countries.ro": "Rumunjska", + "countries.ru": "Rusija", + "countries.rw": "Ruanda", + "countries.sa": "Saudijska Arabija", + "countries.sd": "Sudan", + "countries.sn": "Senegal", + "countries.sg": "Singapur", + "countries.sb": "Solomonski otoci", + "countries.sl": "Sijera Leone", + "countries.sv": "Salvador", + "countries.sm": "San Marino", + "countries.so": "Somalija", + "countries.rs": "Srbija", + "countries.ss": "Južni Sudan", + "countries.st": "Sveti Toma i Prinsipe", + "countries.sr": "Surinam", + "countries.sk": "Slovačka", + "countries.si": "Slovenija", + "countries.se": "Švedska", + "countries.sz": "Esvatini", + "countries.sc": "Sejšeli", + "countries.sy": "Sirija", + "countries.td": "Čad", + "countries.tg": "Togo", + "countries.th": "Tajland", + "countries.tj": "Tadžikistan", + "countries.tm": "Turkmenistan", + "countries.tl": "Timor Leste", + "countries.to": "Tonga", + "countries.tt": "Trinidad i Tobago", + "countries.tn": "Tunis", + "countries.tr": "Turska", + "countries.tv": "Tuvalu", + "countries.tz": "Tanzanija", + "countries.ug": "Uganda", + "countries.ua": "Ukrajina", + "countries.uy": "Urugvaj", + "countries.us": "Sjedinjene Američke Države", + "countries.uz": "Uzbekistan", + "countries.va": "Vatikan", + "countries.vc": "Sveti Vincent i Grenadini", + "countries.ve": "Venezuela", + "countries.vn": "Vijetnam", + "countries.vu": "Vanuatu", + "countries.ws": "Samoa", + "countries.ye": "Jemen", + "countries.za": "Južnoafrička Republika", + "countries.zm": "Zambija", + "countries.zw": "Zimbabve", + "continents.af": "Afrika", + "continents.an": "Antartika", + "continents.as": "Azija", + "continents.eu": "Europa", + "continents.na": "Sjeverna Amerika", + "continents.oc": "Oceanija", + "continents.sa": "Južna Amerika" +} \ No newline at end of file diff --git a/app/config/locale/translations/hu.json b/app/config/locale/translations/hu.json index 465e4a7dce..7664a42dea 100644 --- a/app/config/locale/translations/hu.json +++ b/app/config/locale/translations/hu.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/hy.json b/app/config/locale/translations/hy.json index 170d5f80a3..b2c1f6929b 100644 --- a/app/config/locale/translations/hy.json +++ b/app/config/locale/translations/hy.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/id.json b/app/config/locale/translations/id.json index dbf8a53e77..06429e9583 100644 --- a/app/config/locale/translations/id.json +++ b/app/config/locale/translations/id.json @@ -3,24 +3,30 @@ "settings.locale": "id", "settings.direction": "ltr", "emails.sender": "Tim %s", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Verifikasi Akun", + "emails.verification.hello": "Hai {{name}}", + "emails.verification.body": "Ikuti tautan ini untuk memverifikasi alamat email Anda.", + "emails.verification.footer": "Jika Anda tidak meminta untuk memverifikasi alamat email ini, Anda dapat mengabaikan pesan ini.", + "emails.verification.thanks": "Terima kasih", + "emails.verification.signature": "Tim {{project}}", + "emails.magicSession.subject": "Masuk", + "emails.magicSession.hello": "Hai,", + "emails.magicSession.body": "Ikuti tautan ini untuk masuk.", + "emails.magicSession.footer": "Jika Anda tidak meminta untuk masuk menggunakan email ini, Anda dapat mengabaikan pesan ini.", + "emails.magicSession.thanks": "Terima kasih", + "emails.magicSession.signature": "Tim {{project}}", + "emails.recovery.subject": "Atur Ulang Kata Sandi", + "emails.recovery.hello": "Halo {{name}}", + "emails.recovery.body": "Ikuti tautan ini untuk menyetel ulang kata sandi {{project}} Anda.", + "emails.recovery.footer": "Jika Anda tidak meminta untuk menyetel ulang kata sandi, Anda dapat mengabaikan pesan ini.", + "emails.recovery.thanks": "Terima kasih", + "emails.recovery.signature": "Tim {{project}}", + "emails.invitation.subject": "Undangan ke Tim %s di %s", + "emails.invitation.hello": "Halo", + "emails.invitation.body": "Email ini dikirimkan kepada Anda karena {{owner}} ingin mengundang Anda untuk menjadi anggota tim {{team}} di {{project}}.", + "emails.invitation.footer": "Jika Anda tidak tertarik, Anda dapat mengabaikan pesan ini.", + "emails.invitation.thanks": "Terima kasih", + "emails.invitation.signature": "Tim {{project}}", "locale.country.unknown": "Tidak diketahui", "countries.af": "Afganistan", "countries.ao": "Angola", diff --git a/app/config/locale/translations/is.json b/app/config/locale/translations/is.json index 4d1330ebcf..99db3b77fa 100644 --- a/app/config/locale/translations/is.json +++ b/app/config/locale/translations/is.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/it.json b/app/config/locale/translations/it.json index 6a51884277..06080901bf 100644 --- a/app/config/locale/translations/it.json +++ b/app/config/locale/translations/it.json @@ -1,26 +1,32 @@ { - "settings.inspire": "\"L'arte di essere saggi è l'arte di sapere cosa trascurare.\"", + "settings.inspire": "\"L'arte di essere saggi è l'arte di saper cosa trascurare.\"", "settings.locale": "it", "settings.direction": "ltr", "emails.sender": "Team %s", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Verifica account", + "emails.verification.hello": "Ciao {{name}}", + "emails.verification.body": "Clicca questo link per verificare il tuo indirizzo email.", + "emails.verification.footer": "Se non hai richiesto la verifica dell’indirizzo email, puoi ignorare questo messaggio.", + "emails.verification.thanks": "Grazie", + "emails.verification.signature": "Il team {{project}}", + "emails.magicSession.subject": "Login", + "emails.magicSession.hello": "Ciao,", + "emails.magicSession.body": "Clicca questo link per accedere.", + "emails.magicSession.footer": "Se non hai richiesto di effettuare l’accesso, puoi ignorare questo messaggio.", + "emails.magicSession.thanks": "Grazie", + "emails.magicSession.signature": "Il team {{project}}", + "emails.recovery.subject": "Reimpostazione password", + "emails.recovery.hello": "Ciao {{name}}", + "emails.recovery.body": "Clicca questo link per reimpostare la tua password di {{project}}.", + "emails.recovery.footer": "Se non hai richiesto la reimpostazione della password, puoi ignorare questo messaggio.", + "emails.recovery.thanks": "Grazie", + "emails.recovery.signature": "Il team {{project}}", + "emails.invitation.subject": "Invito al Team %s per %s", + "emails.invitation.hello": "Ciao", + "emails.invitation.body": "Hai ricevuto questa email perché {{owner}} ti ha invitato a diventare un membro del team {{team}} di {{project}}.", + "emails.invitation.footer": "Ignora questo messaggio se non sei interessatə.", + "emails.invitation.thanks": "Grazie", + "emails.invitation.signature": "Il team {{project}}", "locale.country.unknown": "Sconosciuto", "countries.af": "Afghanistan", "countries.ao": "Angola", diff --git a/app/config/locale/translations/ja.json b/app/config/locale/translations/ja.json index 2e96135f36..415c753f19 100644 --- a/app/config/locale/translations/ja.json +++ b/app/config/locale/translations/ja.json @@ -3,24 +3,30 @@ "settings.locale": "ja", "settings.direction": "ltr", "emails.sender": "%s チーム", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "アカウント認証", + "emails.verification.hello": "こんにちは{{name}}さん", + "emails.verification.body": "メールアドレスを有効化するためには下記リンクをクリックして下さい。", + "emails.verification.footer": "このメールに心当たりが無い場合は破棄をお願いいたします。", + "emails.verification.thanks": "ご利用いただきありがとうございます。", + "emails.verification.signature": "{{project}}チーム", + "emails.magicSession.subject": "ログイン", + "emails.magicSession.hello": "こんにちは", + "emails.magicSession.body": "ログインするためには下記リンクをクリックしてください。", + "emails.magicSession.footer": "このメールに心当たりが無い場合は破棄をお願いいたします。", + "emails.magicSession.thanks": "ご利用いただきありがとうございます。", + "emails.magicSession.signature": "{{project}}チーム", + "emails.recovery.subject": "パスワードリセット", + "emails.recovery.hello": "こんにちは{{name}}さん", + "emails.recovery.body": "パスワードをリセットするためには下記リンクをクリックしてください。", + "emails.recovery.footer": "このメールに心当たりが無い場合は破棄をお願いいたします。", + "emails.recovery.thanks": "ご利用いただきありがとうございます。", + "emails.recovery.signature": "{{project}}チーム", + "emails.invitation.subject": "%sチームへの招待が%sから来ました。", + "emails.invitation.hello": "こんにちは", + "emails.invitation.body": "{{owner}}さんが{{project}}の{{team}}チームにあなたを招待しています。", + "emails.invitation.footer": "このメールに心当たりが無い場合は破棄をお願いいたします。", + "emails.invitation.thanks": "ご利用いただきありがとうございます。", + "emails.invitation.signature": "{{project}}チーム", "locale.country.unknown": "不明", "countries.af": "アフガニスタン", "countries.ao": "アンゴラ", @@ -223,4 +229,4 @@ "continents.na": "北米", "continents.oc": "オセアニア", "continents.sa": "南アメリカ" -} \ No newline at end of file +} diff --git a/app/config/locale/translations/jv.json b/app/config/locale/translations/jv.json index 0d714c40cd..a7c658c8b4 100644 --- a/app/config/locale/translations/jv.json +++ b/app/config/locale/translations/jv.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/km.json b/app/config/locale/translations/km.json index e2dfdb57c6..b1862d5e78 100644 --- a/app/config/locale/translations/km.json +++ b/app/config/locale/translations/km.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/kn.json b/app/config/locale/translations/kn.json index 52cf6d3737..1dfe029778 100644 --- a/app/config/locale/translations/kn.json +++ b/app/config/locale/translations/kn.json @@ -3,24 +3,30 @@ "settings.locale": "ka", "settings.direction": "ltr", "emails.sender": "%s ತಂಡ", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "ಖಾತೆ ಪರಿಶೀಲನೆ", + "emails.verification.hello": "ನಮಸ್ಕಾರ {{name}}", + "emails.verification.body": "ನಿಮ್ಮ ಇಮೇಲ್ ವಿಳಾಸ ಪರಿಶೀಲನೆಗೆ ಈ ಲಿಂಕನ್ನು ಅನುಸರಿಸಿ", + "emails.verification.footer": "ನೀವು ಇಮೇಲ್ ವಿಳಾಸ ಪರಿಶೀಲನೆಗೆ ಕೇಳದಿದ್ದರೆ, ಈ ಸಂದೇಶವನ್ನು ನಿರ್ಲಕ್ಷಿಸಿ", + "emails.verification.thanks": "ಧನ್ಯವಾದಗಳು", + "emails.verification.signature": "{{project}} ತಂಡ", + "emails.magicSession.subject": "ಲಾಗಿನ್", + "emails.magicSession.hello": "ನಮಸ್ಕಾರ,", + "emails.magicSession.body": "ಲಾಗಿನ್ ಮಾಡಲಿಕ್ಕೆ ಈ ಲಿಂಕನ್ನು ಅನುಸರಿಸಿ", + "emails.magicSession.footer": "ನೀವು ಈ ಇಮೇಲನಿಂದ ಲಾಗಿನ್ ಮಾಡಲು ಕೇಳದಿದ್ದರೆ, ಈ ಸಂದೇಶವನ್ನು ನಿರ್ಲಕ್ಷಿಸಿ", + "emails.magicSession.thanks": "ಧನ್ಯವಾದಗಳು", + "emails.magicSession.signature": "{{project}} ತಂಡ", + "emails.recovery.subject": "ಗುಪ್ತಪದ ಮರುಹೊಂದಿಸಿ", + "emails.recovery.hello": "ನಮಸ್ಕಾರ {{name}}", + "emails.recovery.body": "ನಿಮ್ಮ {{project}} ಗುಪ್ತಪದವನ್ನು ಮರುಹೊಂದಿಸಲು ಈ ಲಿಂಕನ್ನು ಅನುಸರಿಸಿ", + "emails.recovery.footer": "ನೀವು ಗುಪ್ತಪದವನ್ನು ಮರುಹೊಂದಿಸಲು ಕೇಳದಿದ್ದರೆ, ಈ ಸಂದೇಶವನ್ನು ನಿರ್ಲಕ್ಷಿಸಿ", + "emails.recovery.thanks": "ಧನ್ಯವಾದಗಳು", + "emails.recovery.signature": "{{project}} ತಂಡ", + "emails.invitation.subject": "%s ತಂಡಕ್ಕೆ %s ರಲ್ಲಿ ಆಹ್ವಾನ", + "emails.invitation.hello": "ನಮಸ್ಕಾರ", + "emails.invitation.body": "ಈ ಇಮೇಲ್ ನಿಮಗೆ ಬಂದಿದೆ ಏಕೆಂದರೆ {{owner}} ನಿಮ್ಮನ್ನು {{team}} ತಂಡದ {{project}}ರಲ್ಲಿ ಸದಸ್ಯ ಆಗಲಿಕ್ಕೆ ಆಹ್ವಾನಿಸಿದ್ದಾರೆ", + "emails.invitation.footer": "ನಿಮಗೆ ಆಸಕ್ತಿಯಿಲ್ಲದಿದ್ದರೆ, ಈ ಸಂದೇಶವನ್ನು ನಿರ್ಲಕ್ಷಿಸಿ", + "emails.invitation.thanks": "ಧನ್ಯವಾದಗಳು", + "emails.invitation.signature": "{{project}} ತಂಡ", "locale.country.unknown": "Unknown", "countries.af": "ಅಫ್ಘಾನಿಸ್ತಾನ", "countries.ao": "ಅಂಗೋಲಾ", diff --git a/app/config/locale/translations/ko.json b/app/config/locale/translations/ko.json index 9b55ff0dd4..7478b45fbe 100644 --- a/app/config/locale/translations/ko.json +++ b/app/config/locale/translations/ko.json @@ -3,24 +3,30 @@ "settings.locale": "ko", "settings.direction": "ltr", "emails.sender": "%s 팀", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "계정 인증", + "emails.verification.hello": "안녕하세요 {{name}}님", + "emails.verification.body": "이메일 인증을 위해 링크를 클릭하여주세요.", + "emails.verification.footer": "이메일 인증을 부탁하지 않으셨다면 이 메시지를 무시하여주세요.", + "emails.verification.thanks": "감사합니다", + "emails.verification.signature": "{{project}} 팀", + "emails.magicSession.subject": "로그인", + "emails.magicSession.hello": "안녕하세요,", + "emails.magicSession.body": "로그인 하시려면 링크를 클릭하여주세요.", + "emails.magicSession.footer": "이 이메일 계정으로 로그인 신청을 하지 않으셨다면 이 메세지를 무시하여주세요.", + "emails.magicSession.thanks": "감사합니다", + "emails.magicSession.signature": "{{project}} 팀", + "emails.recovery.subject": "비밀번호 재설정", + "emails.recovery.hello": "안녕하세요 {{name}}님", + "emails.recovery.body": "{{project}}의 비밀번호 재설정을 위해 링크를 클릭하여주세요.", + "emails.recovery.footer": "비밀번호 재설정 신청을 하지 않으셨다면 이 메세지를 무시하여주세요.", + "emails.recovery.thanks": "감사합니다", + "emails.recovery.signature": "{{project}} 팀", + "emails.invitation.subject": "초대장 %s 팀 - %s", + "emails.invitation.hello": "안녕하세요", + "emails.invitation.body": "{{owner}}님이 귀하를 {{project}}의 {{team}} 팀으로 초대합니다.", + "emails.invitation.footer": "팀에 합류할 의사가 없으시면 이 메세지를 무시하여주세요.", + "emails.invitation.thanks": "감사합니다", + "emails.invitation.signature": "{{project}} 팀", "locale.country.unknown": "알려지지 않은", "countries.af": "아프가니스탄", "countries.ao": "앙골라", @@ -57,7 +63,7 @@ "countries.cn": "중국", "countries.ci": "코트디부아르", "countries.cm": "카메룬", - "countries.cd": "콩고공화국의 행정", + "countries.cd": "콩고 민주 공화국", "countries.cg": "콩고 공화국", "countries.co": "콜롬비아", "countries.km": "코모로", diff --git a/app/config/locale/translations/lb.json b/app/config/locale/translations/lb.json new file mode 100644 index 0000000000..d874d46a70 --- /dev/null +++ b/app/config/locale/translations/lb.json @@ -0,0 +1,232 @@ +{ + "settings.inspire": "\"The art of being wise is the art of knowing what to overlook.\"", + "settings.locale": "lb", + "settings.direction": "ltr", + "emails.sender": "%s Team", + "emails.verification.subject": "Kont Verifikatioun", + "emails.verification.hello": "Hey {{name}}", + "emails.verification.body": "Follegt dëse Link fir Är E -Mail Adress z'iwwerpréiwen.", + "emails.verification.footer": "Wann Dir net gefrot hutt dës Adress z'iwwerpréiwen, kënnt Dir dëse Message ignoréieren.", + "emails.verification.thanks": "Merci", + "emails.verification.signature": "{{project}} équipe", + "emails.magicSession.subject": "Login", + "emails.magicSession.hello": "Hey,", + "emails.magicSession.body": "Follegt dëse Link fir umellen.", + "emails.magicSession.footer": "Wann Dir net gefrot hutt Iech mat dëser E -Mail anzemelden, kënnt Dir dëse Message ignoréieren.", + "emails.magicSession.thanks": "Merci", + "emails.magicSession.signature": "{{project}} équipe", + "emails.recovery.subject": "Password Reset", + "emails.recovery.hello": "Hello {{name}}", + "emails.recovery.body": "Follegt dëse Link fir Äert {{project}} Passwuert zréckzesetzen.", + "emails.recovery.footer": "Wann Dir net gefrot hutt Äert Passwuert zréckzesetzen, kënnt Dir dëse Message ignoréieren.", + "emails.recovery.thanks": "Merci", + "emails.recovery.signature": "{{project}} équipe", + "emails.invitation.subject": "Invitatioun un %s équipe bei %s", + "emails.invitation.hello": "Hallo", + "emails.invitation.body": "Dës E -Mail gouf un Iech geschéckt well {{owner}} Iech invitéiere wëllt fir Member vum {{team}} Team bei {{project}} ze ginn.", + "emails.invitation.footer": "Wann Dir net interesséiert sidd, kënnt Dir dëse Message ignoréieren.", + "emails.invitation.thanks": "Merci", + "emails.invitation.signature": "{{project}} équipe", + "locale.country.unknown": "Onbekannt", + "countries.af": "Afghanistan", + "countries.ao": "Angola", + "countries.al": "Albanien", + "countries.ad": "Andorra", + "countries.ae": "Vereenegt Arabesch Emirater", + "countries.ar": "Argentinien", + "countries.am": "Armenien", + "countries.ag": "Antigua a Barbuda", + "countries.au": "Australien", + "countries.at": "Éisträich", + "countries.az": "Aserbaidschan", + "countries.bi": "Burundi", + "countries.be": "Belsch", + "countries.bj": "Benin", + "countries.bf": "Burkina Faso", + "countries.bd": "Bangladesch", + "countries.bg": "Bulgarien", + "countries.bh": "Bahrain", + "countries.bs": "Bahamas", + "countries.ba": "Bosnien an Herzegowina", + "countries.by": "Wäissrussland", + "countries.bz": "Belize", + "countries.bo": "Bolivien", + "countries.br": "Brasilien", + "countries.bb": "Barbados", + "countries.bn": "Brunei", + "countries.bt": "Bhutan", + "countries.bw": "Botswana", + "countries.cf": "Zentralafrikanesch Republik", + "countries.ca": "Kanada", + "countries.ch": "Schwäiz", + "countries.cl": "Chile", + "countries.cn": "China", + "countries.ci": "Côte d'Ivoire", + "countries.cm": "Kamerun", + "countries.cd": "DR Congo", + "countries.cg": "Republik Kongo", + "countries.co": "Kolumbien", + "countries.km": "Komoren", + "countries.cv": "Cap Vert", + "countries.cr": "Costa Rica", + "countries.cu": "Kuba", + "countries.cy": "Zypern", + "countries.cz": "Tschechien", + "countries.de": "Däitschland", + "countries.dj": "Djibouti", + "countries.dm": "Dominica", + "countries.dk": "Dänemark", + "countries.do": "Dominikanesch Republik", + "countries.dz": "Algerien", + "countries.ec": "Ecuador", + "countries.eg": "Ägypten", + "countries.er": "Eritrea", + "countries.es": "Spuenien", + "countries.ee": "Estland", + "countries.et": "Äthiopien", + "countries.fi": "Finnland", + "countries.fj": "Fidschi", + "countries.fr": "Frankräich", + "countries.fm": "Mikronesien", + "countries.ga": "Gabon", + "countries.gb": "Vereenegt Kinnekräich", + "countries.ge": "Georgien", + "countries.gh": "Ghana", + "countries.gn": "Guinea", + "countries.gm": "Gambia", + "countries.gw": "Guinea-Bissau", + "countries.gq": "Äquatorialguinea", + "countries.gr": "Griichenland", + "countries.gd": "Granada", + "countries.gt": "Guatemala", + "countries.gy": "Guyana", + "countries.hn": "Honduras", + "countries.hr": "Kroatien", + "countries.ht": "Haïti", + "countries.hu": "Ungarn", + "countries.id": "Indonesien", + "countries.in": "Indien", + "countries.ie": "Irland", + "countries.ir": "Iran", + "countries.iq": "Irak", + "countries.is": "Island", + "countries.il": "Israel", + "countries.it": "Italien", + "countries.jm": "Jamaika", + "countries.jo": "Jordanien", + "countries.jp": "Japan", + "countries.kz": "Kazakhstan", + "countries.ke": "Kenia", + "countries.kg": "Kirgisistan", + "countries.kh": "Kambodscha", + "countries.ki": "Kiribati", + "countries.kn": "Saint Kitts and Nevis", + "countries.kr": "Südkorea", + "countries.kw": "Kuwait", + "countries.la": "Laos", + "countries.lb": "Libanon", + "countries.lr": "Liberia", + "countries.ly": "Libyen", + "countries.lc": "Saint Lucia", + "countries.li": "Liechtenstein", + "countries.lk": "Sri Lanka", + "countries.ls": "Lesotho", + "countries.lt": "Litauen", + "countries.lu": "Lëtzebuerg", + "countries.lv": "Lettland", + "countries.ma": "Marokko", + "countries.mc": "Monaco", + "countries.md": "Moldawien", + "countries.mg": "Madagaskar", + "countries.mv": "Malediven", + "countries.mx": "Mexiko", + "countries.mh": "Marshallinselen", + "countries.mk": "Mazedonien", + "countries.ml": "Mali", + "countries.mt": "Malta", + "countries.mm": "Myanmar", + "countries.me": "Montenegro", + "countries.mn": "Mongolei", + "countries.mz": "Mosambik", + "countries.mr": "Mauritanien", + "countries.mu": "Mauritius", + "countries.mw": "Malawi", + "countries.my": "Malaysien", + "countries.na": "Namibien", + "countries.ne": "Niger", + "countries.ng": "Nigeria", + "countries.ni": "Nicaragua", + "countries.nl": "Holland", + "countries.no": "Norwegen", + "countries.np": "Nepal", + "countries.nr": "Nauru", + "countries.nz": "Neiséiland", + "countries.om": "Oman", + "countries.pk": "Pakistan", + "countries.pa": "Panama", + "countries.pe": "Peru", + "countries.ph": "Philippinnen", + "countries.pw": "Palau", + "countries.pg": "Papua-Neuguinea", + "countries.pl": "Polen", + "countries.kp": "Nordkorea", + "countries.pt": "Portugal", + "countries.py": "Paraguay", + "countries.qa": "Quatar", + "countries.ro": "Rumänien", + "countries.ru": "Russland", + "countries.rw": "Ruanda", + "countries.sa": "Saudi Arabien", + "countries.sd": "Sudan", + "countries.sn": "Senegal", + "countries.sg": "Singapur", + "countries.sb": "Solomon Inselen", + "countries.sl": "Sierra Leone", + "countries.sv": "El Salvador", + "countries.sm": "San Marino", + "countries.so": "Somalia", + "countries.rs": "Serbien", + "countries.ss": "Südsudan", + "countries.st": "Sao Tome a Principe", + "countries.sr": "Suriname", + "countries.sk": "Slowakei", + "countries.si": "Slowenien", + "countries.se": "Schweden", + "countries.sz": "Swasiland", + "countries.sc": "Seychellen", + "countries.sy": "Syrien", + "countries.td": "Tschad", + "countries.tg": "Goen", + "countries.th": "Thailand", + "countries.tj": "Tadjikistan", + "countries.tm": "Turkmenistan", + "countries.tl": "Timor-Leste", + "countries.to": "Tonga", + "countries.tt": "Tinidad an Tobago", + "countries.tn": "Tunesien", + "countries.tr": "Tierkei", + "countries.tv": "Tuvalu", + "countries.tz": "Tansania", + "countries.ug": "Ugana", + "countries.ua": "Ukraine", + "countries.uy": "Uruguay", + "countries.us": "Vereenegt Staaten", + "countries.uz": "Usbekistan", + "countries.va": "Vatikan Stad", + "countries.vc": "Saint Vincent an d'Grenadinnen", + "countries.ve": "Venezuela", + "countries.vn": "Vietnam", + "countries.vu": "Vanuatu", + "countries.ws": "Samoa", + "countries.ye": "Yemen", + "countries.za": "Südafrika", + "countries.zm": "Zambia", + "countries.zw": "Zimbabwe", + "continents.af": "Afrika", + "continents.an": "Antarktis", + "continents.as": "Asien", + "continents.eu": "Europa", + "continents.na": "Nordamerika", + "continents.oc": "Ozeanien", + "continents.sa": "Südamerika" +} diff --git a/app/config/locale/translations/lt.json b/app/config/locale/translations/lt.json index 1ed52815e0..ef836b0ab2 100644 --- a/app/config/locale/translations/lt.json +++ b/app/config/locale/translations/lt.json @@ -1,26 +1,32 @@ { - "settings.inspire": "\"Menas būti išmintingu — tai menas žinoti, ką galima paniekti.\"", + "settings.inspire": "\"Menas būti išmintingu — tai menas žinoti, ko galima nepamatyti.\"", "settings.locale": "lt", "settings.direction": "ltr", - "emails.sender": "Komanda %s", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.sender": "%s komanda", + "emails.verification.subject": "Paskyros Patvirtinimas", + "emails.verification.hello": "Labas {{name}}", + "emails.verification.body": "Spauskite šią nuorodą, kad patvirtintumėte savo el. paštą.", + "emails.verification.footer": "Jei neprašėte patvirtinti šio el. pašto, galite ignoruoti šį pranešimą.", + "emails.verification.thanks": "Ačiū", + "emails.verification.signature": "{{project}} komanda", + "emails.magicSession.subject": "Prisijungti", + "emails.magicSession.hello": "Labas,", + "emails.magicSession.body": "Spauskite šią nuorodą, kad prisijungtumėte.", + "emails.magicSession.footer": "Jei neprašėte prisijungti naudojantis šiuo el. paštu, galite ignoruoti šį pranešimą.", + "emails.magicSession.thanks": "Ačiū", + "emails.magicSession.signature": "{{project}} komanda", + "emails.recovery.subject": "Slaptažodžio Atkūrimas", + "emails.recovery.hello": "Labas {{name}}", + "emails.recovery.body": "Spauskite šią nuorodą, kad atkurtumėte projekto {{project}} slaptažodį.", + "emails.recovery.footer": "Jei neprašėte atkurti savo slaptažodzio, galite ignoruoti šį pranešimą.", + "emails.recovery.thanks": "Ačiū", + "emails.recovery.signature": "{{project}} komanda", + "emails.invitation.subject": "Pakvietimas į %s komandą %s projekte", + "emails.invitation.hello": "Labas", + "emails.invitation.body": "Šis el. laiškas buvo atsiųstas jums, nes {{owner}} norėjo jus pakviesti tapti projekto {{project}} dalimi {{team}} komandoje.", + "emails.invitation.footer": "Jei jūsų tai nedomina, galite ignoruoti šį pranešimą.", + "emails.invitation.thanks": "Ačiū", + "emails.invitation.signature": "{{project}} komanda", "locale.country.unknown": "Nežinoma", "countries.af": "Afganistanas", "countries.ao": "Angola", @@ -33,17 +39,17 @@ "countries.au": "Australija", "countries.at": "Austrija", "countries.az": "Azerbaidžanas", - "countries.bi": "Burundi", + "countries.bi": "Burundis", "countries.be": "Belgija", "countries.bj": "Beninas", - "countries.bf": "Burkina Faso", + "countries.bf": "Burkina Fasas", "countries.bd": "Bangladešas", "countries.bg": "Bulgarija", "countries.bh": "Bahreinas", "countries.bs": "Bahamai", "countries.ba": "Bosnija ir Hercegovina", "countries.by": "Baltarusija", - "countries.bz": "Baileys", + "countries.bz": "Belizas", "countries.bo": "Bolivija", "countries.br": "Brazilija", "countries.bb": "Barbadosas", @@ -84,7 +90,7 @@ "countries.fm": "Mikronezija", "countries.ga": "Gabonas", "countries.gb": "Jungtinė Karalystė", - "countries.ge": "Gruzija", + "countries.ge": "Sakartvelas", "countries.gh": "Gana", "countries.gn": "Gvinėja", "countries.gm": "Gambija", @@ -129,16 +135,16 @@ "countries.lu": "Liuksemburgas", "countries.lv": "Latvija", "countries.ma": "Marokas", - "countries.mc": "Monaco", + "countries.mc": "Monakas", "countries.md": "Moldova", "countries.mg": "Madagaskaras", "countries.mv": "Maldyvai", "countries.mx": "Meksika", - "countries.mh": "Maršalo salos", + "countries.mh": "Maršalo Salos", "countries.mk": "Makedonija", "countries.ml": "Malis", "countries.mt": "Malta", - "countries.mm": "Mianmaras", + "countries.mm": "Mianmaras / Birma", "countries.me": "Juodkalnija", "countries.mn": "Mongolija", "countries.mz": "Mozambikas", @@ -166,7 +172,7 @@ "countries.kp": "Šiaurės Korėja", "countries.pt": "Portugalija", "countries.py": "Paragvajus", - "countries.qa": "Qatar", + "countries.qa": "Kataras", "countries.ro": "Rumunija", "countries.ru": "Rusija", "countries.rw": "Ruanda", @@ -177,7 +183,7 @@ "countries.sb": "Saliamono Salos", "countries.sl": "Siera Leonė", "countries.sv": "Salvadoras", - "countries.sm": "San Marino", + "countries.sm": "San Marinas", "countries.so": "Somalis", "countries.rs": "Serbija", "countries.ss": "Pietų Sudanas", @@ -186,11 +192,11 @@ "countries.sk": "Slovakija", "countries.si": "Slovėnija", "countries.se": "Švedija", - "countries.sz": "Svazilandas", + "countries.sz": "Esvatinis", "countries.sc": "Seišeliai", "countries.sy": "Sirija", - "countries.td": "Chadas", - "countries.tg": "Togo", + "countries.td": "Čadas", + "countries.tg": "Togas", "countries.th": "Tailandas", "countries.tj": "Tadžikistanas", "countries.tm": "Turkmėnistanas", @@ -223,4 +229,4 @@ "continents.na": "Šiaurės Amerika", "continents.oc": "Okeanija", "continents.sa": "Pietų Amerika" -} \ No newline at end of file +} diff --git a/app/config/locale/translations/lv.json b/app/config/locale/translations/lv.json new file mode 100644 index 0000000000..c5fe8533f4 --- /dev/null +++ b/app/config/locale/translations/lv.json @@ -0,0 +1,232 @@ +{ + "settings.inspire": "\"Māksla būt gudram ir māksla zināt, ko aizmirst.\"", + "settings.locale": "lv", + "settings.direction": "ltr", + "emails.sender": "%s komanda", + "emails.verification.subject": "Konta verifikācija", + "emails.verification.hello": "Sveicināti, {{name}}", + "emails.verification.body": "Sekojiet saitei, lai apstiprinātu savu e-pasta adresi.", + "emails.verification.footer": "Ja Jūs nepieprasījāt šīs adreses apstiprinājumu, lūdzu, ignorējiet šo ziņu.", + "emails.verification.thanks": "Paldies", + "emails.verification.signature": "{{project}} komanda", + "emails.magicSession.subject": "Ieiet", + "emails.magicSession.hello": "Sveicināti,", + "emails.magicSession.body": "Sekojiet saitei, lai ieietu.", + "emails.magicSession.footer": "Ja Jūs nepieprasījāt ieiet ar šo e-pasta adresi, lūdzu, ignorējiet šo ziņu.", + "emails.magicSession.thanks": "Paldies", + "emails.magicSession.signature": "{{project}} komanda", + "emails.recovery.subject": "Paroles atjaunināšana", + "emails.recovery.hello": "Labdien, {{name}}", + "emails.recovery.body": "Sekojiet saitei, lai atjauninātu {{project}} paroli.", + "emails.recovery.footer": "Ja Jūs nepieprasījāt paroles atjaunināšanu, lūdzu, ignorējiet šo ziņu.", + "emails.recovery.thanks": "Paldies", + "emails.recovery.signature": "{{project}} komanda", + "emails.invitation.subject": "Ielūgums piebiedroties %s komandai %s projektā.", + "emails.invitation.hello": "Labdien", + "emails.invitation.body": "Šis e-pasts tika nosūtīts Jums, jo {{owner}} vēlējās Jūs ielūgt kļūt par {{team}} komandas biedru {{project}} projektā.", + "emails.invitation.footer": "Ja Jūs neesat ieinteresēts, lūdzu, ignorējiet šo ziņu.", + "emails.invitation.thanks": "Paldies", + "emails.invitation.signature": "{{project}} komanda", + "locale.country.unknown": "Nav zināms", + "countries.af": "Afganistāna", + "countries.ao": "Angola", + "countries.al": "Albānija", + "countries.ad": "Andora", + "countries.ae": "Apvienotie Arābu Emirāti", + "countries.ar": "Argentīna", + "countries.am": "Armēnija", + "countries.ag": "Antigva un Barbuda", + "countries.au": "Austrālija", + "countries.at": "Austrija", + "countries.az": "Azerbaidžāna", + "countries.bi": "Burundi", + "countries.be": "Beļģija", + "countries.bj": "Benina", + "countries.bf": "Burkinafaso", + "countries.bd": "Bangladeša", + "countries.bg": "Bulgārija", + "countries.bh": "Bahreina", + "countries.bs": "Bahamas", + "countries.ba": "Bosnija un Hercegovina", + "countries.by": "Baltkrievija", + "countries.bz": "Beliza", + "countries.bo": "Bolīvija", + "countries.br": "Brazīlija", + "countries.bb": "Barbadosa", + "countries.bn": "Bruneja", + "countries.bt": "Butāna", + "countries.bw": "Botsvana", + "countries.cf": "Centrālāfrikas Republika", + "countries.ca": "Kanāda", + "countries.ch": "Šveice", + "countries.cl": "Čīle", + "countries.cn": "Ķīna", + "countries.ci": "Kotdivuāra", + "countries.cm": "Kamerūna", + "countries.cd": "Kongo Demokrātiskā Republika", + "countries.cg": "Kongo", + "countries.co": "Kolumbija", + "countries.km": "Komoras", + "countries.cv": "Kaboverde", + "countries.cr": "Kostarika", + "countries.cu": "Kuba", + "countries.cy": "Kipra", + "countries.cz": "Čehija", + "countries.de": "Vācija", + "countries.dj": "Džibutija", + "countries.dm": "Dominika", + "countries.dk": "Dānija", + "countries.do": "Dominikāna", + "countries.dz": "Alžīrija", + "countries.ec": "Ekvadora", + "countries.eg": "Ēģipte", + "countries.er": "Eritreja", + "countries.es": "Spānija", + "countries.ee": "Igaunija", + "countries.et": "Etiopija", + "countries.fi": "Somija", + "countries.fj": "Fidži", + "countries.fr": "Francija", + "countries.fm": "Mikronēzija", + "countries.ga": "Gabona", + "countries.gb": "Apvienotā Karaliste", + "countries.ge": "Gruzija", + "countries.gh": "Gana", + "countries.gn": "Gvineja", + "countries.gm": "Gambija", + "countries.gw": "Gvineja-Bisava", + "countries.gq": "Ekvatoriālā Gvineja", + "countries.gr": "Grieķija", + "countries.gd": "Grenada", + "countries.gt": "Gvatemala", + "countries.gy": "Gajāna", + "countries.hn": "Hondurasa", + "countries.hr": "Horvātija", + "countries.ht": "Haiti", + "countries.hu": "Ungārija", + "countries.id": "Indonēzija", + "countries.in": "Indija", + "countries.ie": "Īrija", + "countries.ir": "Irāna", + "countries.iq": "Irāka", + "countries.is": "Islande", + "countries.il": "Izraēla", + "countries.it": "Itālija", + "countries.jm": "Jamaika", + "countries.jo": "Jordānija", + "countries.jp": "Japāna", + "countries.kz": "Kazahstāna", + "countries.ke": "Kenija", + "countries.kg": "Kirgizstāna", + "countries.kh": "Kambodža", + "countries.ki": "Kiribati", + "countries.kn": "Sentkitsa un Nevisa", + "countries.kr": "Dienvidkoreja", + "countries.kw": "Kuveita", + "countries.la": "Laosa", + "countries.lb": "Libāna", + "countries.lr": "Libērija", + "countries.ly": "Lībija", + "countries.lc": "Sentlūsija", + "countries.li": "Lihtenšteina", + "countries.lk": "Šrilanka", + "countries.ls": "Lesoto", + "countries.lt": "Lietuva", + "countries.lu": "Luksemburga", + "countries.lv": "Latvija", + "countries.ma": "Maroka", + "countries.mc": "Monako", + "countries.md": "Moldova", + "countries.mg": "Madagaskara", + "countries.mv": "Maldīvija", + "countries.mx": "Meksika", + "countries.mh": "Māršala salas", + "countries.mk": "Ziemeļmaķedonijas Republika", + "countries.ml": "Mali", + "countries.mt": "Malta", + "countries.mm": "Mjanma", + "countries.me": "Melnkalne", + "countries.mn": "Mongolija", + "countries.mz": "Mozambika", + "countries.mr": "Mauritānija", + "countries.mu": "Maurīcija", + "countries.mw": "Malāvija", + "countries.my": "Malaizija", + "countries.na": "Namībija", + "countries.ne": "Nigēra", + "countries.ng": "Nigērija", + "countries.ni": "Nikaragva", + "countries.nl": "Nīderlande", + "countries.no": "Norvēģija", + "countries.np": "Nepāla", + "countries.nr": "Nauru", + "countries.nz": "Jaunzēlande", + "countries.om": "Omāna", + "countries.pk": "Pakistāna", + "countries.pa": "Panama", + "countries.pe": "Peru", + "countries.ph": "Filipīnas", + "countries.pw": "Palau", + "countries.pg": "Papua-Jaungvineja", + "countries.pl": "Polija", + "countries.kp": "Ziemeļkoreja", + "countries.pt": "Portugāle", + "countries.py": "Paragvaja", + "countries.qa": "Katara", + "countries.ro": "Rumānija", + "countries.ru": "Krievija", + "countries.rw": "Ruanda", + "countries.sa": "Saūda Arābija", + "countries.sd": "Sudāna", + "countries.sn": "Senegāla", + "countries.sg": "Singapūra", + "countries.sb": "Zālamana salas", + "countries.sl": "Sjerraleone", + "countries.sv": "Salvadora", + "countries.sm": "Sanmarīno", + "countries.so": "Somālija", + "countries.rs": "Serbija", + "countries.ss": "Dienvidsudāna", + "countries.st": "Santome un Prinsipi", + "countries.sr": "Surinama", + "countries.sk": "Slovākija", + "countries.si": "Slovēnija", + "countries.se": "Zviedrija", + "countries.sz": "Svatini", + "countries.sc": "Seišelas", + "countries.sy": "Sīrija", + "countries.td": "Čada", + "countries.tg": "Togo", + "countries.th": "Taizeme", + "countries.tj": "Tadžikistāna", + "countries.tm": "Turkmenistāna", + "countries.tl": "Austrumtimora", + "countries.to": "Tonga", + "countries.tt": "Trinidāda un Tobāgo", + "countries.tn": "Tunisija", + "countries.tr": "Turcija", + "countries.tv": "Tuvalu", + "countries.tz": "Tanzānija", + "countries.ug": "Uganda", + "countries.ua": "Ukraina", + "countries.uy": "Urugvaja", + "countries.us": "Amerikas Savienotās Valstis", + "countries.uz": "Uzbekistāna", + "countries.va": "Vatikāns", + "countries.vc": "Sentvinsenta un Grenadīnas", + "countries.ve": "Venecuēla", + "countries.vn": "Vjetnama", + "countries.vu": "Vanuatu", + "countries.ws": "Samoa", + "countries.ye": "Jemena", + "countries.za": "Dienvidāfrikas Republika", + "countries.zm": "Zambija", + "countries.zw": "Zimbabve", + "continents.af": "Āfrika", + "continents.an": "Antarktīda", + "continents.as": "Āzija", + "continents.eu": "Eiropa", + "continents.na": "Ziemeļamerika", + "continents.oc": "Okeānija", + "continents.sa": "Dienvidamerika" +} diff --git a/app/config/locale/translations/ml.json b/app/config/locale/translations/ml.json index f6e0dc6f1a..dce555c1cb 100644 --- a/app/config/locale/translations/ml.json +++ b/app/config/locale/translations/ml.json @@ -3,24 +3,30 @@ "settings.locale": "ml", "settings.direction": "ltr", "emails.sender": "%s ടീം", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "അക്കൗണ്ട് സ്ഥിരീകരണം", + "emails.verification.hello": "നമസ്കാരം {{name}}", + "emails.verification.body": "നിങ്ങളുടെ ഇമെയിൽ വിലാസം സ്ഥിരീകരിക്കുന്നതിനായി ഈ ലിങ്ക് പിന്തുടരുക.", + "emails.verification.footer": "ഈ വിലാസം സ്ഥിരീകരിക്കാന്‍ നിങ്ങൾ ആവശ്യപ്പെട്ടില്ലെങ്കിൽ, നിങ്ങൾക്ക് ഈ സന്ദേശം അവഗണിക്കാവുന്നതാണ്.", + "emails.verification.thanks": "നന്ദി", + "emails.verification.signature": "{{project}} ടീം", + "emails.magicSession.subject": "ലോഗിൻ", + "emails.magicSession.hello": "നമസ്കാരം,", + "emails.magicSession.body": "ലോഗിൻ ചെയ്യുന്നതിനായി ഈ ലിങ്ക് പിന്തുടരുക.", + "emails.magicSession.footer": "ഈ ഇമെയിൽ ഉപയോഗിച്ച് ലോഗിൻ ചെയ്യാൻ നിങ്ങൾ ആവശ്യപ്പെട്ടില്ലെങ്കിൽ, ഈ സന്ദേശം അവഗണിക്കാവുന്നതാണ്.", + "emails.magicSession.thanks": "നന്ദി", + "emails.magicSession.signature": "{{project}} ടീം", + "emails.recovery.subject": "രഹസ്യവാക്ക് പുനക്രമീകരണം", + "emails.recovery.hello": "നമസ്കാരം {{name}}", + "emails.recovery.body": "നിങ്ങളുടെ {{Project}} രഹസ്യവാക്ക് പുനക്രമീകരിക്കുന്നതിന് ഈ ലിങ്ക് പിന്തുടരുക.", + "emails.recovery.footer": "നിങ്ങളുടെ പാസ്‌വേഡ് പുനക്രമീകരിക്കാന്‍ നിങ്ങൾ ആവശ്യപ്പെട്ടില്ലെങ്കിൽ, ഈ സന്ദേശം അവഗണിക്കാവുന്നതാണ്.", + "emails.recovery.thanks": "നന്ദി", + "emails.recovery.signature": "{{project}} ടീം", + "emails.invitation.subject": "%s -ലെ %s ടീമിലേക്കുള്ള ക്ഷണം", + "emails.invitation.hello": "നമസ്കാരം", + "emails.invitation.body": "നിങ്ങളെ {{project}} -ലെ {{team}} ടീമിലെ അംഗമാകുവാന്‍ ക്ഷണിക്കാൻ {{owner}} ആഗ്രഹിക്കുതിനാലാണ് ഈ മെയിൽ നിങ്ങൾക്ക് അയക്കുന്നത്.", + "emails.invitation.footer": "നിങ്ങൾക്ക് താൽപ്പര്യമില്ലെങ്കിൽ, ഈ സന്ദേശം അവഗണിക്കാവുന്നതാണ്.", + "emails.invitation.thanks": "നന്ദി", + "emails.invitation.signature": "{{project}} ടീം", "locale.country.unknown": "Unknown", "countries.af": "അഫ്ഗാനിസ്ഥാൻ", "countries.ao": "അംഗോള", diff --git a/app/config/locale/translations/mr.json b/app/config/locale/translations/mr.json index adf7c212c6..45a08f5f7e 100644 --- a/app/config/locale/translations/mr.json +++ b/app/config/locale/translations/mr.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/ms.json b/app/config/locale/translations/ms.json index 445bf40c46..23a302d684 100644 --- a/app/config/locale/translations/ms.json +++ b/app/config/locale/translations/ms.json @@ -3,24 +3,30 @@ "settings.locale": "ms", "settings.direction": "ltr", "emails.sender": "%s Team", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Pengesahan Akaun", + "emails.verification.hello": "Hey {{name}}", + "emails.verification.body": "Tekan pautan ini untuk mengesahkan alamat email anda.", + "emails.verification.footer": "Sekiranya anda tidak membuat permintaan untuk mengesahkan email ini, sila abaikan mesej ini.", + "emails.verification.thanks": "Terima kasih", + "emails.verification.signature": "{{project}} team", + "emails.magicSession.subject": "Log masuk", + "emails.magicSession.hello": "Hey,", + "emails.magicSession.body": "Tekan pautan ini untuk log masuk.", + "emails.magicSession.footer": "Sekiranya anda tidak membuat permintaan untuk log masuk menggunakan email ini, sila abaikan mesej ini.", + "emails.magicSession.thanks": "Terima kasih", + "emails.magicSession.signature": "{{project}} team", + "emails.recovery.subject": "Menetap semula Kata Laluan", + "emails.recovery.hello": "Hello {{name}}", + "emails.recovery.body": "Tekan pautan ini untuk menetapkan semula kata laluan {{project}}.", + "emails.recovery.footer": "Sekiranya anda tidak membuat permintaan menetap semula kata laluan, sila abaikan mesej ini.", + "emails.recovery.thanks": "Terima kasih", + "emails.recovery.signature": "{{project}} team", + "emails.invitation.subject": "Jemputan ke pasukan %s di %s", + "emails.invitation.hello": "Hello", + "emails.invitation.body": "Anda menerima mel ini kerana {{owner}} ingin menjemput anda untuk menjadi ahli pasukan {{team}} di {{project}}.", + "emails.invitation.footer": "Sekiranya anda tidak berminat, sila abaikan mesej ini.", + "emails.invitation.thanks": "Terima kasih", + "emails.invitation.signature": "{{project}} team", "locale.country.unknown": "Tidak Diketahui", "countries.af": "Afghanistan", "countries.ao": "Angola", diff --git a/app/config/locale/translations/nb.json b/app/config/locale/translations/nb.json new file mode 100644 index 0000000000..89d53f0538 --- /dev/null +++ b/app/config/locale/translations/nb.json @@ -0,0 +1,232 @@ +{ + "settings.inspire": "\"Kunsten å være klok er kunsten å vite hva man skal overse.\"", + "settings.locale": "nb", + "settings.direction": "ltr", + "emails.sender": "%s Teamet", + "emails.verification.subject": "Konto Verifisering", + "emails.verification.hello": "Hei {{name}}", + "emails.verification.body": "Følg denne lenken for å verifisere din epost adresse.", + "emails.verification.footer": "Hvis du ikke ba om å bekrefte denne adressen, kan du ignorere denne meldingen.", + "emails.verification.thanks": "Takk", + "emails.verification.signature": "{{project}} teamet", + "emails.magicSession.subject": "Login", + "emails.magicSession.hello": "Hei,", + "emails.magicSession.body": "Følg denne lenken for å logge inn.", + "emails.magicSession.footer": "Hvis du ikke ba om å logge inn med denne adressen, kan du ignorere denne meldingen.", + "emails.magicSession.thanks": "Takk", + "emails.magicSession.signature": "{{project}} teamet", + "emails.recovery.subject": "Reset Passord", + "emails.recovery.hello": "Hei {{name}}", + "emails.recovery.body": "Følg denne lenken for å resette ditt {{project}} passord.", + "emails.recovery.footer": "Hvis du ikke ba om å resette ditt passord, kan du ignorere denne meldingen.", + "emails.recovery.thanks": "Takk", + "emails.recovery.signature": "{{project}} teamet", + "emails.invitation.subject": "Invitasjon til %s Team ved %s", + "emails.invitation.hello": "Hei", + "emails.invitation.body": "Denne mailen ble sendt til deg fordi {{owner}} hadde lyst til å invitere deg til å bli et medlem av {{team}} teamet ved {{project}}.", + "emails.invitation.footer": "Hvis du ikke er interessert, kan du ignorere denne meldingen.", + "emails.invitation.thanks": "Takk", + "emails.invitation.signature": "{{project}} teamet", + "locale.country.unknown": "Ukjent", + "countries.af": "Afghanistan", + "countries.ao": "Angola", + "countries.al": "Albania", + "countries.ad": "Andorra", + "countries.ae": "De forente arabiske emirater", + "countries.ar": "Argentina", + "countries.am": "Armenia", + "countries.ag": "Antigua og Barbuda", + "countries.au": "Australia", + "countries.at": "Østerrike", + "countries.az": "Aserbajdsjan", + "countries.bi": "Burundi", + "countries.be": "Belgia", + "countries.bj": "Benin", + "countries.bf": "Burkina Faso", + "countries.bd": "Bangladesh", + "countries.bg": "Bulgaria", + "countries.bh": "Bahrain", + "countries.bs": "Bahamas", + "countries.ba": "Bosnia-Hercegovina", + "countries.by": "Hviterussland", + "countries.bz": "Belize", + "countries.bo": "Bolivia", + "countries.br": "Brasil", + "countries.bb": "Barbados", + "countries.bn": "Brunei Darussalam", + "countries.bt": "Bhutan", + "countries.bw": "Botswana", + "countries.cf": "Den sentralafrikanske republikk", + "countries.ca": "Canada", + "countries.ch": "Sveits", + "countries.cl": "Chile", + "countries.cn": "Kina", + "countries.ci": "Elfenbenskysten", + "countries.cm": "Kamerun", + "countries.cd": "Den demokratiske republikken Kongo", + "countries.cg": "Republikken Kongo", + "countries.co": "Colombia", + "countries.km": "Komorene", + "countries.cv": "Kapp Verde", + "countries.cr": "Costa Rica", + "countries.cu": "Cuba", + "countries.cy": "Kypros", + "countries.cz": "Tjekkia", + "countries.de": "Tyskland", + "countries.dj": "Djibouti", + "countries.dm": "Dominica", + "countries.dk": "Danmark", + "countries.do": "Den dominikanske republikk", + "countries.dz": "Algerie", + "countries.ec": "Ecuador", + "countries.eg": "Egypt", + "countries.er": "Eritrea", + "countries.es": "Spania", + "countries.ee": "Estland", + "countries.et": "Etiopia", + "countries.fi": "Finland", + "countries.fj": "Fiji", + "countries.fr": "Frankrike", + "countries.fm": "Mikronesia", + "countries.ga": "Gabon", + "countries.gb": "Storbritannia", + "countries.ge": "Georgia", + "countries.gh": "Ghana", + "countries.gn": "Guinea", + "countries.gm": "Gambia", + "countries.gw": "Guinea-Bissau", + "countries.gq": "Ekvatorial-Guinea", + "countries.gr": "Hellas", + "countries.gd": "Grenada", + "countries.gt": "Guatemala", + "countries.gy": "Guyana", + "countries.hn": "Honduras", + "countries.hr": "Kroatia", + "countries.ht": "Haiti", + "countries.hu": "Ungarn", + "countries.id": "Indonesia", + "countries.in": "India", + "countries.ie": "Irland", + "countries.ir": "Iran", + "countries.iq": "Irak", + "countries.is": "Island", + "countries.il": "Israel", + "countries.it": "Italia", + "countries.jm": "Jamaica", + "countries.jo": "Jordan", + "countries.jp": "Japan", + "countries.kz": "Kasakhstan", + "countries.ke": "Kenya", + "countries.kg": "Kirgisistan", + "countries.kh": "Kambodsja", + "countries.ki": "Kiribati", + "countries.kn": "Saint Kitts og Nevis", + "countries.kr": "Sør-Korea", + "countries.kw": "Kuwait", + "countries.la": "Laos", + "countries.lb": "Libanon", + "countries.lr": "Liberia", + "countries.ly": "Libya", + "countries.lc": "Saint Lucia", + "countries.li": "Liechtenstein", + "countries.lk": "Sri Lanka", + "countries.ls": "Lesotho", + "countries.lt": "Litauen", + "countries.lu": "Luxembourg", + "countries.lv": "Latvia", + "countries.ma": "Marokko", + "countries.mc": "Monaco", + "countries.md": "Moldova", + "countries.mg": "Madagaskar", + "countries.mv": "Maldivene", + "countries.mx": "Mexico", + "countries.mh": "Marshalløyene", + "countries.mk": "Nord-Makedonia", + "countries.ml": "Mali", + "countries.mt": "Malta", + "countries.mm": "Myanmar", + "countries.me": "Montenegro", + "countries.mn": "Mongolia", + "countries.mz": "Mozambik", + "countries.mr": "Mauritania", + "countries.mu": "Mauritius", + "countries.mw": "Malawi", + "countries.my": "Malaysia", + "countries.na": "Namibia", + "countries.ne": "Niger", + "countries.ng": "Nigeria", + "countries.ni": "Nicaragua", + "countries.nl": "Nederland", + "countries.no": "Norge", + "countries.np": "Nepal", + "countries.nr": "Nauru", + "countries.nz": "New Zealand", + "countries.om": "Oman", + "countries.pk": "Pakistan", + "countries.pa": "Panama", + "countries.pe": "Peru", + "countries.ph": "Filippinene", + "countries.pw": "Palau", + "countries.pg": "Papua Ny-Guinea", + "countries.pl": "Polen", + "countries.kp": "Nord-Korea", + "countries.pt": "Portugal", + "countries.py": "Paraguay", + "countries.qa": "Qatar", + "countries.ro": "Romania", + "countries.ru": "Russland", + "countries.rw": "Rwanda", + "countries.sa": "Saudi-Arabia", + "countries.sd": "Sudan", + "countries.sn": "Senegal", + "countries.sg": "Singapore", + "countries.sb": "Solomonøyene", + "countries.sl": "Sierra Leone", + "countries.sv": "El Salvador", + "countries.sm": "San Marino", + "countries.so": "Somalia", + "countries.rs": "Serbia", + "countries.ss": "Sør-Sudan", + "countries.st": "São Tomé og Príncipe", + "countries.sr": "Surinam", + "countries.sk": "Slovakia", + "countries.si": "Slovenia", + "countries.se": "Sverige", + "countries.sz": "Swaziland", + "countries.sc": "Seychellene", + "countries.sy": "Syria", + "countries.td": "Tsjad", + "countries.tg": "Togo", + "countries.th": "Thailand", + "countries.tj": "Tajikistan", + "countries.tm": "Turkmenistan", + "countries.tl": "Øst-Timor", + "countries.to": "Tonga", + "countries.tt": "Trinidad og Tobago", + "countries.tn": "Tunisia", + "countries.tr": "Tyrkia", + "countries.tv": "Tuvalu", + "countries.tz": "Tanzania", + "countries.ug": "Uganda", + "countries.ua": "Ukraina", + "countries.uy": "Uruguay", + "countries.us": "Amerikas forente stater", + "countries.uz": "Usbekistan", + "countries.va": "Vatikanstaten", + "countries.vc": "Saint Vincent og Grenadinene", + "countries.ve": "Venezuela", + "countries.vn": "Vietnam", + "countries.vu": "Vanuatu", + "countries.ws": "Samoa", + "countries.ye": "Jemen", + "countries.za": "Sør-Africa", + "countries.zm": "Zambia", + "countries.zw": "Zimbabwe", + "continents.af": "Afrika", + "continents.an": "Antarktis", + "continents.as": "Asia", + "continents.eu": "Europa", + "continents.na": "Nord-Amerika", + "continents.oc": "Oseania", + "continents.sa": "Sør-Amerika" +} \ No newline at end of file diff --git a/app/config/locale/translations/ne.json b/app/config/locale/translations/ne.json index 04a91536eb..77de4c1541 100644 --- a/app/config/locale/translations/ne.json +++ b/app/config/locale/translations/ne.json @@ -1,26 +1,32 @@ { - "settings.inspire": "\"बुद्धिमान हुनु को कला के लाई बेवास्ता गर्न जान्ने को कला हो।\"", + "settings.inspire": "\"के लाई बेवास्ता गर्ने भन्ने जान्नुनै बुद्धिमान हुनुको कला हो ।\"", "settings.locale": "ne", "settings.direction": "ltr", - "emails.sender": "%s टीम", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.sender": "%s समूह", + "emails.verification.subject": "खाता प्रमाणिकरण", + "emails.verification.hello": "नमस्ते {{name}}", + "emails.verification.body": "इमेल ठेगाना प्रमाणित गर्नको लागी यो लिंकमा जानुहोस।", + "emails.verification.footer": "यदि तपाइँले आफ्नो खाता प्रमाणित गर्न सोध्नु भएको छैन भने तपाइँले यो सन्देश लाई बेवास्ता गर्न सक्नुहुन्छ।", + "emails.verification.thanks": "धन्यवाद", + "emails.verification.signature": "{{project}} समूह", + "emails.magicSession.subject": "लगइन", + "emails.magicSession.hello": "नमस्ते,", + "emails.magicSession.body": "लगइन गर्नको लागी यो लिंकमा जानुहोस।", + "emails.magicSession.footer": "यदि तपाइँले यो इमेल प्रयोग गरेर लगइन गर्न सोध्नु भएको छैन भने तपाइँले यो सन्देश लाई बेवास्ता गर्न सक्नुहुन्छ।", + "emails.magicSession.thanks": "धन्यवाद", + "emails.magicSession.signature": "{{project}} समूह", + "emails.recovery.subject": "पासवर्ड रिसेट", + "emails.recovery.hello": "नमस्ते {{name}}", + "emails.recovery.body": "{{project}}को पासवर्ड रिसेट गर्नको लागी यो लिंकमा जानुहोस।", + "emails.recovery.footer": "यदि तपाइँले आफ्नो पासवर्ड रिसेट गर्न सोध्नु भएको छैन भने तपाइँले यो सन्देश लाई बेवास्ता गर्न सक्नुहुन्छ।", + "emails.recovery.thanks": "धन्यवाद", + "emails.recovery.signature": "{{project}} समूह", + "emails.invitation.subject": "%s समूहको लागि %s मा निमन्त्रणा", + "emails.invitation.hello": "नमस्ते", + "emails.invitation.body": "{{owner}}ले तपाइँलाई {{project}}मा {{team}}को सदस्य बन्न आमन्त्रित गर्न चाहनु भएको छ। त्येसैले तपाइँलाई यो सन्देश पठाइएको हो।", + "emails.invitation.footer": "यदि तपाइँ इच्छुक हुनुहुन्न भने, तपाइँले यो सन्देशलाई बेवास्ता गर्न सक्नुहुन्छ।", + "emails.invitation.thanks": "धन्यवाद", + "emails.invitation.signature": "{{project}} समूह", "locale.country.unknown": "अज्ञात", "countries.af": "अफगानिस्तान", "countries.ao": "अंगोला", diff --git a/app/config/locale/translations/nl.json b/app/config/locale/translations/nl.json index 45103694d7..c41d3987bc 100644 --- a/app/config/locale/translations/nl.json +++ b/app/config/locale/translations/nl.json @@ -3,24 +3,30 @@ "settings.locale": "nl", "settings.direction": "ltr", "emails.sender": "%s Team", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Account Verificatie", + "emails.verification.hello": "Hoi {{name}}", + "emails.verification.body": "Volg deze link om uw e-mail te verifieren", + "emails.verification.footer": "Als u geen aanvraag voor verificatie heeft gemaakt, kan u deze mail negeren", + "emails.verification.thanks": "Bedankt", + "emails.verification.signature": "{{project}} team", + "emails.magicSession.subject": "Login", + "emails.magicSession.hello": "Hoi,", + "emails.magicSession.body": "Volg deze link om in te loggen", + "emails.magicSession.footer": "Als u geen aanvraag heeft gemaakt om met deze mail in te loggen, kan u deze mail negeren", + "emails.magicSession.thanks": "Bedankt", + "emails.magicSession.signature": "{{project}} team", + "emails.recovery.subject": "Wachtwoord Herinstellen", + "emails.recovery.hello": "Hallo {{name}}", + "emails.recovery.body": "Volg deze link om het wachtwoord van uw project {{project}} te wijzigen", + "emails.recovery.footer": "Als u geen aanvraag heeft gemaakt om uw wachtwoord te wijzigen, kan u deze mail negeren", + "emails.recovery.thanks": "Bedankt", + "emails.recovery.signature": "{{project}} team", + "emails.invitation.subject": "Uitnodiging van %s Team uit %s", + "emails.invitation.hello": "Hallo,", + "emails.invitation.body": "U ontvangt deze mail want u was uitgenodig door {{owner}} om lid van het {{team}} team te worden in {{project}} ", + "emails.invitation.footer": "Als u niet geintereseerd bent, kan u deze mail negeren.", + "emails.invitation.thanks": "Bedankt", + "emails.invitation.signature": "{{project}} team", "locale.country.unknown": "Onbekend", "countries.af": "Afghanistan", "countries.ao": "Angola", @@ -223,4 +229,4 @@ "continents.na": "Noord Amerika", "continents.oc": "Oceanië", "continents.sa": "Zuid Amerika" -} \ No newline at end of file +} diff --git a/app/config/locale/translations/nn.json b/app/config/locale/translations/nn.json new file mode 100644 index 0000000000..b87f14d8d1 --- /dev/null +++ b/app/config/locale/translations/nn.json @@ -0,0 +1,232 @@ +{ + "settings.inspire": "\"Kunsten å væra klok er kunsten å vita kva man skal oversjå.\"", + "settings.locale": "nn", + "settings.direction": "ltr", + "emails.sender": "%s Team", + "emails.verification.subject": "Kontostadfesting", + "emails.verification.hello": "Hallo {{name}}", + "emails.verification.body": "Følg denne lenkja for å bekrefta din e-postadresse.", + "emails.verification.footer": "Om du ikkje bad om å bekrefta e-postadressa, kan du ignorera denne meldinga.", + "emails.verification.thanks": "Takk", + "emails.verification.signature": "{{project}} team", + "emails.magicSession.subject": "Pålogging", + "emails.magicSession.hello": "Hei,", + "emails.magicSession.body": "Følg denne lenkja for å logge på.", + "emails.magicSession.footer": "Om du ikkje ba om å logge på med denne e-postadressa, kan du ignorera denne meldinga.", + "emails.magicSession.thanks": "Takk", + "emails.magicSession.signature": "{{project}} team", + "emails.recovery.subject": "Nullstilla passord", + "emails.recovery.hello": "Hallo {{name}}", + "emails.recovery.body": "Følg denne lenkja for å nullstilla ditt {{project}} passord.", + "emails.recovery.footer": "Om du ikkje ba om å nullstilla passordet ditt, kan du ignorera denne meldinga.", + "emails.recovery.thanks": "Takk", + "emails.recovery.signature": "{{project}} team", + "emails.invitation.subject": "Innbyding til %s Team ved %s", + "emails.invitation.hello": "Hallo", + "emails.invitation.body": "Denne meldinga ble sendt til deg fordi {{owner}} ynskja å invitera deg til å bli medlem av {{team}} team i {{project}}.", + "emails.invitation.footer": "Om du ikkje er interessert, kan du ignorera denne meldinga.", + "emails.invitation.thanks": "Takk", + "emails.invitation.signature": "{{project}} team", + "locale.country.unknown": "Ukjend", + "countries.af": "Afghanistan", + "countries.ao": "Angola", + "countries.al": "Albania", + "countries.ad": "Andorra", + "countries.ae": "Dei sameinte arabiske emirata", + "countries.ar": "Argentina", + "countries.am": "Armenia", + "countries.ag": "Antigua og Barbuda", + "countries.au": "Australia", + "countries.at": "Austerrike", + "countries.az": "Aserbajdsjan", + "countries.bi": "Burundi", + "countries.be": "Belgia", + "countries.bj": "Benin", + "countries.bf": "Burkina Faso", + "countries.bd": "Bangladesh", + "countries.bg": "Bulgaria", + "countries.bh": "Bahrain", + "countries.bs": "Bahamas", + "countries.ba": "Bosnia-Hercegovina", + "countries.by": "Kviterussland", + "countries.bz": "Belize", + "countries.bo": "Bolivia", + "countries.br": "Brasil", + "countries.bb": "Barbados", + "countries.bn": "Brunei Darussalam", + "countries.bt": "Bhutan", + "countries.bw": "Botswana", + "countries.cf": "Den sentralafrikanske republikken", + "countries.ca": "Canada", + "countries.ch": "Sveits", + "countries.cl": "Chile", + "countries.cn": "Kina", + "countries.ci": "Elfenbeinskysten", + "countries.cm": "Kamerun", + "countries.cd": "Den demokratiske republikken Kongo", + "countries.cg": "Republikken Kongo", + "countries.co": "Colombia", + "countries.km": "Komorane", + "countries.cv": "Kapp Verde", + "countries.cr": "Costa Rica", + "countries.cu": "Cuba", + "countries.cy": "Kypros", + "countries.cz": "Tjekkia", + "countries.de": "Tyskland", + "countries.dj": "Djibouti", + "countries.dm": "Dominica", + "countries.dk": "Danmark", + "countries.do": "Den dominikanske republikk", + "countries.dz": "Algerie", + "countries.ec": "Ecuador", + "countries.eg": "Egypt", + "countries.er": "Eritrea", + "countries.es": "Spania", + "countries.ee": "Estland", + "countries.et": "Etiopia", + "countries.fi": "Finland", + "countries.fj": "Fiji", + "countries.fr": "Frankrike", + "countries.fm": "Mikronesia", + "countries.ga": "Gabon", + "countries.gb": "Storbritannia", + "countries.ge": "Georgia", + "countries.gh": "Ghana", + "countries.gn": "Guinea", + "countries.gm": "Gambia", + "countries.gw": "Guinea-Bissau", + "countries.gq": "Ekvatorial-Guinea", + "countries.gr": "Hellas", + "countries.gd": "Grenada", + "countries.gt": "Guatemala", + "countries.gy": "Guyana", + "countries.hn": "Honduras", + "countries.hr": "Kroatia", + "countries.ht": "Haiti", + "countries.hu": "Ungarn", + "countries.id": "Indonesia", + "countries.in": "India", + "countries.ie": "Irland", + "countries.ir": "Iran", + "countries.iq": "Irak", + "countries.is": "Island", + "countries.il": "Israel", + "countries.it": "Italia", + "countries.jm": "Jamaica", + "countries.jo": "Jordan", + "countries.jp": "Japan", + "countries.kz": "Kasakhstan", + "countries.ke": "Kenya", + "countries.kg": "Kirgisistan", + "countries.kh": "Kambodsja", + "countries.ki": "Kiribati", + "countries.kn": "Saint Kitts og Nevis", + "countries.kr": "Sør-Korea", + "countries.kw": "Kuwait", + "countries.la": "Laos", + "countries.lb": "Libanon", + "countries.lr": "Liberia", + "countries.ly": "Libya", + "countries.lc": "Saint Lucia", + "countries.li": "Liechtenstein", + "countries.lk": "Sri Lanka", + "countries.ls": "Lesotho", + "countries.lt": "Litauen", + "countries.lu": "Luxembourg", + "countries.lv": "Latvia", + "countries.ma": "Marokko", + "countries.mc": "Monaco", + "countries.md": "Moldova", + "countries.mg": "Madagaskar", + "countries.mv": "Maldivene", + "countries.mx": "Mexico", + "countries.mh": "Marshalløyane", + "countries.mk": "Nord-Makedonia", + "countries.ml": "Mali", + "countries.mt": "Malta", + "countries.mm": "Myanmar", + "countries.me": "Montenegro", + "countries.mn": "Mongolia", + "countries.mz": "Mozambik", + "countries.mr": "Mauritania", + "countries.mu": "Mauritius", + "countries.mw": "Malawi", + "countries.my": "Malaysia", + "countries.na": "Namibia", + "countries.ne": "Niger", + "countries.ng": "Nigeria", + "countries.ni": "Nicaragua", + "countries.nl": "Nederland", + "countries.no": "Norge", + "countries.np": "Nepal", + "countries.nr": "Nauru", + "countries.nz": "New Zealand", + "countries.om": "Oman", + "countries.pk": "Pakistan", + "countries.pa": "Panama", + "countries.pe": "Peru", + "countries.ph": "Filippinene", + "countries.pw": "Palau", + "countries.pg": "Papua Ny-Guinea", + "countries.pl": "Polen", + "countries.kp": "Nord-Korea", + "countries.pt": "Portugal", + "countries.py": "Paraguay", + "countries.qa": "Qatar", + "countries.ro": "Romania", + "countries.ru": "Russland", + "countries.rw": "Rwanda", + "countries.sa": "Saudi-Arabia", + "countries.sd": "Sudan", + "countries.sn": "Senegal", + "countries.sg": "Singapore", + "countries.sb": "Solomonøyene", + "countries.sl": "Sierra Leone", + "countries.sv": "El Salvador", + "countries.sm": "San Marino", + "countries.so": "Somalia", + "countries.rs": "Serbia", + "countries.ss": "Sør-Sudan", + "countries.st": "São Tomé og Príncipe", + "countries.sr": "Surinam", + "countries.sk": "Slovakia", + "countries.si": "Slovenia", + "countries.se": "Sverige", + "countries.sz": "Swaziland", + "countries.sc": "Seychellene", + "countries.sy": "Syria", + "countries.td": "Tsjad", + "countries.tg": "Togo", + "countries.th": "Thailand", + "countries.tj": "Tajikistan", + "countries.tm": "Turkmenistan", + "countries.tl": "Aust-Timor", + "countries.to": "Tonga", + "countries.tt": "Trinidad og Tobago", + "countries.tn": "Tunisia", + "countries.tr": "Tyrkia", + "countries.tv": "Tuvalu", + "countries.tz": "Tanzania", + "countries.ug": "Uganda", + "countries.ua": "Ukraina", + "countries.uy": "Uruguay", + "countries.us": "Amerikas forente stater", + "countries.uz": "Usbekistan", + "countries.va": "Vatikanstaten", + "countries.vc": "Saint Vincent og Grenadinene", + "countries.ve": "Venezuela", + "countries.vn": "Vietnam", + "countries.vu": "Vanuatu", + "countries.ws": "Samoa", + "countries.ye": "Jemen", + "countries.za": "Sør-Africa", + "countries.zm": "Zambia", + "countries.zw": "Zimbabwe", + "continents.af": "Afrika", + "continents.an": "Antarktis", + "continents.as": "Asia", + "continents.eu": "Europa", + "continents.na": "Nord-Amerika", + "continents.oc": "Oseania", + "continents.sa": "Sør-Amerika" +} diff --git a/app/config/locale/translations/no.json b/app/config/locale/translations/no.json index c46fe0da53..4f83dc677a 100644 --- a/app/config/locale/translations/no.json +++ b/app/config/locale/translations/no.json @@ -3,24 +3,30 @@ "settings.locale": "no", "settings.direction": "ltr", "emails.sender": "%s Team", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Kontobekreftelse", + "emails.verification.hello": "Hallo {{name}}", + "emails.verification.body": "Følg denne lenken for å bekrefte din e-postadresse.", + "emails.verification.footer": "Dersom du ikke ba om å bekrefte e-postadressen, kan du se bort fra denne meldingen.", + "emails.verification.thanks": "Takk", + "emails.verification.signature": "{{project}} team", + "emails.magicSession.subject": "Pålogging", + "emails.magicSession.hello": "Hei,", + "emails.magicSession.body": "Følg denne lenken for å logge på.", + "emails.magicSession.footer": "Dersom du ikke ba om å logge på med denne e-postadressen, kan du se bort fra denne meldingen.", + "emails.magicSession.thanks": "Takk", + "emails.magicSession.signature": "{{project}} team", + "emails.recovery.subject": "Nullstille passord", + "emails.recovery.hello": "Hallo {{name}}", + "emails.recovery.body": "Følg denne lenken for å nullstille ditt {{project}} passord.", + "emails.recovery.footer": "Dersom du ikke ba om å nullstille passordet ditt, kan du se bort fra denne meldingen.", + "emails.recovery.thanks": "Takk", + "emails.recovery.signature": "{{project}} team", + "emails.invitation.subject": "Invitasjon til %s Team ved %s", + "emails.invitation.hello": "Hallo", + "emails.invitation.body": "Denne meldingen ble sendt til deg fordi {{owner}} ønsket å invitere deg til å bli medlem av {{team}} team i {{project}}.", + "emails.invitation.footer": "Dersom du ikke er interessert, kan du se bort fra denne meldingen.", + "emails.invitation.thanks": "Takk", + "emails.invitation.signature": "{{project}} team", "locale.country.unknown": "Ukjent", "countries.af": "Afghanistan", "countries.ao": "Angola", @@ -50,7 +56,7 @@ "countries.bn": "Brunei Darussalam", "countries.bt": "Bhutan", "countries.bw": "Botswana", - "countries.cf": "Den sentralafrikanske republikk", + "countries.cf": "Den sentralafrikanske republikken", "countries.ca": "Canada", "countries.ch": "Sveits", "countries.cl": "Chile", @@ -223,4 +229,4 @@ "continents.na": "Nord-Amerika", "continents.oc": "Oseania", "continents.sa": "Sør-Amerika" -} \ No newline at end of file +} diff --git a/app/config/locale/translations/or.json b/app/config/locale/translations/or.json index 79fd82d84d..fdf5c7ab34 100644 --- a/app/config/locale/translations/or.json +++ b/app/config/locale/translations/or.json @@ -1,28 +1,34 @@ { - "settings.inspire": "\"ଜ୍ଞାନୀ ହେବାର କଳା ହେଉଛି କ’ଣ ଅଣଦେଖା କରାଯିବ ଜାଣିବାର କଳା |\"", + "settings.inspire": "\"ବୁଦ୍ଧିମାନ ହେବାର କଳା ହେଉଛି କ’ଣ ଅଣଦେଖା କରାଯିବ ଜାଣିବାର କଳା |\"", "settings.locale": "or", "settings.direction": "ltr", - "emails.sender": "%s ଟିମ", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.sender": "%s ଦଳ", + "emails.verification.subject": "ଖାତା ଯାଞ୍ଚ", + "emails.verification.hello": "ନମସ୍କାର {{name}}", + "emails.verification.body": "ଆପଣଙ୍କର ଇମେଲ୍ ଠିକଣା ଯାଞ୍ଚ କରିବାକୁ ଏହି ଲିଙ୍କ୍ ଅନୁସରଣ କରନ୍ତୁ |", + "emails.verification.footer": "ଯଦି ଆପଣ ଏହି ଠିକଣା ଯାଞ୍ଚ କରିବାକୁ କହି ନାହାଁନ୍ତି, ତେବେ ଆପଣ ଏହି ସନ୍ଦେଶକୁ ଉପେକ୍ଷା କରିପାରିବେ |", + "emails.verification.thanks": "ଧନ୍ୟବାଦ", + "emails.verification.signature": "{{project}} ଦଳ", + "emails.magicSession.subject": "ଲଗଇନ୍ କରନ୍ତୁ", + "emails.magicSession.hello": "ନମସ୍କାର,", + "emails.magicSession.body": "ଲଗଇନ୍ କରିବାକୁ ଏହି ଲିଙ୍କ୍ ଅନୁସରଣ କରନ୍ତୁ |", + "emails.magicSession.footer": "ଯଦି ଆପଣ ଏହି ଇମେଲ୍ ବ୍ୟବହାର କରି ଲଗଇନ୍ କରିବାକୁ କହି ନାହାଁନ୍ତି, ତେବେ ଆପଣ ଏହି ସନ୍ଦେଶକୁ ଉପେକ୍ଷା କରିପାରିବେ |", + "emails.magicSession.thanks": "ଧନ୍ୟବାଦ", + "emails.magicSession.signature": "{{project}} ଦଳ", + "emails.recovery.subject": "ପାସୱାର୍ଡ ପୁନଃ ସେଟ୍ କରନ୍ତୁ |", + "emails.recovery.hello": "ନମସ୍କାର {{name}}", + "emails.recovery.body": "ଆପଣଙ୍କର {{project}} ପାସୱାର୍ଡ ପୁନଃ ସେଟ୍ କରିବାକୁ ଏହି ଲିଙ୍କକୁ ଅନୁସରଣ କରନ୍ତୁ |", + "emails.recovery.footer": "ଯଦି ଆପଣ ଆପଣଙ୍କର ପାସୱାର୍ଡ ପୁନଃ ସେଟ୍ କରିବାକୁ କହି ନାହାଁନ୍ତି, ତେବେ ଆପଣ ଏହି ସନ୍ଦେଶକୁ ଉପେକ୍ଷା କରିପାରିବେ |", + "emails.recovery.thanks": "ଧନ୍ୟବାଦ", + "emails.recovery.signature": "{{project}} ଦଳ", + "emails.invitation.subject": "%s ରେ %s ଦଳକୁ ନିମନ୍ତ୍ରଣ |", + "emails.invitation.hello": "ନମସ୍କାର", + "emails.invitation.body": "ଏହି ମେଲ୍ ଆପଣଙ୍କୁ ପଠାଯାଇଥିଲା କାରଣ {{owner}} ଆପଣଙ୍କୁ {{project} ରେ {{team}} ଦଳର ସଦସ୍ୟ ହେବାକୁ ଆମନ୍ତ୍ରଣ କରିବାକୁ ଚାହୁଁଥିଲେ |", + "emails.invitation.footer": "ଯଦି ଆପଣ ଆଗ୍ରହୀ ନୁହଁନ୍ତି, ଆପଣ ଏହି ସନ୍ଦେଶକୁ ଅଣଦେଖା କରିପାରିବେ |", + "emails.invitation.thanks": "ଧନ୍ୟବାଦ", + "emails.invitation.signature": "{{project}} ଦଳ", "locale.country.unknown": "ଅଜ୍ଞାତ", - "countries.af": "ଅଫଘନିସ୍ତାନ", + "countries.af": "ଆଫଗାନିସ୍ତାନ", "countries.ao": "ଅଙ୍ଗୋଲା", "countries.al": "ଆଲବେନିଆ", "countries.ad": "ଆଣ୍ଡୋରା", diff --git a/app/config/locale/translations/pa.json b/app/config/locale/translations/pa.json index bdb3cd0117..dc21fddc37 100644 --- a/app/config/locale/translations/pa.json +++ b/app/config/locale/translations/pa.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/pl.json b/app/config/locale/translations/pl.json index 69e7bb71aa..86c3f73457 100644 --- a/app/config/locale/translations/pl.json +++ b/app/config/locale/translations/pl.json @@ -1,226 +1,232 @@ { - "settings.inspire": "\"Sztuka bycia mądrym to sztuka wiedzieć, co przeoczyć.\"", - "settings.locale": "pl", - "settings.direction": "ltr", - "emails.sender": "Zespół %s", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", - "locale.country.unknown": "Nieznany", - "countries.af": "Afganistan", - "countries.ao": "Angola", - "countries.al": "Albania", - "countries.ad": "Andora", - "countries.ae": "Zjednoczone Emiraty Arabskie", - "countries.ar": "Argentyna", - "countries.am": "Armenia", - "countries.ag": "Antigua i Barbuda", - "countries.au": "Australia", - "countries.at": "Austria", - "countries.az": "Azerbejdżan", - "countries.bi": "Burundi", - "countries.be": "Belgia", - "countries.bj": "Benin", - "countries.bf": "Burkina Faso", - "countries.bd": "Bangladesz", - "countries.bg": "Bułgaria", - "countries.bh": "Bahrajn", - "countries.bs": "Bahamy", - "countries.ba": "Bośnia i Hercegowina", - "countries.by": "Białoruś", - "countries.bz": "Belize", - "countries.bo": "Boliwia", - "countries.br": "Brazylia", - "countries.bb": "Barbados", - "countries.bn": "Brunei", - "countries.bt": "Bhutan", - "countries.bw": "Botswana", - "countries.cf": "Republika Środkowoafrykańska", - "countries.ca": "Kanada", - "countries.ch": "Szwajcaria", - "countries.cl": "Chile", - "countries.cn": "Chiny", - "countries.ci": "Wybrzeże Kości Słoniowej", - "countries.cm": "Kamerun", - "countries.cd": "DR Congo", - "countries.cg": "Republika Konga", - "countries.co": "Kolumbia", - "countries.km": "Komory", - "countries.cv": "Republika Zielonego Przylądka", - "countries.cr": "Kostaryka", - "countries.cu": "Kuba", - "countries.cy": "Cypr", - "countries.cz": "Czechy", - "countries.de": "Niemcy", - "countries.dj": "Dżibuti", - "countries.dm": "Dominica", - "countries.dk": "Dania", - "countries.do": "Republika Dominikańska", - "countries.dz": "Algieria", - "countries.ec": "Ekwador", - "countries.eg": "Egipt", - "countries.er": "Erytrea", - "countries.es": "Hiszpania", - "countries.ee": "Estonia", - "countries.et": "Etiopia", - "countries.fi": "Finlandia", - "countries.fj": "Fidżi", - "countries.fr": "Francja", - "countries.fm": "Mikronezja", - "countries.ga": "Gabon", - "countries.gb": "Wielka Brytania", - "countries.ge": "Georgia", - "countries.gh": "Ghana", - "countries.gn": "Gwinea", - "countries.gm": "Gambia", - "countries.gw": "Gwinea Bissau", - "countries.gq": "Gwinea Równikowa", - "countries.gr": "Grecja", - "countries.gd": "Grenada", - "countries.gt": "Gwatemala", - "countries.gy": "Gujana", - "countries.hn": "Honduras", - "countries.hr": "Chorwacja", - "countries.ht": "Haiti", - "countries.hu": "Węgry", - "countries.id": "Indonezja", - "countries.in": "Indie", - "countries.ie": "Irlandia", - "countries.ir": "Iran", - "countries.iq": "Irak", - "countries.is": "Islandia", - "countries.il": "Israel", - "countries.it": "Włochy", - "countries.jm": "Jamajka", - "countries.jo": "Jordan", - "countries.jp": "Japonia", - "countries.kz": "Kazachstan", - "countries.ke": "Kenia", - "countries.kg": "Kirgistan", - "countries.kh": "Kambodża", - "countries.ki": "Kiribati", - "countries.kn": "Saint Kitts i Nevis", - "countries.kr": "Korea Południowa", - "countries.kw": "Kuwejt", - "countries.la": "Laos", - "countries.lb": "Liban", - "countries.lr": "Liberia", - "countries.ly": "Libia", - "countries.lc": "Saint Lucia", - "countries.li": "Liechtenstein", - "countries.lk": "Sri Lanka", - "countries.ls": "Lesotho", - "countries.lt": "Litwa", - "countries.lu": "Luksemburg", - "countries.lv": "Łotwa", - "countries.ma": "Maroko", - "countries.mc": "Monaco", - "countries.md": "Mołdawia", - "countries.mg": "Madagaskar", - "countries.mv": "Malediwy", - "countries.mx": "Meksyk", - "countries.mh": "Wyspy Marshalla", - "countries.mk": "Macedonia", - "countries.ml": "Mali", - "countries.mt": "Malta", - "countries.mm": "Birma", - "countries.me": "Czarnogóra", - "countries.mn": "Mongolia", - "countries.mz": "Mozambik", - "countries.mr": "Mauretania", - "countries.mu": "Mauritius", - "countries.mw": "Malawi", - "countries.my": "Malezja", - "countries.na": "Namibia", - "countries.ne": "Niger", - "countries.ng": "Nigeria", - "countries.ni": "Nikaragua", - "countries.nl": "Holandia", - "countries.no": "Norwegia", - "countries.np": "Nepal", - "countries.nr": "Nauru", - "countries.nz": "Nowa Zelandia", - "countries.om": "Oman", - "countries.pk": "Pakistan", - "countries.pa": "Panama", - "countries.pe": "Peru", - "countries.ph": "Filipiny", - "countries.pw": "Palau", - "countries.pg": "Papua Nowa Gwinea", - "countries.pl": "Polska", - "countries.kp": "Korea Północna", - "countries.pt": "Portugalia", - "countries.py": "Paragwaj", - "countries.qa": "Katar", - "countries.ro": "Rumunia", - "countries.ru": "Rosja", - "countries.rw": "Rwanda", - "countries.sa": "Arabia Saudyjska", - "countries.sd": "Sudan", - "countries.sn": "Senegal", - "countries.sg": "Singapur", - "countries.sb": "Wyspy Salomona", - "countries.sl": "Sierra Leone", - "countries.sv": "Salwador", - "countries.sm": "San Marino", - "countries.so": "Somalia", - "countries.rs": "Serbia", - "countries.ss": "Sudan Południowy", - "countries.st": "Wyspy Świętego Tomasza i Książęca", - "countries.sr": "Surinam", - "countries.sk": "Słowacja", - "countries.si": "Słowenia", - "countries.se": "Szwecja", - "countries.sz": "Suazi", - "countries.sc": "Seszele", - "countries.sy": "Syria", - "countries.td": "Czad", - "countries.tg": "Togo", - "countries.th": "Tajlandia", - "countries.tj": "Tadżykistan", - "countries.tm": "Turkmenistan", - "countries.tl": "Timor Wschodni", - "countries.to": "Tonga", - "countries.tt": "Trynidad i Tobago", - "countries.tn": "Tunezja", - "countries.tr": "Turcja", - "countries.tv": "Tuvalu", - "countries.tz": "Tanzania", - "countries.ug": "Uganda", - "countries.ua": "Ukraina", - "countries.uy": "Urugwaj", - "countries.us": "Stany Zjednoczone", - "countries.uz": "Uzbekistan", - "countries.va": "Watykan", - "countries.vc": "Saint Vincent i Grenadyny", - "countries.ve": "Wenezuela", - "countries.vn": "Wietnam", - "countries.vu": "Vanuatu", - "countries.ws": "Samoa", - "countries.ye": "Jemen", - "countries.za": "Republika Południowej Afryki", - "countries.zm": "Zambia", - "countries.zw": "Zimbabwe", - "continents.af": "Afryka", - "continents.an": "Antarktyda", - "continents.as": "Azja", - "continents.eu": "Europa", - "continents.na": "Ameryka Północna", - "continents.oc": "Oceania", - "continents.sa": "Ameryka południowa" -} \ No newline at end of file + "settings.inspire": "\"Sztuka bycia mądrym to sztuka wiedzieć, co przeoczyć.\"", + "settings.locale": "pl", + "settings.direction": "ltr", + "emails.sender": "Zespół %s", + "emails.verification.subject": "Weryfikacja konta", + "emails.verification.hello": "Cześć {{name}}", + "emails.verification.body": "Przejdź do tego linku, aby zweryfikować swój adres e-mail.", + "emails.verification.footer": "Jeśli to nie Ty prosiłeś o zweryfikowanie tego adresu, zignoruj tę wiadomość.", + "emails.verification.thanks": "Dziękujemy", + "emails.verification.signature": "Zespół {{project}}", + "emails.magicSession.subject": "Logowanie", + "emails.magicSession.hello": "Cześć,", + "emails.magicSession.body": "Kliknij w ten link, aby zalogować się.", + "emails.magicSession.footer": "Jeśli to nie Ty prosiłeś o logowanie przy użyciu tego adresu e-mail, zignoruj tę wiadomość.", + "emails.magicSession.thanks": "Dziękujemy", + "emails.magicSession.signature": "Zespół {{project}}", + "emails.recovery.subject": "Resetowanie hasła", + "emails.recovery.hello": "Cześć {{name}}", + "emails.recovery.body": "Przejdź do tego linku, aby zresetować hasło dla {{project}}.", + "emails.recovery.footer": "Jeśli to nie Ty prosiłeś o zresetowanie swojego hasła, zignoruj tę wiadomość.", + "emails.recovery.thanks": "Dziękujemy", + "emails.recovery.signature": "Zespół {{project}}", + "emails.invitation.subject": "Zaproszenie do zespołu %s w %s", + "emails.invitation.hello": "Cześć", + "emails.invitation.body": "Otrzymujesz tę wiadomość, ponieważ {{owner}} zaprasza Cię do grona członków zespołu {{team}} w projekcie {{project}}.", + "emails.invitation.footer": "Jeśli nie jesteś zainteresowany, zignoruj tę wiadomość.", + "emails.invitation.thanks": "Dziękujemy", + "emails.invitation.signature": "Zespół {{project}}", + "locale.country.unknown": "Nieznany", + "countries.af": "Afganistan", + "countries.ao": "Angola", + "countries.al": "Albania", + "countries.ad": "Andora", + "countries.ae": "Zjednoczone Emiraty Arabskie", + "countries.ar": "Argentyna", + "countries.am": "Armenia", + "countries.ag": "Antigua i Barbuda", + "countries.au": "Australia", + "countries.at": "Austria", + "countries.az": "Azerbejdżan", + "countries.bi": "Burundi", + "countries.be": "Belgia", + "countries.bj": "Benin", + "countries.bf": "Burkina Faso", + "countries.bd": "Bangladesz", + "countries.bg": "Bułgaria", + "countries.bh": "Bahrajn", + "countries.bs": "Bahamy", + "countries.ba": "Bośnia i Hercegowina", + "countries.by": "Białoruś", + "countries.bz": "Belize", + "countries.bo": "Boliwia", + "countries.br": "Brazylia", + "countries.bb": "Barbados", + "countries.bn": "Brunei", + "countries.bt": "Bhutan", + "countries.bw": "Botswana", + "countries.cf": "Republika Środkowoafrykańska", + "countries.ca": "Kanada", + "countries.ch": "Szwajcaria", + "countries.cl": "Chile", + "countries.cn": "Chiny", + "countries.ci": "Wybrzeże Kości Słoniowej", + "countries.cm": "Kamerun", + "countries.cd": "DR Congo", + "countries.cg": "Republika Konga", + "countries.co": "Kolumbia", + "countries.km": "Komory", + "countries.cv": "Republika Zielonego Przylądka", + "countries.cr": "Kostaryka", + "countries.cu": "Kuba", + "countries.cy": "Cypr", + "countries.cz": "Czechy", + "countries.de": "Niemcy", + "countries.dj": "Dżibuti", + "countries.dm": "Dominica", + "countries.dk": "Dania", + "countries.do": "Republika Dominikańska", + "countries.dz": "Algieria", + "countries.ec": "Ekwador", + "countries.eg": "Egipt", + "countries.er": "Erytrea", + "countries.es": "Hiszpania", + "countries.ee": "Estonia", + "countries.et": "Etiopia", + "countries.fi": "Finlandia", + "countries.fj": "Fidżi", + "countries.fr": "Francja", + "countries.fm": "Mikronezja", + "countries.ga": "Gabon", + "countries.gb": "Wielka Brytania", + "countries.ge": "Georgia", + "countries.gh": "Ghana", + "countries.gn": "Gwinea", + "countries.gm": "Gambia", + "countries.gw": "Gwinea Bissau", + "countries.gq": "Gwinea Równikowa", + "countries.gr": "Grecja", + "countries.gd": "Grenada", + "countries.gt": "Gwatemala", + "countries.gy": "Gujana", + "countries.hn": "Honduras", + "countries.hr": "Chorwacja", + "countries.ht": "Haiti", + "countries.hu": "Węgry", + "countries.id": "Indonezja", + "countries.in": "Indie", + "countries.ie": "Irlandia", + "countries.ir": "Iran", + "countries.iq": "Irak", + "countries.is": "Islandia", + "countries.il": "Israel", + "countries.it": "Włochy", + "countries.jm": "Jamajka", + "countries.jo": "Jordan", + "countries.jp": "Japonia", + "countries.kz": "Kazachstan", + "countries.ke": "Kenia", + "countries.kg": "Kirgistan", + "countries.kh": "Kambodża", + "countries.ki": "Kiribati", + "countries.kn": "Saint Kitts i Nevis", + "countries.kr": "Korea Południowa", + "countries.kw": "Kuwejt", + "countries.la": "Laos", + "countries.lb": "Liban", + "countries.lr": "Liberia", + "countries.ly": "Libia", + "countries.lc": "Saint Lucia", + "countries.li": "Liechtenstein", + "countries.lk": "Sri Lanka", + "countries.ls": "Lesotho", + "countries.lt": "Litwa", + "countries.lu": "Luksemburg", + "countries.lv": "Łotwa", + "countries.ma": "Maroko", + "countries.mc": "Monako", + "countries.md": "Mołdawia", + "countries.mg": "Madagaskar", + "countries.mv": "Malediwy", + "countries.mx": "Meksyk", + "countries.mh": "Wyspy Marshalla", + "countries.mk": "Macedonia", + "countries.ml": "Mali", + "countries.mt": "Malta", + "countries.mm": "Birma", + "countries.me": "Czarnogóra", + "countries.mn": "Mongolia", + "countries.mz": "Mozambik", + "countries.mr": "Mauretania", + "countries.mu": "Mauritius", + "countries.mw": "Malawi", + "countries.my": "Malezja", + "countries.na": "Namibia", + "countries.ne": "Niger", + "countries.ng": "Nigeria", + "countries.ni": "Nikaragua", + "countries.nl": "Holandia", + "countries.no": "Norwegia", + "countries.np": "Nepal", + "countries.nr": "Nauru", + "countries.nz": "Nowa Zelandia", + "countries.om": "Oman", + "countries.pk": "Pakistan", + "countries.pa": "Panama", + "countries.pe": "Peru", + "countries.ph": "Filipiny", + "countries.pw": "Palau", + "countries.pg": "Papua Nowa Gwinea", + "countries.pl": "Polska", + "countries.kp": "Korea Północna", + "countries.pt": "Portugalia", + "countries.py": "Paragwaj", + "countries.qa": "Katar", + "countries.ro": "Rumunia", + "countries.ru": "Rosja", + "countries.rw": "Rwanda", + "countries.sa": "Arabia Saudyjska", + "countries.sd": "Sudan", + "countries.sn": "Senegal", + "countries.sg": "Singapur", + "countries.sb": "Wyspy Salomona", + "countries.sl": "Sierra Leone", + "countries.sv": "Salwador", + "countries.sm": "San Marino", + "countries.so": "Somalia", + "countries.rs": "Serbia", + "countries.ss": "Sudan Południowy", + "countries.st": "Wyspy Świętego Tomasza i Książęca", + "countries.sr": "Surinam", + "countries.sk": "Słowacja", + "countries.si": "Słowenia", + "countries.se": "Szwecja", + "countries.sz": "Suazi", + "countries.sc": "Seszele", + "countries.sy": "Syria", + "countries.td": "Czad", + "countries.tg": "Togo", + "countries.th": "Tajlandia", + "countries.tj": "Tadżykistan", + "countries.tm": "Turkmenistan", + "countries.tl": "Timor Wschodni", + "countries.to": "Tonga", + "countries.tt": "Trynidad i Tobago", + "countries.tn": "Tunezja", + "countries.tr": "Turcja", + "countries.tv": "Tuvalu", + "countries.tz": "Tanzania", + "countries.ug": "Uganda", + "countries.ua": "Ukraina", + "countries.uy": "Urugwaj", + "countries.us": "Stany Zjednoczone", + "countries.uz": "Uzbekistan", + "countries.va": "Watykan", + "countries.vc": "Saint Vincent i Grenadyny", + "countries.ve": "Wenezuela", + "countries.vn": "Wietnam", + "countries.vu": "Vanuatu", + "countries.ws": "Samoa", + "countries.ye": "Jemen", + "countries.za": "Republika Południowej Afryki", + "countries.zm": "Zambia", + "countries.zw": "Zimbabwe", + "continents.af": "Afryka", + "continents.an": "Antarktyda", + "continents.as": "Azja", + "continents.eu": "Europa", + "continents.na": "Ameryka Północna", + "continents.oc": "Oceania", + "continents.sa": "Ameryka południowa" +} diff --git a/app/config/locale/translations/pt-br.json b/app/config/locale/translations/pt-br.json index a6df913b62..67590d3fe0 100644 --- a/app/config/locale/translations/pt-br.json +++ b/app/config/locale/translations/pt-br.json @@ -3,24 +3,30 @@ "settings.locale": "pt-br", "settings.direction": "ltr", "emails.sender": "Time %s", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Verificação da Conta", + "emails.verification.hello": "Olá {{name}}", + "emails.verification.body": "Clique neste link para verificar o seu endereço de e-mail.", + "emails.verification.footer": "Se você não solicitou a verificação deste e-mail, ignore essa mensagem.", + "emails.verification.thanks": "Muito obrigado", + "emails.verification.signature": "Time {{project}}", + "emails.magicSession.subject": "Login", + "emails.magicSession.hello": "Olá,", + "emails.magicSession.body": "Clique neste link para entrar.", + "emails.magicSession.footer": "Se você não solicitou conectar-se com este e-mail, ignore essa mensagem.", + "emails.magicSession.thanks": "Muito obrigado", + "emails.magicSession.signature": "Time {{project}}", + "emails.recovery.subject": "Redefinição de senha", + "emails.recovery.hello": "Olá {{name}}", + "emails.recovery.body": "Clique neste link para redefinir sua senha do {{project}}.", + "emails.recovery.footer": "Se você não solicitou a redefinição da sua senha, você pode ignorar essa mensagem.", + "emails.recovery.thanks": "Muito obrigado", + "emails.recovery.signature": "Time {{project}}", + "emails.invitation.subject": "Convite para o Time %s em %s", + "emails.invitation.hello": "Olá", + "emails.invitation.body": "Este e-mail foi enviado porque {{owner}} deseja convidar você a se tornar membro do Time {{team}} em {{project}}.", + "emails.invitation.footer": "Caso não tenha interesse, ignore essa mensagem.", + "emails.invitation.thanks": "Muito obrigado", + "emails.invitation.signature": "Time {{project}}", "locale.country.unknown": "Desconhecido", "countries.af": "Afeganistão", "countries.ao": "Angola", diff --git a/app/config/locale/translations/pt-pt.json b/app/config/locale/translations/pt-pt.json index 923f5b2ec2..e257b47281 100644 --- a/app/config/locale/translations/pt-pt.json +++ b/app/config/locale/translations/pt-pt.json @@ -3,24 +3,30 @@ "settings.locale": "pt-pt", "settings.direction": "ltr", "emails.sender": "Equipa %s", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Verificação de contas", + "emails.verification.hello": "Hey {{name}}", + "emails.verification.body": "Siga esta ligação para verificar o seu endereço de correio electrónico.", + "emails.verification.footer": "Se não pediu para verificar este endereço, pode ignorar esta mensagem.", + "emails.verification.thanks": "Obrigado", + "emails.verification.signature": "Equipa {{project}}", + "emails.magicSession.subject": "Login", + "emails.magicSession.hello": "Olá ,", + "emails.magicSession.body": "Siga esta ligação para iniciar sessão.", + "emails.magicSession.footer": "Se não pediu para entrar usando este e-mail, pode ignorar esta mensagem.", + "emails.magicSession.thanks": "Obrigado", + "emails.magicSession.signature": "Equipa {{project}}", + "emails.recovery.subject": "Redefinição de senha", + "emails.recovery.hello": "Olá {{name}}", + "emails.recovery.body": "tilize este link para redefinir a palavra-passe do seu projecto {{project}}", + "emails.recovery.footer": "Se não pediu para redefinir a sua palavra-passe, pode ignorar esta mensagem.", + "emails.recovery.thanks": "Obrigado", + "emails.recovery.signature": "Equipa {{project}}", + "emails.invitation.subject": "Convite à equipa de %s às %s", + "emails.invitation.hello": "Olá", + "emails.invitation.body": "Este correio foi-lhe enviado porque {{owner}} queria convidá-lo a tornar-se membro da equipa {{team}} da {{project}}.", + "emails.invitation.footer": "Se não estiver interessado, pode ignorar esta mensagem.", + "emails.invitation.thanks": "Obrigado", + "emails.invitation.signature": "Equipa {{project}}", "locale.country.unknown": "Desconhecido", "countries.af": "Afeganistão", "countries.ao": "Angola", @@ -223,4 +229,4 @@ "continents.na": "América do Norte", "continents.oc": "Oceânia", "continents.sa": "América do Sul" -} \ No newline at end of file +} diff --git a/app/config/locale/translations/ro.json b/app/config/locale/translations/ro.json index ac221de0b6..9976359179 100644 --- a/app/config/locale/translations/ro.json +++ b/app/config/locale/translations/ro.json @@ -3,24 +3,30 @@ "settings.locale": "ro", "settings.direction": "ltr", "emails.sender": "%s Echipa", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Verificare cont", + "emails.verification.hello": "Bună ziua, {{name}}", + "emails.verification.body": "Click pe acest link pentru a valida adresa de email.", + "emails.verification.footer": "Dacă nu ai cerut validarea adresei de email, poți ignora acest mesaj.", + "emails.verification.thanks": "Mulțumim", + "emails.verification.signature": "Echipa {{project}}", + "emails.magicSession.subject": "Login", + "emails.magicSession.hello": "Bună ziua,", + "emails.magicSession.body": "Urmează acest link pentru logare.", + "emails.magicSession.footer": "Dacă nu ai incercat să te loghezi folosing această adresa de email, poți ignora acest mesaj.", + "emails.magicSession.thanks": "Mulțumim", + "emails.magicSession.signature": "Echipa {{project}}", + "emails.recovery.subject": "Resetare parolă", + "emails.recovery.hello": "Bună ziua, {{name}}", + "emails.recovery.body": "Click aici pentru a reseta parola pentru {{project}}", + "emails.recovery.footer": "Dacă nu ai cerut să îți schimbi parola, ignoră acest mesaj.", + "emails.recovery.thanks": "Mulțumim", + "emails.recovery.signature": "Echipa {{project}}", + "emails.invitation.subject": "Invitatie catre %s Echipa la %s", + "emails.invitation.hello": "Bună ziua", + "emails.invitation.body": "Acest email a fost trimis pentru că {{owner}} a vrut ca tu să devii membru al echipei {{team}} la {{project}}.", + "emails.invitation.footer": "Dacă nu esti interesat, poți ignora acest email.", + "emails.invitation.thanks": "Mulțumim", + "emails.invitation.signature": "Echipa {{project}}", "locale.country.unknown": "Necunoscut", "countries.af": "Afghanistan", "countries.ao": "Angola", diff --git a/app/config/locale/translations/ru.json b/app/config/locale/translations/ru.json index 2b902a2591..9221996715 100644 --- a/app/config/locale/translations/ru.json +++ b/app/config/locale/translations/ru.json @@ -3,24 +3,30 @@ "settings.locale": "ru", "settings.direction": "ltr", "emails.sender": "Команда %s", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Верификация аккаунта", + "emails.verification.hello": "Здравствуйте, {{name}}", + "emails.verification.body": "Перейдите по ссылке, чтобы подтвердить свой адрес электронной почты.", + "emails.verification.footer": "Если вы не запрашивали подтверждение этого адреса, проигнорируйте это сообщение.", + "emails.verification.thanks": "Спасибо", + "emails.verification.signature": "команда {{project}}", + "emails.magicSession.subject": "Логин", + "emails.magicSession.hello": "Здравствуйте,", + "emails.magicSession.body": "Перейдите по ссылке, чтобы войти.", + "emails.magicSession.footer": "Если вы не просили войти, используя этот адрес электронной почты, проигнорируйте это сообщение.", + "emails.magicSession.thanks": "Спасибо", + "emails.magicSession.signature": "команда {{project}}", + "emails.recovery.subject": "Сброс пароля", + "emails.recovery.hello": "Здравствуйте, {{name}}", + "emails.recovery.body": "Перейдите по этой ссылке для того чтобы сбросить свой пароль для проекта {{project}}", + "emails.recovery.footer": "Если вы не запрашивали сброс пароля, проигнорируйте это сообщение.", + "emails.recovery.thanks": "Спасибо", + "emails.recovery.signature": "команда {{project}}", + "emails.invitation.subject": "Приглашение в команду %s по проекту %s", + "emails.invitation.hello": "Здравствуйте", + "emails.invitation.body": "Это письмо отправлено вам, потому что {{owner}} приглашает стать членом команды {{team}} в проекте {{project}}.", + "emails.invitation.footer": "Если вы не заинтересованы, проигнорируйте это сообщение.", + "emails.invitation.thanks": "Спасибо", + "emails.invitation.signature": "команда {{project}}", "locale.country.unknown": "Неизвестно", "countries.af": "Афганистан", "countries.ao": "Ангола", @@ -223,4 +229,4 @@ "continents.na": "Северная Америка", "continents.oc": "Океания", "continents.sa": "Южная Америка" -} \ No newline at end of file +} diff --git a/app/config/locale/translations/sa.json b/app/config/locale/translations/sa.json new file mode 100644 index 0000000000..f77e5f5d4d --- /dev/null +++ b/app/config/locale/translations/sa.json @@ -0,0 +1,232 @@ +{ + "settings.inspire": "\"किं हेयमित्यस्य ज्ञानमेव ज्ञानिलक्षणम्‌।\"", + "settings.locale": "sa", + "settings.direction": "ltr", + "emails.sender": "%s गणः", + "emails.verification.subject": "पञ्जिकानिर्णायनम्‌", + "emails.verification.hello": "अयि {{name}}", + "emails.verification.body": "ई-पत्रनिर्णायनार्थमिदं संयोगसूत्रमनुसरतु।", + "emails.verification.footer": "यदि अस्य संकेतस्य निर्णायनं नेष्यते तर्हि वात्र्तामिमामुपेक्षताम्‌।", + "emails.verification.thanks": "धन्यवादः", + "emails.verification.signature": "{{project}} गणः", + "emails.magicSession.subject": "संप्रवेशः", + "emails.magicSession.hello": "अयि,", + "emails.magicSession.body": "संप्रवेशार्थमिदं संयोगसूत्रमनुसरतु।", + "emails.magicSession.footer": "अनेन ई-पत्रण यदि संप्रवेशो नेष्यते तर्हि वात्र्तामिमामुपेक्षताम्‌।", + "emails.magicSession.thanks": "धन्यवादः", + "emails.magicSession.signature": "{{project}} गणः", + "emails.recovery.subject": "कूटशब्दपुनयाेजनम्‌", + "emails.recovery.hello": "अयि भो {{name}}", + "emails.recovery.body": "{{project}} कूटशब्दपुनयाेजनाय संयोगमेनमनुसरतु।", + "emails.recovery.footer": "यदि कूटशब्दस्य पुनयाेजनं नेष्यते तर्हि वात्र्तामिमामुपेक्षताम्‌।", + "emails.recovery.thanks": "धन्यवादः", + "emails.recovery.signature": "{{project}} गणः", + "emails.invitation.subject": "गणस्य आमन्त्रणम्‌ %s इति %s", + "emails.invitation.hello": "अयि भो", + "emails.invitation.body": "{{owner}} {{team}} गणे {{project}} मध्ये भवद्योगदानमच्छितीति हेतोः पत्रमदिं भवत्सकाशं प्रेषतिम्।", + "emails.invitation.footer": "यदि भवदनिच्छा तर्हि वात्र्तामिमामुपेक्षताम्‌।", + "emails.invitation.thanks": "धन्यवादः", + "emails.invitation.signature": "{{project}} गणः", + "locale.country.unknown": "अज्ञातम्‌ ", + "countries.af": "आफगानिस्थानम्‌", + "countries.ao": "आङ्गोला", + "countries.al": "आलबनिआ", + "countries.ad": "आण्डोरा", + "countries.ae": "संयुक्त आरब गणराज्यम्‌", + "countries.ar": "अर्जेंटीना", + "countries.am": "अर्मेनिआ", + "countries.ag": "आण्टिगुआ बर्वुदा च", + "countries.au": "अष्ट्रेलिआ", + "countries.at": "अष्ट्रिआ", + "countries.az": "आज़रबाइजान्‌", + "countries.bi": "बुरुन्दि", + "countries.be": "बेल्जिअम्‌", + "countries.bj": "बेनिन्‌", + "countries.bf": "बुर्किना फाशो", + "countries.bd": "बाङ्गलादेशः", + "countries.bg": "बुल्गेरिआ", + "countries.bh": "बाहारिन्‌", + "countries.bs": "बाहामस्‌", + "countries.ba": "बोसिनिआ हर्जेगोविन च", + "countries.by": "बेलारुष्‌", + "countries.bz": "बेलिज", + "countries.bo": "बोलिभिआ", + "countries.br": "ब्राजिल", + "countries.bb": "बर्बादोस्‌", + "countries.bn": "ब्रुनेइ", + "countries.bt": "भुटान्‌", + "countries.bw": "बोटस्वान", + "countries.cf": "केन्द्रिय आफ़्रीका गणराज्यम्‌", + "countries.ca": "कनाडा", + "countries.ch": "स्विट्ज़रलैंड", + "countries.cl": "चिली", + "countries.cn": "चीन", + "countries.ci": "आइभोरि कोष्ट", + "countries.cm": "कामेरुन्‌", + "countries.cd": "कांगो लोकतांत्रिक गणराज्यम्‌", + "countries.cg": "कोलंबिया", + "countries.co": "कोलंबिया", + "countries.km": "कोमोरोस", + "countries.cv": "केप्‌ वर्दे", + "countries.cr": "कोष्टारिका", + "countries.cu": "क्युवा", + "countries.cy": "साइप्रस्‌", + "countries.cz": "चेकिया", + "countries.de": "जर्मनी", + "countries.dj": "जिबूती", + "countries.dm": "डोमिनिका", + "countries.dk": "डेनमार्क", + "countries.do": "डोमिनिका गणराज्यम्‌", + "countries.dz": "एलजीरिया", + "countries.ec": "इक्वेडोर", + "countries.eg": "मिस्र", + "countries.er": "एरिट्रिआ", + "countries.es": "स्पेन्‌", + "countries.ee": "एस्तोनिया", + "countries.et": "इथिओपिआ", + "countries.fi": "फिनलैंड", + "countries.fj": "फ़िजी", + "countries.fr": "फ्रांस", + "countries.fm": "माइक्रोनेशिया", + "countries.ga": "गैबॉन", + "countries.gb": "संयुक्त राज्यम्‌", + "countries.ge": "जॉर्जिया", + "countries.gh": "घाना", + "countries.gn": "गिन्नी", + "countries.gm": "गाम्बिया", + "countries.gw": "गिनी-बिसाऊ", + "countries.gq": "भूमध्यवर्ती गिनी", + "countries.gr": "ग्रीस्‌", + "countries.gd": "ग्रेनेडा", + "countries.gt": "ग्वाटेमाला", + "countries.gy": "गुयाना", + "countries.hn": "होंडुरस्‌", + "countries.hr": "क्रोएशिया", + "countries.ht": "हैती", + "countries.hu": "हङ्गेरी", + "countries.id": "इंडोनेशिया", + "countries.in": "भारत", + "countries.ie": "आयरलैंड", + "countries.ir": "ईरान", + "countries.iq": "इराक", + "countries.is": "आइसलैंड", + "countries.il": "इजराइल", + "countries.it": "इटली", + "countries.jm": "जमैका", + "countries.jo": "जॉर्डन", + "countries.jp": "जापान", + "countries.kz": "कजाखस्तान", + "countries.ke": "केन्या", + "countries.kg": "किर्गिज़स्तान", + "countries.kh": "कंबोडिया", + "countries.ki": "किरिबाती", + "countries.kn": "सेंट किट्ट्स नेविस च", + "countries.kr": "दक्षिण कोरिया", + "countries.kw": "कुवैट", + "countries.la": "लाओस", + "countries.lb": "लेबनान्", + "countries.lr": "लाइबेरिया", + "countries.ly": "लीबिया", + "countries.lc": "सेंट लूसिया", + "countries.li": "लिकटेंस्टाइन्", + "countries.lk": "श्री लंका", + "countries.ls": "लिसोटो", + "countries.lt": "लिथुआनिया", + "countries.lu": "लक्समबर्ग", + "countries.lv": "लातविया", + "countries.ma": "मोरक्को", + "countries.mc": "मोनाको", + "countries.md": "मोलदोवा", + "countries.mg": "मेडागास्कर", + "countries.mv": "मालद्वीप", + "countries.mx": "मेक्सिको", + "countries.mh": "मार्शल द्वीप समूह", + "countries.mk": "मैसेडोनिया", + "countries.ml": "माली", + "countries.mt": "माल्टा", + "countries.mm": "म्यांमार", + "countries.me": "मोंटेनेग्रो", + "countries.mn": "मंगोलिया", + "countries.mz": "मोजाम्बिक्", + "countries.mr": "मॉरिटानिया", + "countries.mu": "मॉरीशस्", + "countries.mw": "मलावी", + "countries.my": "मलेशिया", + "countries.na": "नामीबिया", + "countries.ne": "नाइजर्‌", + "countries.ng": "नाइजीरिया", + "countries.ni": "निकारागुआ", + "countries.nl": "नीदरलैंड", + "countries.no": "नॉर्वे", + "countries.np": "नेपाल", + "countries.nr": "नाउरू", + "countries.nz": "न्यूजीलैंड", + "countries.om": "ओमान", + "countries.pk": "पाकिस्तान", + "countries.pa": "पनामा", + "countries.pe": "पेरू", + "countries.ph": "फिलीपींस", + "countries.pw": "पलाउ", + "countries.pg": "पापुआ न्यू गिनी", + "countries.pl": "पोलैंड", + "countries.kp": "उत्तर कोरिया", + "countries.pt": "पुर्तगाल", + "countries.py": "परागुआ", + "countries.qa": "कतर", + "countries.ro": "रोमानिया", + "countries.ru": "रूस्", + "countries.rw": "रुआण्डा", + "countries.sa": "सऊदी अरब", + "countries.sd": "सूडान", + "countries.sn": "सेनेगल", + "countries.sg": "सिंगापुर", + "countries.sb": "सोलोमन द्वीप", + "countries.sl": "सियरा लिओन", + "countries.sv": "अल साल्वाडोर", + "countries.sm": "सैन् मैरीनो", + "countries.so": "सोमालिया", + "countries.rs": "सर्बिया", + "countries.ss": "दक्षिण सूडान", + "countries.st": "साओ टोमे प्रिंसिपे च", + "countries.sr": "सूरीनाम", + "countries.sk": "स्लोवाकिया", + "countries.si": "स्लोवेनिया", + "countries.se": "स्विडेन", + "countries.sz": "स्वाजीलैंड", + "countries.sc": "सेशेल्स", + "countries.sy": "सीरिया", + "countries.td": "चाड़", + "countries.tg": "टोगो", + "countries.th": "थाईलैंड", + "countries.tj": "तजाकिस्तान", + "countries.tm": "तुर्कमेनिस्तान", + "countries.tl": "तिमोर-लेस्ते", + "countries.to": "टोंगा", + "countries.tt": "त्रिनिदाद टोबैगो च", + "countries.tn": "ट्यूनीशिया", + "countries.tr": "तुर्की", + "countries.tv": "तुवालु", + "countries.tz": "तंजानिया", + "countries.ug": "युगांडा", + "countries.ua": "यूक्रेन", + "countries.uy": "उरुग्वे", + "countries.us": "संयुक्तराष्ट्रम्‌", + "countries.uz": "उज़्बेकिस्तान", + "countries.va": "वेटिकन सिटी", + "countries.vc": "सेंट विंसेंट ग्रेनडीनेस च", + "countries.ve": "वेनेजुएला", + "countries.vn": "वियतनाम", + "countries.vu": "वानुअतु", + "countries.ws": "समोआ", + "countries.ye": "यमन", + "countries.za": "दक्षिण अफ्रीका", + "countries.zm": "जाम्बिया", + "countries.zw": "जिम्बाब्वे", + "continents.af": "अफ्रीका", + "continents.an": "अंटार्कटिका", + "continents.as": "एशिया", + "continents.eu": "यूरोप", + "continents.na": "उत्तरी अमेरिका", + "continents.oc": "ओशिनिया", + "continents.sa": "दक्षिण अमेरिका" +} \ No newline at end of file diff --git a/app/config/locale/translations/sd.json b/app/config/locale/translations/sd.json new file mode 100644 index 0000000000..c3aee50f5f --- /dev/null +++ b/app/config/locale/translations/sd.json @@ -0,0 +1,232 @@ +{ + "settings.inspire": "\"سمجھدار ھجڻ جو فن آھي اھو .اڻڻاڻڻ جو فن جيڪو نظر انداز ڪجي.\"", + "settings.locale": "sd", + "settings.direction": "ltr", + "emails.sender": "%s ٽيم", + "emails.verification.subject": " اڪائونٽ جي تصديق", + "emails.verification.hello": "سلام {{name}}", + "emails.verification.body": "پنھنجي اي ميل ايڊريس جي تصديق ڪرڻ لاءِ ھن لنڪ تي عمل ڪريو.", + "emails.verification.footer": "جيڪڏھن توھان نه پ askيا ھئا ھن ايڊريس جي تصديق ڪرڻ لاءِ ، توھان نظر انداز ڪري سگھوٿا ھن پيغام کي.", + "emails.verification.thanks": "مهرباني", + "emails.verification.signature": "{{project}} ٽيم", + "emails.magicSession.subject": "لاگ ان", + "emails.magicSession.hello": "هي ،", + "emails.magicSession.body": "لاگ ان ٿيڻ لاءِ ھن لنڪ تي عمل ڪريو.", + "emails.magicSession.footer": "جيڪڏھن توھان نه پ پيا ھي لاگ ان استعمال ڪندي اي ميل ، توھان نظر انداز ڪري سگھوٿا ھن پيغام کي.", + "emails.magicSession.thanks": "مهرباني", + "emails.magicSession.signature": "{{project}} ٽيم", + "emails.recovery.subject": "پاسورڊ ري سيٽ", + "emails.recovery.hello": "هيلو {{name}}", + "emails.recovery.body": "ھن لنڪ تي عمل ڪريو پنھنجو {{project}} پاسورڊ ري سيٽ ڪرڻ لاءِ.", + "emails.recovery.footer": "جيڪڏھن توھان نه پ پيو ھو پنھنجي پاسورڊ کي ري سيٽ ڪرڻ لاءِ ، توھان نظر انداز ڪري سگھوٿا ھن پيغام کي.", + "emails.recovery.thanks": "مهرباني", + "emails.recovery.signature": "{{project}} ٽيم", + "emails.invitation.subject": "%s ٽيم %s تيجي دعوت", + "emails.invitation.hello": "هيلو", + "emails.invitation.body": "ھي اي ميل توھان ڏانھن موڪليو ويو آھي {اڪاڻ ته {{owner}} توھان کي دعوت ڏيڻ چاھي ٿو ته توھان {{team}} ٽيم جو ميمبر بڻجي {{project}} تي.", + "emails.invitation.footer": "جيڪڏھن توھان دلچسپي نٿا رکو ، توھان نظر انداز ڪري سگھوٿا ھن پيغام کي.", + "emails.invitation.thanks": "مهرباني", + "emails.invitation.signature": "{{project}} ٽيم", + "locale.country.unknown": "نامعلوم", + "countries.af": "افغانستان", + "countries.ao": "آنگولا", + "countries.al": "البانيا", + "countries.ad": "اندورا", + "countries.ae": "متحده عرب امارات", + "countries.ar": "ارجنٽينا", + "countries.am": "آرمينيا", + "countries.ag": "انٽيگوا ۽ باربودا", + "countries.au": "آسٽريليا", + "countries.at": "آسٽريا", + "countries.az": "آذربائيجان", + "countries.bi": "برونڊي", + "countries.be": "بيلجيم", + "countries.bj": "بينن", + "countries.bf": "برڪينا فاسو", + "countries.bd": "بنگله ديش", + "countries.bg": "بلغاريا", + "countries.bh": "بحرين", + "countries.bs": "بهاماس", + "countries.ba": "بوسنيا ۽ هرزيگووينا", + "countries.by": "بيلاروس", + "countries.bz": "بيليز", + "countries.bo": "بوليويا", + "countries.br": "برازيل", + "countries.bb": "باربڊوس", + "countries.bn": "برونائي", + "countries.bt": "ڀوٽان", + "countries.bw": "بوٽسوانا", + "countries.cf": "وسطي آفريقي جمهوريه", + "countries.ca": "ڪينيڊا", + "countries.ch": "سئيٽرزلينڊ", + "countries.cl": "چلي", + "countries.cn": "چين", + "countries.ci": "آئيوري ڪوسٽ", + "countries.cm": "ڪيمرون", + "countries.cd": "ڪانگوڊاڪٽر", + "countries.cg": "ڪانگو جي جمهوريه", + "countries.co": "ڪولمبيا", + "countries.km": "ڪوموروس", + "countries.cv": "ڪيپ ورڊي", + "countries.cr": "ڪوسٽا ريڪا", + "countries.cu": "ڪيوبا", + "countries.cy": "ڪپرس", + "countries.cz": "چيڪيا", + "countries.de": "جرمني", + "countries.dj": "ڊجبيوٽي", + "countries.dm": "ڊومينيڪا", + "countries.dk": "ڊينمارڪ", + "countries.do": "ڊومينيڪن جمهوريه", + "countries.dz": "الجيريا", + "countries.ec": "ايڪيوڊار", + "countries.eg": "مصر", + "countries.er": "ايريٽيريا", + "countries.es": "اسپين", + "countries.ee": "ايسٽونيا", + "countries.et": "ايٿوپيا", + "countries.fi": "فنلينڊ", + "countries.fj": "فجي", + "countries.fr": "فرانس", + "countries.fm": "مائڪرونيشيا", + "countries.ga": "گوبان", + "countries.gb": "برطانيه", + "countries.ge": "جارجيا", + "countries.gh": "گانا", + "countries.gn": "گائينا", + "countries.gm": "گامبيا", + "countries.gw": "گائينا - بسيو", + "countries.gq": "ايڪوٽوريل گائينا", + "countries.gr": "گريسي", + "countries.gd": "گرينڊا", + "countries.gt": "گٽيمالا", + "countries.gy": "گيانا", + "countries.hn": "هونڊرس", + "countries.hr": "ڪوريٽيا", + "countries.ht": "هيٽي", + "countries.hu": "هنگري", + "countries.id": "انڊونيشيا", + "countries.in": "انڊيا", + "countries.ie": "آئرلينڊ", + "countries.ir": "ايران", + "countries.iq": "عراق", + "countries.is": "آئس لينڊ", + "countries.il": "اسرائيل", + "countries.it": "اٽلي", + "countries.jm": "جاميڪا", + "countries.jo": "اردن", + "countries.jp": "جاپان", + "countries.kz": "قازقستان", + "countries.ke": "ڪينيا", + "countries.kg": "ڪرغستان", + "countries.kh": "ڪمبوڊيا", + "countries.ki": "ڪرباتي", + "countries.kn": "سينٽ ڪيٽس ۽ نيوس", + "countries.kr": "ڏکڻ ڪوريا", + "countries.kw": "ڪويت", + "countries.la": "لاس", + "countries.lb": "لبنان", + "countries.lr": "لابيريا", + "countries.ly": "ليبيا", + "countries.lc": "سينٽ لوسيا", + "countries.li": "لچي ٽينسٽين", + "countries.lk": "سري لنڪا", + "countries.ls": "ليسوٽو", + "countries.lt": "لٿونيا", + "countries.lu": "ليڪسمبورگ", + "countries.lv": "لاتويا", + "countries.ma": "مراڪش", + "countries.mc": "موناڪو", + "countries.md": "مولڊووا", + "countries.mg": "ماڊاگيسڪر", + "countries.mv": "مالديپ", + "countries.mx": "ميڪسيڪو", + "countries.mh": "مارشل ڀيٽ", + "countries.mk": "مقدونيا", + "countries.ml": "مالي", + "countries.mt": "مالٽا", + "countries.mm": "میانمار", + "countries.me": "مونٽينيگرو", + "countries.mn": "منگوليا", + "countries.mz": "موزمبائيق", + "countries.mr": "ماريٽينيا", + "countries.mu": "موريشس", + "countries.mw": "مالاوي", + "countries.my": "ملائيشيا", + "countries.na": "نيميبيا", + "countries.ne": "نائيگر", + "countries.ng": "نائجيريا", + "countries.ni": "نڪروگا", + "countries.nl": "نيدرليند", + "countries.no": "ناروي", + "countries.np": "نيپال", + "countries.nr": "ناريو", + "countries.nz": "نيو زيلينڊ", + "countries.om": "عمان", + "countries.pk": "پاڪستان", + "countries.pa": "پاناما", + "countries.pe": "پيرو", + "countries.ph": "فلپائن", + "countries.pw": "پوليو", + "countries.pg": "پوپا نيو گائينا", + "countries.pl": "پولينڊ", + "countries.kp": "شمالي ڪوريا", + "countries.pt": "پرتگال", + "countries.py": "پيراگوء", + "countries.qa": "قطر", + "countries.ro": "رومانيا", + "countries.ru": "روس", + "countries.rw": "روانڊا", + "countries.sa": "سعودي عرب", + "countries.sd": "سوڊان", + "countries.sn": "سينيگال", + "countries.sg": "سينگاپور", + "countries.sb": "سولومون ٻيٽ", + "countries.sl": "سيري لون", + "countries.sv": "ايل سلواڊور", + "countries.sm": "سان ميرينو", + "countries.so": "سوماليه", + "countries.rs": "سربيا", + "countries.ss": "ڏکڻ سوڊان", + "countries.st": "سائو ٽوم ۽ پرنسپي", + "countries.sr": "سيري نيم", + "countries.sk": "سلوواڪيا", + "countries.si": "سلووينيا", + "countries.se": "سوئيڊن", + "countries.sz": "سئيزلينڊ", + "countries.sc": "سيليڪاز", + "countries.sy": "شام", + "countries.td": "چاڊ", + "countries.tg": "ٽوگو", + "countries.th": "ٿائيليند", + "countries.tj": "تاجڪستان", + "countries.tm": "ترڪمانستان", + "countries.tl": "تيمور-ليست", + "countries.to": "ٽونگا", + "countries.tt": "ٽرينڊڊ ۽ ٽوباگو", + "countries.tn": "تيونيسيا", + "countries.tr": "ترڪي", + "countries.tv": "توالو", + "countries.tz": "تنزانيه", + "countries.ug": "يوگنڊا", + "countries.ua": "يوڪرائين", + "countries.uy": "يوروگائي", + "countries.us": "گڏيل رياستون", + "countries.uz": "ازبڪستان", + "countries.va": "ويٽڪين سٽي", + "countries.vc": "سينٽ ويڪنٽ ۽ گرينڊنيس", + "countries.ve": "وينزيلا", + "countries.vn": "ويتنام", + "countries.vu": "وينيٽيو", + "countries.ws": "سموئا", + "countries.ye": "يمن", + "countries.za": "ڏکڻ آفريڪا", + "countries.zm": "زمبيا", + "countries.zw": "زمبابوي", + "continents.af": "آفريڪا", + "continents.an": "انٽارڪٽيڪا", + "continents.as": "ايشيا", + "continents.eu": "يورپ", + "continents.na": "اتر آمريڪا", + "continents.oc": "اوشينيا", + "continents.sa": "ڏکڻ آمريڪا" +} diff --git a/app/config/locale/translations/si.json b/app/config/locale/translations/si.json index ad369f7ea1..0253a9420c 100644 --- a/app/config/locale/translations/si.json +++ b/app/config/locale/translations/si.json @@ -3,25 +3,31 @@ "settings.locale": "si", "settings.direction": "ltr", "emails.sender": "%s කණ්ඩායම", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", - "locale.country.unknown": "Unknown", + "emails.verification.subject": "ගිණුම් සත්‍යාපනය", + "emails.verification.hello": "හේයි {{name}}", + "emails.verification.body": "ඔබගේ විද්‍යුත් තැපැල් ලිපිනය සත්‍යාපනය කිරීමට මෙම සම්බන්ධකය අනුගමනය කරන්න.", + "emails.verification.footer": "මෙම ලිපිනය සත්‍යාපනය කරන ලෙස ඔබ ඉල්ලුවේ නැත්නම්, ඔබට මෙම පණිවිඩය නොසලකා හැරිය හැක.", + "emails.verification.thanks": "ස්තුතියි", + "emails.verification.signature": "{{project}} කණ්ඩායම", + "emails.magicSession.subject": "ප්‍රවේශ වන්න", + "emails.magicSession.hello": "හේයි,", + "emails.magicSession.body": "ප්‍රවේශ වීමට මෙම සම්බන්ධකය අනුගමනය කරන්න.", + "emails.magicSession.footer": "මෙම විද්‍යුත් තැපෑල භාවිතයෙන් ප්‍රවේශ වීමට ඔබ ඉල්ලුවේ නැත්නම්, ඔබට මෙම පණිවිඩය නොසලකා හැරිය හැක.", + "emails.magicSession.thanks": "ස්තුතියි", + "emails.magicSession.signature": "{{project}} කණ්ඩායම", + "emails.recovery.subject": "මුරපද යළි පිහිටුවීම", + "emails.recovery.hello": "ආයුබෝවන් {{name}}", + "emails.recovery.body": "ඔබගේ {{project}} මුරපදය නැවත සැකසීමට මෙම සම්බන්ධකය අනුගමනය කරන්න.", + "emails.recovery.footer": "ඔබගේ මුරපදය නැවත සකසන ලෙස ඔබ ඉල්ලුවේ නැත්නම්, ඔබට මෙම පණිවිඩය නොසලකා හැරිය හැක.", + "emails.recovery.thanks": "ස්තුතියි", + "emails.recovery.signature": "{{project}} කණ්ඩායම", + "emails.invitation.subject": "%s කණ්ඩායමට ආරාධනා %s හි", + "emails.invitation.hello": "ආයුබෝවන්", + "emails.invitation.body": "මෙම තැපැල් ඔබට එව්වේ, {{owner}} හට {{project}} හි {{team}} කණ්ඩායමේ සාමාජිකයෙකු වීමට ඔබට ආරාධනා කිරීමට අවශ්‍ය වූ බැවිනි.", + "emails.invitation.footer": "ඔබ උනන්දුවක් නොදක්වන්නේ නම්, ඔබට මෙම පණිවිඩය නොසලකා හැරිය හැක.", + "emails.invitation.thanks": "ස්තුතියි", + "emails.invitation.signature": "{{project}} කණ්ඩායම", + "locale.country.unknown": "නොදන්නා", "countries.af": "ඇෆ්ගනිස්ථානය", "countries.ao": "ඇන්ගෝලා", "countries.al": "ඇල්බේනියාව", @@ -104,14 +110,14 @@ "countries.ir": "ඉරානය", "countries.iq": "ඉරාකය", "countries.is": "අයිස්ලන්තය", - "countries.il": "ඊශ්රායෙල්", + "countries.il": "ඊශ්‍රායලය", "countries.it": "ඉතාලිය", "countries.jm": "ජැමෙයිකාව", "countries.jo": "ජෝර්දානය", "countries.jp": "ජපානය", "countries.kz": "කසකස්තානය", "countries.ke": "කෙන්යාව", - "countries.kg": "ක්‍රිගිස්තානය", + "countries.kg": "කිර්ගිස්තානය", "countries.kh": "කාම්බෝජය", "countries.ki": "කිරිබති", "countries.kn": "ශාන්ත කිට්ස් සහ නෙවිස්", diff --git a/app/config/locale/translations/sk.json b/app/config/locale/translations/sk.json new file mode 100644 index 0000000000..b891e4e3a3 --- /dev/null +++ b/app/config/locale/translations/sk.json @@ -0,0 +1,232 @@ +{ + "settings.inspire": "\"Umenie múdrosti je umenie vedieť, čo prehliadnuť.\"", + "settings.locale": "sk", + "settings.direction": "ltr", + "emails.sender": "%s Tím", + "emails.verification.subject": "Overenie účtu", + "emails.verification.hello": "Ahoj {{name}}", + "emails.verification.body": "Použi tento link pre overenie svojej emailovej adresy.", + "emails.verification.footer": "Ak si nepožiadal o overenie tejto adresy, môžeš túto správu ignorovať.", + "emails.verification.thanks": "Ďakujeme.", + "emails.verification.signature": "{{project}} tím", + "emails.magicSession.subject": "Prihlásenie", + "emails.magicSession.hello": "Ahoj,", + "emails.magicSession.body": "Použi tento link pre prihlásenie.", + "emails.magicSession.footer": "Ak si nepožiadal o prihlásenie cez email, túto správu môžeš ignorovať.", + "emails.magicSession.thanks": "Ďakujeme", + "emails.magicSession.signature": "{{project}} tím", + "emails.recovery.subject": "Obnovenie hesla", + "emails.recovery.hello": "Ahoj {{name}}", + "emails.recovery.body": "Použi tento link pre obnovenie svojho {{project}} hesla.", + "emails.recovery.footer": "Ak si nepožiadal o obnovu svojho hesla, túto správu môžeš ignorovať.", + "emails.recovery.thanks": "Ďakujeme", + "emails.recovery.signature": "{{project}} tím", + "emails.invitation.subject": "Pozvánka do %s Tímu v %s", + "emails.invitation.hello": "Ahoj", + "emails.invitation.body": "Tento email ti bol zaslaný, pretože {{owner}} ťa pozval, aby si sa stal členom {{team}} tímu v projekte {{project}}.", + "emails.invitation.footer": "Ak nemáš záujem, môžeš túto správu ignorovať.", + "emails.invitation.thanks": "Ďakujeme", + "emails.invitation.signature": "{{project}} tím", + "locale.country.unknown": "Neznámy", + "countries.af": "Afganistan", + "countries.ao": "Angola", + "countries.al": "Albánsko", + "countries.ad": "Andorra", + "countries.ae": "Spojené arabské emiráty", + "countries.ar": "Argentína", + "countries.am": "Arménsko", + "countries.ag": "Antigua a Barbuda", + "countries.au": "Austrália", + "countries.at": "Rakúsko", + "countries.az": "Azerbajdžan", + "countries.bi": "Burundi", + "countries.be": "Belgicko", + "countries.bj": "Benin", + "countries.bf": "Burkina Faso", + "countries.bd": "Bangladéš", + "countries.bg": "Bulharsko", + "countries.bh": "Bahrajn", + "countries.bs": "Bahamy", + "countries.ba": "Bosnia and Herzegovina", + "countries.by": "Bielorusko", + "countries.bz": "Belize", + "countries.bo": "Bolívia", + "countries.br": "Brazília", + "countries.bb": "Barbados", + "countries.bn": "Brunej", + "countries.bt": "Bhután", + "countries.bw": "Botswana", + "countries.cf": "Stredoafrická republika", + "countries.ca": "Kanada", + "countries.ch": "Švajčiarsko", + "countries.cl": "Čile", + "countries.cn": "Čína", + "countries.ci": "Pobrežie Slonoviny", + "countries.cm": "Kamerun", + "countries.cd": "Konžská demokratická republika", + "countries.cg": "Kongo", + "countries.co": "Kolumbia", + "countries.km": "Komory", + "countries.cv": "Kapverdy", + "countries.cr": "Kostarika", + "countries.cu": "Kuba", + "countries.cy": "Cyprus", + "countries.cz": "Česko", + "countries.de": "Nemecko", + "countries.dj": "Džibutsko", + "countries.dm": "Dominika", + "countries.dk": "Denmark", + "countries.do": "Dominikánska republika", + "countries.dz": "Alžírsko", + "countries.ec": "Ekvádor", + "countries.eg": "Egypt", + "countries.er": "Eritrea", + "countries.es": "Španielsko", + "countries.ee": "Estónsko", + "countries.et": "Etiópia", + "countries.fi": "Fínsko", + "countries.fj": "Fidži", + "countries.fr": "Francúzsko", + "countries.fm": "Mikronézia", + "countries.ga": "Gabon", + "countries.gb": "Spojené kráľovstvo", + "countries.ge": "Gruzínsko", + "countries.gh": "Ghana", + "countries.gn": "Guinea", + "countries.gm": "Gambia", + "countries.gw": "Guinea-Bissau", + "countries.gq": "Rovníková Guinea", + "countries.gr": "Grécko", + "countries.gd": "Grenada", + "countries.gt": "Guatemala", + "countries.gy": "Guyana", + "countries.hn": "Honduras", + "countries.hr": "Chorvátsko", + "countries.ht": "Haiti", + "countries.hu": "Maďarsko", + "countries.id": "Indonézia", + "countries.in": "India", + "countries.ie": "Írsko", + "countries.ir": "Irán", + "countries.iq": "Irak", + "countries.is": "Island", + "countries.il": "Izrael", + "countries.it": "Taliansko", + "countries.jm": "Jamajka", + "countries.jo": "Jordánsko", + "countries.jp": "Japonsko", + "countries.kz": "Kazachstan", + "countries.ke": "Keňa", + "countries.kg": "Kirgizsko", + "countries.kh": "Kambodža", + "countries.ki": "Kiribati", + "countries.kn": "Svätý Krištof a Nevis", + "countries.kr": "Južná Kórea", + "countries.kw": "Kuvajt", + "countries.la": "Laos", + "countries.lb": "Libanon", + "countries.lr": "Libéria", + "countries.ly": "Líbya", + "countries.lc": "Svätá Lucia", + "countries.li": "Lichtenštajnsko", + "countries.lk": "Srí Lanka", + "countries.ls": "Lesotho", + "countries.lt": "Litva", + "countries.lu": "Luxembursko", + "countries.lv": "Lotyšsko", + "countries.ma": "Maroko", + "countries.mc": "Monako", + "countries.md": "Moldavsko", + "countries.mg": "Madagaskar", + "countries.mv": "Maldivy", + "countries.mx": "Mexiko", + "countries.mh": "Marshall Islands", + "countries.mk": "Macedónsko", + "countries.ml": "Mali", + "countries.mt": "Malta", + "countries.mm": "Mjanmarsko", + "countries.me": "Čierna Hora", + "countries.mn": "Monglosko", + "countries.mz": "Mozambik", + "countries.mr": "Mauritánia", + "countries.mu": "Maurícius", + "countries.mw": "Malawi", + "countries.my": "Malajzia", + "countries.na": "Namíbia", + "countries.ne": "Niger", + "countries.ng": "Nigéria", + "countries.ni": "Nikaragua", + "countries.nl": "Holandsko", + "countries.no": "Nórsko", + "countries.np": "Nepál", + "countries.nr": "Nauru", + "countries.nz": "Nový Zéland", + "countries.om": "Omán", + "countries.pk": "Pakistan", + "countries.pa": "Panama", + "countries.pe": "Peru", + "countries.ph": "Filipíny", + "countries.pw": "Palau", + "countries.pg": "Papua-Nová Guinea", + "countries.pl": "Poľsko", + "countries.kp": "Severná Kórea", + "countries.pt": "Portugalsko", + "countries.py": "Paraguaj", + "countries.qa": "Katar", + "countries.ro": "Rumunsko", + "countries.ru": "Rusko", + "countries.rw": "Rwanda", + "countries.sa": "Saudská Arábia", + "countries.sd": "Sudán", + "countries.sn": "Senegal", + "countries.sg": "Singapur", + "countries.sb": "Šalamúnove ostrovy", + "countries.sl": "Sierra Leone", + "countries.sv": "Salvádor", + "countries.sm": "San Maríno", + "countries.so": "Somálsko", + "countries.rs": "Srbsko", + "countries.ss": "Južný Sudán", + "countries.st": "Svätý Tomáš a Princov ostrov", + "countries.sr": "Surinam", + "countries.sk": "Slovensko", + "countries.si": "Slovinsko", + "countries.se": "Švédsko", + "countries.sz": "Svazijsko", + "countries.sc": "Seychely", + "countries.sy": "Sýria", + "countries.td": "Čad", + "countries.tg": "Togo", + "countries.th": "Thajsko", + "countries.tj": "Tadžikistan", + "countries.tm": "Turkménsko", + "countries.tl": "Východný Timor", + "countries.to": "Tonga", + "countries.tt": "Trinidad a Tobago", + "countries.tn": "Tunisko", + "countries.tr": "Turecko", + "countries.tv": "Tuvalu", + "countries.tz": "Tanzánia", + "countries.ug": "Uganda", + "countries.ua": "Ukrajna", + "countries.uy": "Uruguaj", + "countries.us": "Spojené štáty", + "countries.uz": "Uzbekistan", + "countries.va": "Vatikán", + "countries.vc": "Svätý Vincent a Grenadíny", + "countries.ve": "Venezuela", + "countries.vn": "Vietnam", + "countries.vu": "Vanuatu", + "countries.ws": "Samoa", + "countries.ye": "Jemen", + "countries.za": "Južná Afrika", + "countries.zm": "Zambia", + "countries.zw": "Zimbabwe", + "continents.af": "Afrika", + "continents.an": "Antarktída", + "continents.as": "Ázia", + "continents.eu": "Európa", + "continents.na": "Severná Amerika", + "continents.oc": "Oceánia", + "continents.sa": "Južná Amerika" +} diff --git a/app/config/locale/translations/sl.json b/app/config/locale/translations/sl.json index 774c47b180..d4c7ccaeab 100644 --- a/app/config/locale/translations/sl.json +++ b/app/config/locale/translations/sl.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/sq.json b/app/config/locale/translations/sq.json index c5bf8b6cee..dea40f9f32 100644 --- a/app/config/locale/translations/sq.json +++ b/app/config/locale/translations/sq.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/sv.json b/app/config/locale/translations/sv.json index 8903c5810f..eecca99a55 100644 --- a/app/config/locale/translations/sv.json +++ b/app/config/locale/translations/sv.json @@ -3,24 +3,30 @@ "settings.locale": "sv", "settings.direction": "ltr", "emails.sender": "%s-teamet", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Verifiera konto", + "emails.verification.hello": "Hej {{name}}", + "emails.verification.body": "Klicka på denna länk för att verifiera din email", + "emails.verification.footer": "Om du inte bad om att verifiera den här e-postadressen kan du ignorera detta mail.", + "emails.verification.thanks": "Tack", + "emails.verification.signature": "{{project}} teamet", + "emails.magicSession.subject": "Logga in", + "emails.magicSession.hello": "Hej,", + "emails.magicSession.body": "Klicka på denna länk för att logga in.", + "emails.magicSession.footer": "Om du inte bad om att logga in med denna e-postadress kan du ignorera detta mail.", + "emails.magicSession.thanks": "Tack", + "emails.magicSession.signature": "{{project}} teamet", + "emails.recovery.subject": "Återställ lösenord", + "emails.recovery.hello": "Hej {{name}}", + "emails.recovery.body": "Klicka på denna länk för att återställa lösenordet på {{project}}", + "emails.recovery.footer": "Om du inte bad om att återställa ditt lösenord kan du ignorera detta mail.", + "emails.recovery.thanks": "Tack", + "emails.recovery.signature": "{{project}} teamet", + "emails.invitation.subject": "Inbjudan till %s teamet på %s", + "emails.invitation.hello": "Hej", + "emails.invitation.body": "Detta mail skickades till dig eftersom {{owner}} ville bjuda in dig att bli medlem i teamet {{team}} på {{project}}.", + "emails.invitation.footer": "Om du inte är intresserad kan du ignorera detta mail.", + "emails.invitation.thanks": "Tack", + "emails.invitation.signature": "{{project}} teamet", "locale.country.unknown": "Okänt", "countries.af": "Afghanistan", "countries.ao": "Angola", diff --git a/app/config/locale/translations/ta.json b/app/config/locale/translations/ta.json index ef97f3a376..9c5aad7cba 100644 --- a/app/config/locale/translations/ta.json +++ b/app/config/locale/translations/ta.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/th.json b/app/config/locale/translations/th.json index e391db49c0..62b8f17cdb 100644 --- a/app/config/locale/translations/th.json +++ b/app/config/locale/translations/th.json @@ -1,26 +1,32 @@ { - "settings.inspire": "\"ศิลปะแห่งความฉลาดคือศิลปะแห่งการรู้ว่าจะมองข้ามอะไร\"", + "settings.inspire": "\"ศิลปะของการมีปัญญา คือการตระหนักได้ว่าควรจะมองข้ามเรื่องอะไร\"", "settings.locale": "th", "settings.direction": "ltr", - "emails.sender": "%s ทีม", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.sender": "ทีม %s", + "emails.verification.subject": "การยืนยันบัญชีผู้ใช้", + "emails.verification.hello": "เรียนคุณ {{name}}", + "emails.verification.body": "กดเข้าไปที่ลิงก์นี้เพื่อยืนยันอีเมลของท่าน", + "emails.verification.footer": "หากท่านไม่ได้ต้องการที่จะยืนยันอีเมลนี้ ท่านสามารถเพิกเฉยข้อความนี้ได้", + "emails.verification.thanks": "ขอบคุณ", + "emails.verification.signature": "ทีม {{project}}", + "emails.magicSession.subject": "เข้าสู่ระบบ", + "emails.magicSession.hello": "เรียนผู้ใช้งาน,", + "emails.magicSession.body": "กดเข้าไปที่ลิงก์นี้เพื่อเข้าสู่ระบบ", + "emails.magicSession.footer": "หากท่านไม่ได้ต้องการที่จะเข้าสู่ระบบด้วยอีเมลนี้ ท่านสามารถเพิกเฉยข้อความนี้ได้", + "emails.magicSession.thanks": "ขอบคุณ", + "emails.magicSession.signature": "ทีม {{project}}", + "emails.recovery.subject": "รีเซ็ตรหัสผ่าน", + "emails.recovery.hello": "เรียนคุณ {{name}}", + "emails.recovery.body": "กดเข้าไปที่ลิงก์นี้เพื่อรีเซ็ตรหัสผ่านสำหรับโปรเจกต์ {{project}} ของท่าน", + "emails.recovery.footer": "หากท่านไม่ได้ต้องการที่จะรีเซ็ตรหัสผ่านของท่าน ท่านสามารถเพิกเฉยข้อความนี้ได้", + "emails.recovery.thanks": "ขอบคุณ", + "emails.recovery.signature": "ทีม {{project}}", + "emails.invitation.subject": "เรียนเชิญเข้าร่วม ทีม %s จากโปรเจกต์ %s", + "emails.invitation.hello": "สวัสดี", + "emails.invitation.body": "ท่านได้รับอีเมลฉบับนี้เนื่องจาก {{owner}} ต้องการที่จะเชิญชวนคุณเข้าร่วมเป็นส่วนหนึ่งของ ทีม {{team}} จากโปรเจกต์ {{project}}", + "emails.invitation.footer": "หากท่านไม่ได้สนใจที่จะเข้าร่วม ท่านสามารถเพิกเฉยข้อความนี้ได้", + "emails.invitation.thanks": "ขอบคุณ", + "emails.invitation.signature": "ทีม {{project}}", "locale.country.unknown": "ไม่ทราบ", "countries.af": "อัฟกานิสถาน", "countries.ao": "แองโกลา", diff --git a/app/config/locale/translations/tl.json b/app/config/locale/translations/tl.json index 36598d5544..5c88e4cf69 100644 --- a/app/config/locale/translations/tl.json +++ b/app/config/locale/translations/tl.json @@ -3,25 +3,31 @@ "settings.locale": "tl", "settings.direction": "ltr", "emails.sender": "Pangkat ng %s", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", - "locale.country.unknown": "Hindi alam", + "emails.verification.subject": "Pagpapatunay ng account", + "emails.verification.hello": "Kamusta {{name}}", + "emails.verification.body": "Sundin ang link na ito upang ma-verify ang iyong email address.", + "emails.verification.footer": "Kung hindi mo hiningi na i-verify ang address na ito, maaari mong balewalain ang mensahe na ito.", + "emails.verification.thanks": "Salamat", + "emails.verification.signature": "Pangkat ng {{project}}", + "emails.magicSession.subject": "Mag log in", + "emails.magicSession.hello": "Kamusta, ", + "emails.magicSession.body": "Sundin ang link na ito upang mag-login.", + "emails.magicSession.footer": "Kung hindi mo hiningi na mag-login gamit ang email na ito, maaari mong balewalain ang mensahe na ito.", + "emails.magicSession.thanks": "Salamat", + "emails.magicSession.signature": "Pangkat ng {{project}}", + "emails.recovery.subject": "I-reset ang password", + "emails.recovery.hello": "Kamusta {{name}}", + "emails.recovery.body": "Sundin ang link na ito upang i-reset ang password ng iyong {{project}}.", + "emails.recovery.footer": "Kung hindi mo hiningi na i-reset ang iyong password, maaari mong balewalain ang mensahe na ito.", + "emails.recovery.thanks": "Salamat", + "emails.recovery.signature": "Pangkat ng {{project}}", + "emails.invitation.subject": "Imbitasyon para sa Pangkat %s sa %s", + "emails.invitation.hello": "Kamusta", + "emails.invitation.body": "Ipinadala sa iyo ang mail na ito dahil gusto kang imbitahan ni {{owner}} na maging miyembro ng Pangkat {{team}} sa ilalim ng proyektong {{project}}.", + "emails.invitation.footer": "Kung ikaw ay hindi interesado, maaari mong balewalain ang mensaheng ito.", + "emails.invitation.thanks": "Salamat", + "emails.invitation.signature": "Pangkat ng {{project}}", + "locale.country.unknown": "Hindi kilala", "countries.af": "Apganistan", "countries.ao": "Anggola", "countries.al": "Albanya", @@ -34,87 +40,87 @@ "countries.at": "Austria", "countries.az": "Aserbayan", "countries.bi": "Burundi", - "countries.be": "Belhika", + "countries.be": "Belgika", "countries.bj": "Benin", "countries.bf": "Burkina Faso", "countries.bd": "Bangladesh", "countries.bg": "Bulgarya", - "countries.bh": "Barein", + "countries.bh": "Bahrain", "countries.bs": "Bahamas", "countries.ba": "Bosnia at Herzegovina", - "countries.by": "Biyelorusya", - "countries.bz": "Belise", + "countries.by": "Belarus", + "countries.bz": "Belize", "countries.bo": "Bolivia", "countries.br": "Brasil", "countries.bb": "Barbados", - "countries.bn": "Brunay", - "countries.bt": "Butan", + "countries.bn": "Brunei", + "countries.bt": "Bhutan", "countries.bw": "Botswana", "countries.cf": "Republika ng Gitnang Aprika", "countries.ca": "Canada", "countries.ch": "Suwisa", "countries.cl": "Chile", "countries.cn": "Tsina", - "countries.ci": "Baybaying Garing", - "countries.cm": "Kamerun", + "countries.ci": "Baybayin ng Garing", + "countries.cm": "Cameroon", "countries.cd": "Demokratikong Republika ng Konggo", "countries.cg": "Republika ng Konggo", "countries.co": "Colombia", - "countries.km": "Komoros", - "countries.cv": "Kabo Berde", + "countries.km": "Comoros", + "countries.cv": "Cape Verde", "countries.cr": "Costa Rica", - "countries.cu": "Kuba", - "countries.cy": "Tsipre", - "countries.cz": "Republikang Tseko", + "countries.cu": "Cuba", + "countries.cy": "Cyprus", + "countries.cz": "Republika ng Tsek", "countries.de": "Alemanya", - "countries.dj": "Hiboti", + "countries.dj": "Djibouti", "countries.dm": "Dominika", - "countries.dk": "Dinamarka", + "countries.dk": "Denmark", "countries.do": "Republikang Dominikano", - "countries.dz": "Arhelya", + "countries.dz": "Algerya", "countries.ec": "Ekwador", "countries.eg": "Ehipto", "countries.er": "Eritrea", "countries.es": "Espanya", "countries.ee": "Estonia", - "countries.et": "Etiyopiya", + "countries.et": "Etyopya", "countries.fi": "Finland", - "countries.fj": "Piyi", - "countries.fr": "Pransiya", + "countries.fj": "Fiji", + "countries.fr": "Pransya", "countries.fm": "Mikronesya", "countries.ga": "Gabon", - "countries.gb": "Nagkakaisang Kaharian", - "countries.ge": "Heorhiya", + "countries.gb": "United Kingdom", + "countries.ge": "Georgia", "countries.gh": "Ghana", - "countries.gn": "Ginea", - "countries.gm": "Ang Gambiya", + "countries.gn": "Guinea", + "countries.gm": "Gambia", "countries.gw": "Ginea-Bissau", - "countries.gq": "Gineang Ekwatoriyal", + "countries.gq": "Equatorial Guinea", "countries.gr": "Gresya", "countries.gd": "Grenada", "countries.gt": "Guwatemala", "countries.gy": "Guyana", "countries.hn": "Honduras", "countries.hr": "Kroasya", - "countries.ht": "Hayti", + "countries.ht": "Haiti", "countries.hu": "Unggarya", "countries.id": "Indonesya", "countries.in": "Indiya", "countries.ie": "Irlanda", "countries.ir": "Iran", "countries.iq": "Irak", - "countries.is": "Lupangyelo", + "countries.is": "Islandia", "countries.il": "Israel", "countries.it": "Italya", - "countries.jm": "Hamayka", - "countries.jo": "Hordan", + "countries.jm": "Jamaica", + "countries.jo": "Jordan", "countries.jp": "Hapon", "countries.kz": "Kazakhstan", "countries.ke": "Kenya", - "countries.kg": "Kirgistan", + "countries.kg": "Kyrgyzstan", "countries.kh": "Kambodya", "countries.ki": "Kiribati", - "countries.kn": "San Cristobal at Niyebes", + "countries.kn": "Saint Kitts and Nevis", "countries.kr": "Timog Korea", "countries.kw": "Kuwait", "countries.la": "Laos", @@ -127,14 +133,14 @@ "countries.ls": "Lesoto", "countries.lt": "Litwaniya", "countries.lu": "Luxembourg", - "countries.lv": "Latbiya", - "countries.ma": "Maruekos", - "countries.mc": "Monako", - "countries.md": "Moldavia", + "countries.lv": "Latvia", + "countries.ma": "Morocco", + "countries.mc": "Monaco", + "countries.md": "Moldava", "countries.mg": "Madagaskar", "countries.mv": "Maldives", "countries.mx": "Mehiko", - "countries.mh": "Kapuluang Marshall", + "countries.mh": "Marshall Islands", "countries.mk": "Macedonia", "countries.ml": "Mali", "countries.mt": "Malta", @@ -143,15 +149,15 @@ "countries.mn": "Mongolia", "countries.mz": "Mozambique", "countries.mr": "Mauritania", - "countries.mu": "Maurisyo", + "countries.mu": "Mauritius", "countries.mw": "Malawi", - "countries.my": "Malasya", - "countries.na": "Namibya", - "countries.ne": "Niyer", + "countries.my": "Malaysia", + "countries.na": "Namibia", + "countries.ne": "Niger", "countries.ng": "Nigerya", "countries.ni": "Nicaragua", "countries.nl": "Olanda", - "countries.no": "Noruwega", + "countries.no": "Norwega", "countries.np": "Nepal", "countries.nr": "Nauru", "countries.nz": "New Zealand", @@ -160,45 +166,45 @@ "countries.pa": "Panama", "countries.pe": "Peru", "countries.ph": "Pilipinas", - "countries.pw": "Palaw", - "countries.pg": "Papua Bagong Guinea", - "countries.pl": "Polonya", + "countries.pw": "Palau", + "countries.pg": "Papua New Guinea", + "countries.pl": "Poland", "countries.kp": "Hilagang Korea", "countries.pt": "Portugal", "countries.py": "Paraguay", - "countries.qa": "Katar", - "countries.ro": "Rumanya", + "countries.qa": "Qatar", + "countries.ro": "Romania", "countries.ru": "Rusya", - "countries.rw": "Ruwanda", - "countries.sa": "Arabyang Saudi", + "countries.rw": "Rwanda", + "countries.sa": "Saudi Arabya", "countries.sd": "Sudan", "countries.sn": "Senegal", "countries.sg": "Singapore", "countries.sb": "Kapuluang Solomon", - "countries.sl": "Bulubunduking Leona", + "countries.sl": "Sierra Leone", "countries.sv": "El Salvador", "countries.sm": "San Marino", "countries.so": "Somalya", "countries.rs": "Serbya", "countries.ss": "Timog Sudan", - "countries.st": "Santo Tomé at Prinsipe", - "countries.sr": "Surinam", + "countries.st": "São Tomé and Príncipe", + "countries.sr": "Suriname", "countries.sk": "Slovakia", "countries.si": "Slovenia", - "countries.se": "Suwesya", - "countries.sz": "Suwasilandya", - "countries.sc": "Seyshels", + "countries.se": "Sweden", + "countries.sz": "Swaziland", + "countries.sc": "Seychelles", "countries.sy": "Syria", - "countries.td": "Tsad", + "countries.td": "Chad", "countries.tg": "Togo", "countries.th": "Taylandiya", "countries.tj": "Tayikistan", "countries.tm": "Turkmenistan", - "countries.tl": "Silangang Timor", + "countries.tl": "Timor-Leste", "countries.to": "Tonga", "countries.tt": "Trinidad at Tobago", "countries.tn": "Tunisya", - "countries.tr": "Pabo", + "countries.tr": "Turkey", "countries.tv": "Tuvalu", "countries.tz": "Tanzania", "countries.ug": "Uganda", @@ -206,21 +212,21 @@ "countries.uy": "Uruguay", "countries.us": "Estados Unidos", "countries.uz": "Uzbekistan", - "countries.va": "Lungsod ng Vaticano", - "countries.vc": "San Vicente at ang Kagranadinahan", + "countries.va": "Lungsod ng Vatican", + "countries.vc": "Saint Vincent at ang Grenadines", "countries.ve": "Venezuela", - "countries.vn": "Vietnam", + "countries.vn": "Byetnam", "countries.vu": "Vanuatu", "countries.ws": "Samoa", "countries.ye": "Yemen", "countries.za": "Timog Aprika", - "countries.zm": "Sambya", + "countries.zm": "Zambia", "countries.zw": "Simbabwe", "continents.af": "Aprika", "continents.an": "Antartika", "continents.as": "Asya", "continents.eu": "Europa", - "continents.na": "Amerika Norte", - "continents.oc": "Oceanya", - "continents.sa": "Amerika Sur" + "continents.na": "Hilagang Amerika", + "continents.oc": "Oceania", + "continents.sa": "Timog Amerika" } \ No newline at end of file diff --git a/app/config/locale/translations/tr.json b/app/config/locale/translations/tr.json index 7441fa76da..6a94aeacae 100644 --- a/app/config/locale/translations/tr.json +++ b/app/config/locale/translations/tr.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/uk.json b/app/config/locale/translations/uk.json index 5358b100f7..ed87f08467 100644 --- a/app/config/locale/translations/uk.json +++ b/app/config/locale/translations/uk.json @@ -1,26 +1,32 @@ { - "settings.inspire": "\"The art of being wise is the art of knowing what to overlook.\"", + "settings.inspire": "\"Мистецтво бути мудрим - це мистецтво знати, чим можна знехтувати\"", "settings.locale": "uk", "settings.direction": "ltr", "emails.sender": "Команда %s", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "Верифікація акаунта", + "emails.verification.hello": "Вітаємо, {{name}}", + "emails.verification.body": "Перейдіть за цим посиланням, щоб підтвердити свою електронну адресу.", + "emails.verification.footer": "Якщо ви не запитували підтвердження цієї адреси, ви можете ігнорувати це повідомлення.", + "emails.verification.thanks": "Дякуємо", + "emails.verification.signature": "команда {{project}}", + "emails.magicSession.subject": "Логін", + "emails.magicSession.hello": "Вітаємо,", + "emails.magicSession.body": "Перейдіть за цим посиланням, щоб увійти.", + "emails.magicSession.footer": "Якщо ви не просили увійти за допомогою цієї електронної пошти, ви можете ігнорувати це повідомлення.", + "emails.magicSession.thanks": "Дякуємо", + "emails.magicSession.signature": "команда {{project}}", + "emails.recovery.subject": "Скидання пароля", + "emails.recovery.hello": "Вітаємо, {{name}}", + "emails.recovery.body": "Перейдіть за цим посиланням для того щоб скинути свій пароль для проекту {{project}}", + "emails.recovery.footer": "Якщо ви не запитували скидання паролю, проігноруйте це повідомлення.", + "emails.recovery.thanks": "Дякуємо", + "emails.recovery.signature": "команда {{project}}", + "emails.invitation.subject": "Запрошення до %s Команди у %s", + "emails.invitation.hello": "Вітаємо", + "emails.invitation.body": "Цей лист був надісланий вам тому що {{owner}} запрошує вас стати членом команди {{team}} у проекті {{project}}.", + "emails.invitation.footer": "Якщо ви не зацікавлені, проігноруйте це повідомлення.", + "emails.invitation.thanks": "Дякуємо", + "emails.invitation.signature": "команда {{project}}", "locale.country.unknown": "Невідомо", "countries.af": "Афганістан", "countries.ao": "Ангола", @@ -223,4 +229,4 @@ "continents.na": "Північна Америка", "continents.oc": "Океанія", "continents.sa": "Південна Америка" -} \ No newline at end of file +} diff --git a/app/config/locale/translations/ur.json b/app/config/locale/translations/ur.json index 00e11c9646..2f73bec143 100644 --- a/app/config/locale/translations/ur.json +++ b/app/config/locale/translations/ur.json @@ -9,6 +9,12 @@ "emails.verification.footer": "", "emails.verification.thanks": "", "emails.verification.signature": "", + "emails.magicSession.subject": "", + "emails.magicSession.hello": "", + "emails.magicSession.body": "", + "emails.magicSession.footer": "", + "emails.magicSession.thanks": "", + "emails.magicSession.signature": "", "emails.recovery.subject": "", "emails.recovery.hello": "", "emails.recovery.body": "", diff --git a/app/config/locale/translations/vi.json b/app/config/locale/translations/vi.json index b76724b8a4..8c72832d2f 100644 --- a/app/config/locale/translations/vi.json +++ b/app/config/locale/translations/vi.json @@ -2,46 +2,52 @@ "settings.inspire": "\"Nghệ thuật khôn ngoan là nghệ thuật biết những gì cần bỏ qua.\"", "settings.locale": "vi", "settings.direction": "ltr", - "emails.sender": "%s Team", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", - "locale.country.unknown": "Chưa xác định", + "emails.sender": "Nhóm %s", + "emails.verification.subject": "Xác minh tài khoản", + "emails.verification.hello": "Chào {{name}}", + "emails.verification.body": "Nhấn vào đường dẫn sau để xác minh địa chỉ email của bạn.", + "emails.verification.footer": "Nếu bạn không yêu cầu xác minh tài khoản, bạn có thể bỏ qua email này.", + "emails.verification.thanks": "Cảm ơn", + "emails.verification.signature": "Nhóm {{project}}", + "emails.magicSession.subject": "Đăng nhập", + "emails.magicSession.hello": "Chào,", + "emails.magicSession.body": "Nhấn vào đường dẫn sau để đăng nhập.", + "emails.magicSession.footer": "Nếu bạn không yêu cầu đăng nhập bằng email, bạn có thể bỏ qua email này.", + "emails.magicSession.thanks": "Cảm ơn", + "emails.magicSession.signature": "Nhóm {{project}}", + "emails.recovery.subject": "Thiết lập lại mật khẩu", + "emails.recovery.hello": "Chào {{name}}", + "emails.recovery.body": "Nhấn vào đường dẫn sau để thiết lập lại mật khẩu {{project}} của bạn.", + "emails.recovery.footer": "Nếu bạn không yêu cầu thiết lập lại mật khẩu, bạn có thể bỏ qua email này.", + "emails.recovery.thanks": "Cảm ơn", + "emails.recovery.signature": "Nhóm {{project}}", + "emails.invitation.subject": "Lời mời tham gia nhóm %s tại %s", + "emails.invitation.hello": "Xin chào", + "emails.invitation.body": "Email này được gửi cho bạn vì {{owner}} muốn mời bạn trở thành một thành viên của nhóm {{team}} tại {{project}}.", + "emails.invitation.footer": "Nếu bạn không quan tâm, bạn có thể bỏ qua email này.", + "emails.invitation.thanks": "Cảm ơn", + "emails.invitation.signature": "Nhóm {{project}}", + "locale.country.unknown": "Không xác định", "countries.af": "Afghanistan", "countries.ao": "Angola", "countries.al": "Albania", "countries.ad": "Andorra", - "countries.ae": "United Arab Emirates", + "countries.ae": "Các tiểu vương quốc Ả Rập Thống nhất", "countries.ar": "Argentina", "countries.am": "Armenia", - "countries.ag": "Antigua and Barbuda", - "countries.au": "Australia", - "countries.at": "Austria", + "countries.ag": "Antigua và Barbuda", + "countries.au": "Úc", + "countries.at": "Áo", "countries.az": "Azerbaijan", "countries.bi": "Burundi", - "countries.be": "Belgium", + "countries.be": "Bỉ", "countries.bj": "Benin", "countries.bf": "Burkina Faso", "countries.bd": "Bangladesh", "countries.bg": "Bulgaria", "countries.bh": "Bahrain", "countries.bs": "Bahamas", - "countries.ba": "Bosnia and Herzegovina", + "countries.ba": "Bosnia và Herzegovina", "countries.by": "Belarus", "countries.bz": "Belize", "countries.bo": "Bolivia", @@ -50,47 +56,47 @@ "countries.bn": "Brunei", "countries.bt": "Bhutan", "countries.bw": "Botswana", - "countries.cf": "Central African Republic", + "countries.cf": "Cộng Hoà Trung Phi", "countries.ca": "Canada", - "countries.ch": "Switzerland", + "countries.ch": "Thuỵ Sĩ", "countries.cl": "Chile", - "countries.cn": "China", - "countries.ci": "Ivory Coast", + "countries.cn": "Trung Quốc", + "countries.ci": "Bờ Biển Ngà", "countries.cm": "Cameroon", - "countries.cd": "DR Congo", - "countries.cg": "Republic of the Congo", + "countries.cd": "Cộng hòa Dân chủ Congo", + "countries.cg": "Cộng hòa Congo", "countries.co": "Colombia", "countries.km": "Comoros", "countries.cv": "Cape Verde", "countries.cr": "Costa Rica", "countries.cu": "Cuba", - "countries.cy": "Cyprus", - "countries.cz": "Czechia", - "countries.de": "Germany", + "countries.cy": "Đảo Síp", + "countries.cz": "Cộng hòa Séc", + "countries.de": "Đức", "countries.dj": "Djibouti", "countries.dm": "Dominica", - "countries.dk": "Denmark", - "countries.do": "Dominican Republic", + "countries.dk": "Đan Mạch", + "countries.do": "Cộng hoà Dominica", "countries.dz": "Algeria", "countries.ec": "Ecuador", - "countries.eg": "Egypt", + "countries.eg": "Ai Cập", "countries.er": "Eritrea", - "countries.es": "Spain", + "countries.es": "Tây Ban Nha", "countries.ee": "Estonia", "countries.et": "Ethiopia", - "countries.fi": "Finland", + "countries.fi": "Phần Lan", "countries.fj": "Fiji", - "countries.fr": "France", + "countries.fr": "Pháp", "countries.fm": "Micronesia", "countries.ga": "Gabon", - "countries.gb": "United Kingdom", - "countries.ge": "Georgia", + "countries.gb": "Vương quốc Anh", + "countries.ge": "Gruzia", "countries.gh": "Ghana", "countries.gn": "Guinea", "countries.gm": "Gambia", "countries.gw": "Guinea-Bissau", - "countries.gq": "Equatorial Guinea", - "countries.gr": "Greece", + "countries.gq": "Guinea Xích đạo", + "countries.gr": "Hi Lạp", "countries.gd": "Grenada", "countries.gt": "Guatemala", "countries.gy": "Guyana", @@ -99,48 +105,48 @@ "countries.ht": "Haiti", "countries.hu": "Hungary", "countries.id": "Indonesia", - "countries.in": "India", + "countries.in": "Ấn Độ", "countries.ie": "Ireland", "countries.ir": "Iran", "countries.iq": "Iraq", "countries.is": "Iceland", "countries.il": "Israel", - "countries.it": "Italy", + "countries.it": "Ý", "countries.jm": "Jamaica", "countries.jo": "Jordan", - "countries.jp": "Japan", + "countries.jp": "Nhật Bản", "countries.kz": "Kazakhstan", "countries.ke": "Kenya", "countries.kg": "Kyrgyzstan", - "countries.kh": "Cambodia", + "countries.kh": "Campuchia", "countries.ki": "Kiribati", - "countries.kn": "Saint Kitts and Nevis", - "countries.kr": "South Korea", + "countries.kn": "Saint Kitts và Nevis", + "countries.kr": "Hàn Quốc", "countries.kw": "Kuwait", - "countries.la": "Laos", - "countries.lb": "Lebanon", + "countries.la": "Lào", + "countries.lb": "Li Băng", "countries.lr": "Liberia", "countries.ly": "Libya", "countries.lc": "Saint Lucia", "countries.li": "Liechtenstein", "countries.lk": "Sri Lanka", "countries.ls": "Lesotho", - "countries.lt": "Lithuania", + "countries.lt": "Litva", "countries.lu": "Luxembourg", "countries.lv": "Latvia", - "countries.ma": "Morocco", + "countries.ma": "Ma Rốc", "countries.mc": "Monaco", "countries.md": "Moldova", "countries.mg": "Madagascar", "countries.mv": "Maldives", "countries.mx": "Mexico", - "countries.mh": "Marshall Islands", + "countries.mh": "Quần đảo Marshall", "countries.mk": "Macedonia", "countries.ml": "Mali", "countries.mt": "Malta", "countries.mm": "Myanmar", "countries.me": "Montenegro", - "countries.mn": "Mongolia", + "countries.mn": "Mông Cổ", "countries.mz": "Mozambique", "countries.mr": "Mauritania", "countries.mu": "Mauritius", @@ -150,8 +156,8 @@ "countries.ne": "Niger", "countries.ng": "Nigeria", "countries.ni": "Nicaragua", - "countries.nl": "Netherlands", - "countries.no": "Norway", + "countries.nl": "Hà Lan", + "countries.no": "Na Uy", "countries.np": "Nepal", "countries.nr": "Nauru", "countries.nz": "New Zealand", @@ -162,58 +168,58 @@ "countries.ph": "Philippines", "countries.pw": "Palau", "countries.pg": "Papua New Guinea", - "countries.pl": "Poland", - "countries.kp": "North Korea", - "countries.pt": "Portugal", + "countries.pl": "Ba Lan", + "countries.kp": "Triều Tiên", + "countries.pt": "Bồ Đào Nha", "countries.py": "Paraguay", "countries.qa": "Qatar", "countries.ro": "Romania", - "countries.ru": "Russia", + "countries.ru": "Nga", "countries.rw": "Rwanda", - "countries.sa": "Saudi Arabia", + "countries.sa": "Ả Rập Xê Út", "countries.sd": "Sudan", "countries.sn": "Senegal", "countries.sg": "Singapore", - "countries.sb": "Solomon Islands", + "countries.sb": "Quần đảo Solomon", "countries.sl": "Sierra Leone", "countries.sv": "El Salvador", "countries.sm": "San Marino", "countries.so": "Somalia", "countries.rs": "Serbia", - "countries.ss": "South Sudan", - "countries.st": "São Tomé and Príncipe", + "countries.ss": "Nam Sudan", + "countries.st": "São Tomé và Príncipe", "countries.sr": "Suriname", "countries.sk": "Slovakia", "countries.si": "Slovenia", - "countries.se": "Sweden", + "countries.se": "Thuỵ Điển", "countries.sz": "Swaziland", "countries.sc": "Seychelles", "countries.sy": "Syria", "countries.td": "Chad", "countries.tg": "Togo", - "countries.th": "Thailand", + "countries.th": "Thái Lan", "countries.tj": "Tajikistan", "countries.tm": "Turkmenistan", "countries.tl": "Timor-Leste", "countries.to": "Tonga", - "countries.tt": "Trinidad and Tobago", + "countries.tt": "Trinidad và Tobago", "countries.tn": "Tunisia", - "countries.tr": "Turkey", + "countries.tr": "Thổ Nhĩ Kỳ", "countries.tv": "Tuvalu", "countries.tz": "Tanzania", "countries.ug": "Uganda", "countries.ua": "Ukraine", "countries.uy": "Uruguay", - "countries.us": "United States", + "countries.us": "Hoa Kỳ", "countries.uz": "Uzbekistan", - "countries.va": "Vatican City", - "countries.vc": "Saint Vincent and the Grenadines", + "countries.va": "Thành Vatican", + "countries.vc": "Saint Vincent và Grenadines", "countries.ve": "Venezuela", "countries.vn": "Việt Nam", "countries.vu": "Vanuatu", "countries.ws": "Samoa", "countries.ye": "Yemen", - "countries.za": "South Africa", + "countries.za": "Nam Phi", "countries.zm": "Zambia", "countries.zw": "Zimbabwe", "continents.af": "Châu Phi", diff --git a/app/config/locale/translations/zh-cn.json b/app/config/locale/translations/zh-cn.json index 8575ebb9b8..fa997c07f6 100644 --- a/app/config/locale/translations/zh-cn.json +++ b/app/config/locale/translations/zh-cn.json @@ -3,24 +3,30 @@ "settings.locale": "zh", "settings.direction": "ltr", "emails.sender": "%s 小组", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "帐户验证", + "emails.verification.hello": "你好 {{name}}", + "emails.verification.body": "点此链接验证您的电子邮件地址。", + "emails.verification.footer": "如果您没有要求验证此地址,则可忽略此消息。", + "emails.verification.thanks": "谢谢", + "emails.verification.signature": "{{project}} 团队", + "emails.magicSession.subject": "登录", + "emails.magicSession.hello": "你好,", + "emails.magicSession.body": "点此链接登录。", + "emails.magicSession.footer": "如果您没有要求使用此电子邮件登录,则可忽略此消息。", + "emails.magicSession.thanks": "谢谢", + "emails.magicSession.signature": "{{project}} 团队", + "emails.recovery.subject": "重设密码", + "emails.recovery.hello": "你好 {{name}}", + "emails.recovery.body": "点此链接重置您的 {{project}} 密码。", + "emails.recovery.footer": "如果您没有要求重置密码,则可以忽略此消息。", + "emails.recovery.thanks": "谢谢", + "emails.recovery.signature": "{{project}} 团队", + "emails.invitation.subject": "邀请 %s 团队在 %s", + "emails.invitation.hello": "你好", + "emails.invitation.body": "这封邮件发送给您是因为 {{owner}} 想邀请您成为 {{team}} 团队在 {{project}}.", + "emails.invitation.footer": "如果您不感兴趣,可以忽略此消息。", + "emails.invitation.thanks": "谢谢", + "emails.invitation.signature": "{{project}} 团队", "locale.country.unknown": "未知", "countries.af": "阿富汗", "countries.ao": "安哥拉", @@ -223,4 +229,4 @@ "continents.na": "北美洲", "continents.oc": "大洋洲", "continents.sa": "南美洲" -} \ No newline at end of file +} diff --git a/app/config/locale/translations/zh-tw.json b/app/config/locale/translations/zh-tw.json index f37f2e1be0..2edba9f49d 100644 --- a/app/config/locale/translations/zh-tw.json +++ b/app/config/locale/translations/zh-tw.json @@ -3,24 +3,30 @@ "settings.locale": "zh-tw", "settings.direction": "ltr", "emails.sender": "%s 小組", - "emails.verification.subject": "", - "emails.verification.hello": "", - "emails.verification.body": "", - "emails.verification.footer": "", - "emails.verification.thanks": "", - "emails.verification.signature": "", - "emails.recovery.subject": "", - "emails.recovery.hello": "", - "emails.recovery.body": "", - "emails.recovery.footer": "", - "emails.recovery.thanks": "", - "emails.recovery.signature": "", - "emails.invitation.subject": "", - "emails.invitation.hello": "", - "emails.invitation.body": "", - "emails.invitation.footer": "", - "emails.invitation.thanks": "", - "emails.invitation.signature": "", + "emails.verification.subject": "帳戶驗證", + "emails.verification.hello": "嗨 {{name}}", + "emails.verification.body": "按照此鏈接驗證您的電子郵件地址。", + "emails.verification.footer": "如果您沒有要求驗證此地址,則可以忽略此消息。", + "emails.verification.thanks": "謝謝", + "emails.verification.signature": "{{project}} 團隊", + "emails.magicSession.subject": "登錄", + "emails.magicSession.hello": "嗨", + "emails.magicSession.body": "點此鏈接登錄。", + "emails.magicSession.footer": "如果您沒有要求使用此電子郵件登錄,則可以忽略此消息。", + "emails.magicSession.thanks": "謝謝", + "emails.magicSession.signature": "{{project}} 團隊", + "emails.recovery.subject": "重設密碼", + "emails.recovery.hello": "你好 {{name}}", + "emails.recovery.body": "按照此鏈接重置您的 {{project}} 密碼.", + "emails.recovery.footer": "如果您沒有要求重置密碼,則可以忽略此消息。", + "emails.recovery.thanks": "謝謝", + "emails.recovery.signature": "{{project}} 團隊", + "emails.invitation.subject": "邀請 %s 團隊在 %s", + "emails.invitation.hello": "你好", + "emails.invitation.body": "這封郵件發送給您是因為 {{owner}} 想邀請您成為 {{team}} 團隊在 {{project}}.", + "emails.invitation.footer": "如果您不感興趣,可以忽略此消息。", + "emails.invitation.thanks": "謝謝", + "emails.invitation.signature": "{{project}} 團隊", "locale.country.unknown": "未知", "countries.af": "阿富汗", "countries.ao": "安哥拉", diff --git a/app/config/platforms.php b/app/config/platforms.php index 348aa18cb4..f97d598086 100644 --- a/app/config/platforms.php +++ b/app/config/platforms.php @@ -15,7 +15,7 @@ return [ [ 'key' => 'web', 'name' => 'Web', - 'version' => '4.0.1', + 'version' => '5.0.0', 'url' => 'https://github.com/appwrite/sdk-for-web', 'package' => 'https://www.npmjs.com/package/appwrite', 'enabled' => true, @@ -28,6 +28,7 @@ return [ 'gitUrl' => 'git@github.com:appwrite/sdk-for-web.git', 'gitRepoName' => 'sdk-for-web', 'gitUserName' => 'appwrite', + 'gitBranch' => 'master', 'demos' => [ [ 'icon' => 'react.svg', @@ -62,11 +63,11 @@ return [ [ 'key' => 'flutter', 'name' => 'Flutter', - 'version' => '1.0.2', + 'version' => '2.0.3', 'url' => 'https://github.com/appwrite/sdk-for-flutter', 'package' => 'https://pub.dev/packages/appwrite', 'enabled' => true, - 'beta' => true, + 'beta' => false, 'dev' => false, 'hidden' => false, 'family' => APP_PLATFORM_CLIENT, @@ -75,22 +76,25 @@ return [ 'gitUrl' => 'git@github.com:appwrite/sdk-for-flutter.git', 'gitRepoName' => 'sdk-for-flutter', 'gitUserName' => 'appwrite', + 'gitBranch' => 'master', ], [ - 'key' => 'swift', - 'name' => 'Swift', - 'url' => '', - 'package' => '', - 'enabled' => false, - 'beta' => false, + 'key' => 'apple', + 'name' => 'Apple', + 'version' => '0.1.1', + 'url' => 'https://github.com/appwrite/sdk-for-apple', + 'package' => 'https://github.com/appwrite/sdk-for-apple', + 'enabled' => true, + 'beta' => true, 'dev' => false, 'hidden' => false, 'family' => APP_PLATFORM_CLIENT, 'prism' => 'swift', - 'source' => false, - 'gitUrl' => 'git@github.com:appwrite/sdk-for-swift.git', - 'gitRepoName' => 'sdk-for-swift', + 'source' => \realpath(__DIR__ . '/../sdks/client-apple'), + 'gitUrl' => 'git@github.com:appwrite/sdk-for-apple.git', + 'gitRepoName' => 'sdk-for-apple', 'gitUserName' => 'appwrite', + 'gitBranch' => 'master', ], [ 'key' => 'objective-c', @@ -107,11 +111,12 @@ return [ 'gitUrl' => 'git@github.com:appwrite/sdk-for-objective-c.git', 'gitRepoName' => 'sdk-for-objective-c', 'gitUserName' => 'appwrite', + 'gitBranch' => 'master', ], [ 'key' => 'android', 'name' => 'Android', - 'version' => '0.2.0', + 'version' => '0.2.1', 'url' => 'https://github.com/appwrite/sdk-for-android', 'package' => 'https://search.maven.org/artifact/io.appwrite/sdk-for-android', 'enabled' => true, @@ -124,6 +129,7 @@ return [ 'gitUrl' => 'git@github.com:appwrite/sdk-for-android.git', 'gitRepoName' => 'sdk-for-android', 'gitUserName' => 'appwrite', + 'gitBranch' => 'main', 'docDirectories' => [ 'Kotlin' => 'kotlin', 'Java' => 'java', @@ -156,7 +162,7 @@ return [ [ 'key' => 'web', 'name' => 'Console', - 'version' => '4.0.1', + 'version' => '4.0.4', 'url' => 'https://github.com/appwrite/sdk-for-console', 'package' => '', 'enabled' => true, @@ -167,6 +173,7 @@ return [ 'prism' => 'console', 'source' => \realpath(__DIR__ . '/../sdks/console-web'), 'gitUrl' => null, + 'gitBranch' => null, 'gitRepoName' => 'sdk-for-console', 'gitUserName' => 'appwrite', ], @@ -183,7 +190,7 @@ return [ [ 'key' => 'nodejs', 'name' => 'Node.js', - 'version' => '2.5.0', + 'version' => '3.0.0', 'url' => 'https://github.com/appwrite/sdk-for-node', 'package' => 'https://www.npmjs.com/package/node-appwrite', 'enabled' => true, @@ -196,15 +203,16 @@ return [ 'gitUrl' => 'git@github.com:appwrite/sdk-for-node.git', 'gitRepoName' => 'sdk-for-node', 'gitUserName' => 'appwrite', + 'gitBranch' => 'master', ], [ 'key' => 'deno', 'name' => 'Deno', - 'version' => '0.4.0', + 'version' => '1.0.0', 'url' => 'https://github.com/appwrite/sdk-for-deno', 'package' => 'https://deno.land/x/appwrite', 'enabled' => true, - 'beta' => true, + 'beta' => false, 'dev' => false, 'hidden' => false, 'family' => APP_PLATFORM_SERVER, @@ -213,11 +221,12 @@ return [ 'gitUrl' => 'git@github.com:appwrite/sdk-for-deno.git', 'gitRepoName' => 'sdk-for-deno', 'gitUserName' => 'appwrite', + 'gitBranch' => 'master', ], [ 'key' => 'php', 'name' => 'PHP', - 'version' => '2.3.1', + 'version' => '2.3.2', 'url' => 'https://github.com/appwrite/sdk-for-php', 'package' => 'https://packagist.org/packages/appwrite/appwrite', 'enabled' => true, @@ -230,11 +239,12 @@ return [ 'gitUrl' => 'git@github.com:appwrite/sdk-for-php.git', 'gitRepoName' => 'sdk-for-php', 'gitUserName' => 'appwrite', + 'gitBranch' => 'master', ], [ 'key' => 'python', 'name' => 'Python', - 'version' => '0.5.0', + 'version' => '0.5.1', 'url' => 'https://github.com/appwrite/sdk-for-python', 'package' => 'https://pypi.org/project/appwrite/', 'enabled' => true, @@ -247,11 +257,12 @@ return [ 'gitUrl' => 'git@github.com:appwrite/sdk-for-python.git', 'gitRepoName' => 'sdk-for-python', 'gitUserName' => 'appwrite', + 'gitBranch' => 'master', ], [ 'key' => 'ruby', 'name' => 'Ruby', - 'version' => '2.4.0', + 'version' => '2.4.1', 'url' => 'https://github.com/appwrite/sdk-for-ruby', 'package' => 'https://rubygems.org/gems/appwrite', 'enabled' => true, @@ -264,6 +275,7 @@ return [ 'gitUrl' => 'git@github.com:appwrite/sdk-for-ruby.git', 'gitRepoName' => 'sdk-for-ruby', 'gitUserName' => 'appwrite', + 'gitBranch' => 'master', ], [ 'key' => 'go', @@ -281,6 +293,7 @@ return [ 'gitUrl' => 'git@github.com:appwrite/sdk-for-go.git', 'gitRepoName' => 'sdk-for-go', 'gitUserName' => 'appwrite', + 'gitBranch' => 'master', ], [ 'key' => 'java', @@ -298,6 +311,7 @@ return [ 'gitUrl' => 'git@github.com:appwrite/sdk-for-java.git', 'gitRepoName' => 'sdk-for-java', 'gitUserName' => 'appwrite', + 'gitBranch' => 'master', ], [ 'key' => 'dotnet', @@ -305,7 +319,7 @@ return [ 'version' => '0.3.0', 'url' => 'https://github.com/appwrite/sdk-for-dotnet', 'package' => 'https://www.nuget.org/packages/Appwrite', - 'enabled' => true, + 'enabled' => false, 'beta' => true, 'dev' => true, 'hidden' => false, @@ -315,15 +329,16 @@ return [ 'gitUrl' => 'git@github.com:appwrite/sdk-for-dotnet.git', 'gitRepoName' => 'sdk-for-dotnet', 'gitUserName' => 'appwrite', + 'gitBranch' => 'main', ], [ 'key' => 'dart', 'name' => 'Dart', - 'version' => '1.0.1', + 'version' => '1.0.2', 'url' => 'https://github.com/appwrite/sdk-for-dart', 'package' => 'https://pub.dev/packages/dart_appwrite', 'enabled' => true, - 'beta' => true, + 'beta' => false, 'dev' => false, 'hidden' => false, 'family' => APP_PLATFORM_SERVER, @@ -332,11 +347,12 @@ return [ 'gitUrl' => 'git@github.com:appwrite/sdk-for-dart.git', 'gitRepoName' => 'sdk-for-dart', 'gitUserName' => 'appwrite', + 'gitBranch' => 'master', ], [ 'key' => 'cli', 'name' => 'Command Line', - 'version' => '0.12.0', + 'version' => '0.12.1', 'url' => 'https://github.com/appwrite/sdk-for-cli', 'package' => 'https://github.com/appwrite/sdk-for-cli', 'enabled' => true, @@ -349,11 +365,12 @@ return [ 'gitUrl' => 'git@github.com:appwrite/sdk-for-cli.git', 'gitRepoName' => 'sdk-for-cli', 'gitUserName' => 'appwrite', + 'gitBranch' => 'master', ], [ 'key' => 'kotlin', 'name' => 'Kotlin', - 'version' => '0.1.0', + 'version' => '0.1.1', 'url' => 'https://github.com/appwrite/sdk-for-kotlin', 'package' => 'https://search.maven.org/artifact/io.appwrite/sdk-for-kotlin', 'enabled' => true, @@ -366,11 +383,30 @@ return [ 'gitUrl' => 'git@github.com:appwrite/sdk-for-kotlin.git', 'gitRepoName' => 'sdk-for-kotlin', 'gitUserName' => 'appwrite', + 'gitBranch' => 'main', 'docDirectories' => [ 'Kotlin' => 'kotlin', 'Java' => 'java', ], ], + [ + 'key' => 'swift', + 'name' => 'Swift', + 'version' => '0.1.0', + 'url' => 'https://github.com/appwrite/sdk-for-swift', + 'package' => 'https://github.com/appwrite/sdk-for-swift', + 'enabled' => true, + 'beta' => true, + 'dev' => false, + 'hidden' => false, + 'family' => APP_PLATFORM_SERVER, + 'prism' => 'swift', + 'source' => \realpath(__DIR__ . '/../sdks/server-swift'), + 'gitUrl' => 'git@github.com:appwrite/sdk-for-swift.git', + 'gitRepoName' => 'sdk-for-swift', + 'gitUserName' => 'appwrite', + 'gitBranch' => 'main', + ], ], ], ]; diff --git a/app/config/specs/0.11.x.client.json b/app/config/specs/0.11.x.client.json new file mode 100644 index 0000000000..5e829236e3 --- /dev/null +++ b/app/config/specs/0.11.x.client.json @@ -0,0 +1 @@ +{"swagger":"2.0","info":{"version":"0.11.0","title":"Appwrite","description":"Appwrite backend as a service cuts up to 70% of the time and costs required for building a modern application. We abstract and simplify common development tasks behind a REST APIs, to help you develop your app in a fast and secure way. For full API documentation and tutorials go to [https:\/\/appwrite.io\/docs](https:\/\/appwrite.io\/docs)","termsOfService":"https:\/\/appwrite.io\/policy\/terms","contact":{"name":"Appwrite Team","url":"https:\/\/appwrite.io\/support","email":"team@appwrite.io"},"license":{"name":"BSD-3-Clause","url":"https:\/\/raw.githubusercontent.com\/appwrite\/appwrite\/master\/LICENSE"}},"host":"appwrite.io","basePath":"\/v1","schemes":["https"],"consumes":["application\/json","multipart\/form-data"],"produces":["application\/json"],"securityDefinitions":{"Project":{"type":"apiKey","name":"X-Appwrite-Project","description":"Your project ID","in":"header","x-appwrite":{"demo":"5df5acd0d48c2"}},"JWT":{"type":"apiKey","name":"X-Appwrite-JWT","description":"Your secret JSON Web Token","in":"header","x-appwrite":{"demo":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ..."}},"Locale":{"type":"apiKey","name":"X-Appwrite-Locale","description":"","in":"header","x-appwrite":{"demo":"en"}}},"paths":{"\/account":{"get":{"summary":"Get Account","operationId":"accountGet","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Get currently logged in user data as JSON object.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"get","weight":47,"cookies":false,"type":"","demo":"account\/get.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/get.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]},"post":{"summary":"Create Account","operationId":"accountCreate","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to allow a new user to register a new account in your project. After the user registration completes successfully, you can use the [\/account\/verfication](\/docs\/client\/account#accountCreateVerification) route to start verifying the user email address. To allow the new user to login to their new account, you need to create a new [account session](\/docs\/client\/account#accountCreateSession).","responses":{"201":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"create","weight":37,"cookies":false,"type":"","demo":"account\/create.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"public","platforms":["client"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"User email.","default":null,"x-example":"email@example.com"},"password":{"type":"string","description":"User password. Must be between 6 to 32 chars.","default":null,"x-example":"password"},"name":{"type":"string","description":"User name. Max length: 128 chars.","default":"","x-example":"[NAME]"}},"required":["email","password"]}}]},"delete":{"summary":"Delete Account","operationId":"accountDelete","consumes":["application\/json"],"produces":[],"tags":["account"],"description":"Delete a currently logged in user account. Behind the scene, the user record is not deleted but permanently blocked from any access. This is done to avoid deleted accounts being overtaken by new users with the same email address. Any user-related resources like documents or storage files should be deleted separately.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"delete","weight":56,"cookies":false,"type":"","demo":"account\/delete.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/delete.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]}},"\/account\/email":{"patch":{"summary":"Update Account Email","operationId":"accountUpdateEmail","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Update currently logged in user account email address. After changing user address, user confirmation status is being reset and a new confirmation mail is sent. For security measures, user password is required to complete this request.\nThis endpoint can also be used to convert an anonymous account to a normal one, by passing an email address and a new password.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updateEmail","weight":54,"cookies":false,"type":"","demo":"account\/update-email.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-email.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"User email.","default":null,"x-example":"email@example.com"},"password":{"type":"string","description":"User password. Must be between 6 to 32 chars.","default":null,"x-example":"password"}},"required":["email","password"]}}]}},"\/account\/jwt":{"post":{"summary":"Create Account JWT","operationId":"accountCreateJWT","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to create a JSON Web Token. You can use the resulting JWT to authenticate on behalf of the current user when working with the Appwrite server-side API and SDKs. The JWT secret is valid for 15 minutes from its creation and will be invalid if the user will logout in that time frame.","responses":{"201":{"description":"JWT","schema":{"$ref":"#\/definitions\/jwt"}}},"x-appwrite":{"method":"createJWT","weight":46,"cookies":false,"type":"","demo":"account\/create-j-w-t.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-jwt.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},userId:{userId}","scope":"account","platforms":["client"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}]}},"\/account\/logs":{"get":{"summary":"Get Account Logs","operationId":"accountGetLogs","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Get currently logged in user list of latest security activity logs. Each log returns user IP address, location and date and time of log.","responses":{"200":{"description":"Logs List","schema":{"$ref":"#\/definitions\/logList"}}},"x-appwrite":{"method":"getLogs","weight":50,"cookies":false,"type":"","demo":"account\/get-logs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/get-logs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]}},"\/account\/name":{"patch":{"summary":"Update Account Name","operationId":"accountUpdateName","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Update currently logged in user account name.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updateName","weight":52,"cookies":false,"type":"","demo":"account\/update-name.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-name.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"User name. Max length: 128 chars.","default":null,"x-example":"[NAME]"}},"required":["name"]}}]}},"\/account\/password":{"patch":{"summary":"Update Account Password","operationId":"accountUpdatePassword","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Update currently logged in user password. For validation, user is required to pass in the new password, and the old password. For users created with OAuth and Team Invites, oldPassword is optional.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updatePassword","weight":53,"cookies":false,"type":"","demo":"account\/update-password.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-password.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"password":{"type":"string","description":"New user password. Must be between 6 to 32 chars.","default":null,"x-example":"password"},"oldPassword":{"type":"string","description":"Old user password. Must be between 6 to 32 chars.","default":"","x-example":"password"}},"required":["password"]}}]}},"\/account\/prefs":{"get":{"summary":"Get Account Preferences","operationId":"accountGetPrefs","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Get currently logged in user preferences as a key-value object.","responses":{"200":{"description":"Preferences","schema":{"$ref":"#\/definitions\/preferences"}}},"x-appwrite":{"method":"getPrefs","weight":48,"cookies":false,"type":"","demo":"account\/get-prefs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/get-prefs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]},"patch":{"summary":"Update Account Preferences","operationId":"accountUpdatePrefs","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Update currently logged in user account preferences. You can pass only the specific settings you wish to update.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updatePrefs","weight":55,"cookies":false,"type":"","demo":"account\/update-prefs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-prefs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"prefs":{"type":"object","description":"Prefs key-value JSON object.","default":null,"x-example":"{}"}},"required":["prefs"]}}]}},"\/account\/recovery":{"post":{"summary":"Create Password Recovery","operationId":"accountCreateRecovery","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Sends the user an email with a temporary secret key for password reset. When the user clicks the confirmation link he is redirected back to your app password reset URL with the secret key and email address values attached to the URL query string. Use the query string params to submit a request to the [PUT \/account\/recovery](\/docs\/client\/account#accountUpdateRecovery) endpoint to complete the process. The verification link sent to the user's email address is valid for 1 hour.","responses":{"201":{"description":"Token","schema":{"$ref":"#\/definitions\/token"}}},"x-appwrite":{"method":"createRecovery","weight":59,"cookies":false,"type":"","demo":"account\/create-recovery.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-recovery.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},email:{param-email}","scope":"public","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"User email.","default":null,"x-example":"email@example.com"},"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.","default":null,"x-example":"https:\/\/example.com"}},"required":["email","url"]}}]},"put":{"summary":"Create Password Recovery (confirmation)","operationId":"accountUpdateRecovery","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to complete the user account password reset. Both the **userId** and **secret** arguments will be passed as query parameters to the redirect URL you have provided when sending your request to the [POST \/account\/recovery](\/docs\/client\/account#accountCreateRecovery) endpoint.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md) the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.","responses":{"200":{"description":"Token","schema":{"$ref":"#\/definitions\/token"}}},"x-appwrite":{"method":"updateRecovery","weight":60,"cookies":false,"type":"","demo":"account\/update-recovery.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-recovery.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},userId:{param-userId}","scope":"public","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"userId":{"type":"string","description":"User account UID address.","default":null,"x-example":"[USER_ID]"},"secret":{"type":"string","description":"Valid reset token.","default":null,"x-example":"[SECRET]"},"password":{"type":"string","description":"New password. Must be between 6 to 32 chars.","default":null,"x-example":"password"},"passwordAgain":{"type":"string","description":"New password again. Must be between 6 to 32 chars.","default":null,"x-example":"password"}},"required":["userId","secret","password","passwordAgain"]}}]}},"\/account\/sessions":{"get":{"summary":"Get Account Sessions","operationId":"accountGetSessions","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Get currently logged in user list of active sessions across different devices.","responses":{"200":{"description":"Sessions List","schema":{"$ref":"#\/definitions\/sessionList"}}},"x-appwrite":{"method":"getSessions","weight":49,"cookies":false,"type":"","demo":"account\/get-sessions.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/get-sessions.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]},"post":{"summary":"Create Account Session","operationId":"accountCreateSession","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Allow the user to login into their account by providing a valid email and password combination. This route will create a new session for the user.","responses":{"201":{"description":"Session","schema":{"$ref":"#\/definitions\/session"}}},"x-appwrite":{"method":"createSession","weight":38,"cookies":false,"type":"","demo":"account\/create-session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-session.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},email:{param-email}","scope":"public","platforms":["client"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"User email.","default":null,"x-example":"email@example.com"},"password":{"type":"string","description":"User password. Must be between 6 to 32 chars.","default":null,"x-example":"password"}},"required":["email","password"]}}]},"delete":{"summary":"Delete All Account Sessions","operationId":"accountDeleteSessions","consumes":["application\/json"],"produces":[],"tags":["account"],"description":"Delete all sessions from the user account and remove any sessions cookies from the end client.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteSessions","weight":58,"cookies":false,"type":"","demo":"account\/delete-sessions.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/delete-sessions.md","rate-limit":100,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]}},"\/account\/sessions\/anonymous":{"post":{"summary":"Create Anonymous Session","operationId":"accountCreateAnonymousSession","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to allow a new user to register an anonymous account in your project. This route will also create a new session for the user. To allow the new user to convert an anonymous account to a normal account, you need to update its [email and password](\/docs\/client\/account#accountUpdateEmail) or create an [OAuth2 session](\/docs\/client\/account#accountCreateOAuth2Session).","responses":{"201":{"description":"Session","schema":{"$ref":"#\/definitions\/session"}}},"x-appwrite":{"method":"createAnonymousSession","weight":45,"cookies":false,"type":"","demo":"account\/create-anonymous-session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-session-anonymous.md","rate-limit":50,"rate-time":3600,"rate-key":"ip:{ip}","scope":"public","platforms":["client"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}]}},"\/account\/sessions\/magic-url":{"post":{"summary":"Create Magic URL session","operationId":"accountCreateMagicURLSession","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Sends the user an email with a secret key for creating a session. When the user clicks the link in the email, the user is redirected back to the URL you provided with the secret key and userId values attached to the URL query string. Use the query string parameters to submit a request to the [PUT \/account\/sessions\/magic-url](\/docs\/client\/account#accountUpdateMagicURLSession) endpoint to complete the login process. The link sent to the user's email address is valid for 1 hour. If you are on a mobile device you can leave the URL parameter empty, so that the login completion will be handled by your Appwrite instance by default.","responses":{"201":{"description":"Token","schema":{"$ref":"#\/definitions\/token"}}},"x-appwrite":{"method":"createMagicURLSession","weight":43,"cookies":false,"type":"","demo":"account\/create-magic-u-r-l-session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-magic-url-session.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},email:{param-email}","scope":"public","platforms":["client"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"User email.","default":null,"x-example":"email@example.com"},"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.","default":"","x-example":"https:\/\/example.com"}},"required":["email"]}}]},"put":{"summary":"Create Magic URL session (confirmation)","operationId":"accountUpdateMagicURLSession","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to complete creating the session with the Magic URL. Both the **userId** and **secret** arguments will be passed as query parameters to the redirect URL you have provided when sending your request to the [POST \/account\/sessions\/magic-url](\/docs\/client\/account#accountCreateMagicURLSession) endpoint.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md) the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.","responses":{"200":{"description":"Session","schema":{"$ref":"#\/definitions\/session"}}},"x-appwrite":{"method":"updateMagicURLSession","weight":44,"cookies":false,"type":"","demo":"account\/update-magic-u-r-l-session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-magic-url-session.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},userId:{param-userId}","scope":"public","platforms":["client"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"userId":{"type":"string","description":"User unique ID.","default":null,"x-example":"[USER_ID]"},"secret":{"type":"string","description":"Valid verification token.","default":null,"x-example":"[SECRET]"}},"required":["userId","secret"]}}]}},"\/account\/sessions\/oauth2\/{provider}":{"get":{"summary":"Create Account Session with OAuth2","operationId":"accountCreateOAuth2Session","consumes":["application\/json"],"produces":["text\/html"],"tags":["account"],"description":"Allow the user to login to their account using the OAuth2 provider of their choice. Each OAuth2 provider should be enabled from the Appwrite console first. Use the success and failure arguments to provide a redirect URL's back to your app when login is completed.\n\nIf there is already an active session, the new session will be attached to the logged-in account. If there are no active sessions, the server will attempt to look for a user with the same email address as the email received from the OAuth2 provider and attach the new session to the existing user. If no matching user is found - the server will create a new user..\n","responses":{"301":{"description":"No content"}},"x-appwrite":{"method":"createOAuth2Session","weight":39,"cookies":false,"type":"webAuth","demo":"account\/create-o-auth2session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-session-oauth2.md","rate-limit":50,"rate-time":3600,"rate-key":"ip:{ip}","scope":"public","platforms":["client"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"provider","description":"OAuth2 Provider. Currently, supported providers are: amazon, apple, bitbucket, bitly, box, discord, dropbox, facebook, github, gitlab, google, linkedin, microsoft, paypal, paypalSandbox, salesforce, slack, spotify, tradeshift, tradeshiftBox, twitch, vk, yahoo, yandex, wordpress.","required":true,"type":"string","x-example":"amazon","in":"path"},{"name":"success","description":"URL to redirect back to your app after a successful login attempt. 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.","required":false,"type":"string","format":"url","x-example":"https:\/\/example.com","default":"","in":"query"},{"name":"failure","description":"URL to redirect back to your app after a failed login attempt. 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.","required":false,"type":"string","format":"url","x-example":"https:\/\/example.com","default":"","in":"query"},{"name":"scopes","description":"A list of custom OAuth2 scopes. Check each provider internal docs for a list of supported scopes.","required":false,"type":"array","collectionFormat":"multi","items":{"type":"string"},"default":[],"in":"query"}]}},"\/account\/sessions\/{sessionId}":{"get":{"summary":"Get Session By ID","operationId":"accountGetSession","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to get a logged in user's session using a Session ID. Inputting 'current' will return the current session being used.","responses":{"200":{"description":"Session","schema":{"$ref":"#\/definitions\/session"}}},"x-appwrite":{"method":"getSession","weight":51,"cookies":false,"type":"","demo":"account\/get-session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/get-session.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"sessionId","description":"Session unique ID. Use the string 'current' to get the current device session.","required":true,"type":"string","x-example":"[SESSION_ID]","in":"path"}]},"delete":{"summary":"Delete Account Session","operationId":"accountDeleteSession","consumes":["application\/json"],"produces":[],"tags":["account"],"description":"Use this endpoint to log out the currently logged in user from all their account sessions across all of their different devices. When using the option id argument, only the session unique ID provider will be deleted.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteSession","weight":57,"cookies":false,"type":"","demo":"account\/delete-session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/delete-session.md","rate-limit":100,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"sessionId","description":"Session unique ID. Use the string 'current' to delete the current device session.","required":true,"type":"string","x-example":"[SESSION_ID]","in":"path"}]}},"\/account\/verification":{"post":{"summary":"Create Email Verification","operationId":"accountCreateVerification","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](\/docs\/client\/account#accountUpdateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n","responses":{"201":{"description":"Token","schema":{"$ref":"#\/definitions\/token"}}},"x-appwrite":{"method":"createVerification","weight":61,"cookies":false,"type":"","demo":"account\/create-verification.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-verification.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},userId:{userId}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"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.","default":null,"x-example":"https:\/\/example.com"}},"required":["url"]}}]},"put":{"summary":"Create Email Verification (confirmation)","operationId":"accountUpdateVerification","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.","responses":{"200":{"description":"Token","schema":{"$ref":"#\/definitions\/token"}}},"x-appwrite":{"method":"updateVerification","weight":62,"cookies":false,"type":"","demo":"account\/update-verification.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-verification.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},userId:{param-userId}","scope":"public","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"userId":{"type":"string","description":"User unique ID.","default":null,"x-example":"[USER_ID]"},"secret":{"type":"string","description":"Valid verification token.","default":null,"x-example":"[SECRET]"}},"required":["userId","secret"]}}]}},"\/avatars\/browsers\/{code}":{"get":{"summary":"Get Browser Icon","operationId":"avatarsGetBrowser","consumes":["application\/json"],"produces":["image\/png"],"tags":["avatars"],"description":"You can use this endpoint to show different browser icons to your users. The code argument receives the browser code as it appears in your user \/account\/sessions endpoint. Use width, height and quality arguments to change the output settings.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getBrowser","weight":64,"cookies":false,"type":"location","demo":"avatars\/get-browser.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-browser.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"code","description":"Browser Code.","required":true,"type":"string","x-example":"aa","in":"path"},{"name":"width","description":"Image width. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"height","description":"Image height. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"quality","description":"Image quality. Pass an integer between 0 to 100. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"}]}},"\/avatars\/credit-cards\/{code}":{"get":{"summary":"Get Credit Card Icon","operationId":"avatarsGetCreditCard","consumes":["application\/json"],"produces":["image\/png"],"tags":["avatars"],"description":"The credit card endpoint will return you the icon of the credit card provider you need. Use width, height and quality arguments to change the output settings.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getCreditCard","weight":63,"cookies":false,"type":"location","demo":"avatars\/get-credit-card.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-credit-card.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"code","description":"Credit Card Code. Possible values: amex, argencard, cabal, censosud, diners, discover, elo, hipercard, jcb, mastercard, naranja, targeta-shopping, union-china-pay, visa, mir, maestro.","required":true,"type":"string","x-example":"amex","in":"path"},{"name":"width","description":"Image width. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"height","description":"Image height. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"quality","description":"Image quality. Pass an integer between 0 to 100. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"}]}},"\/avatars\/favicon":{"get":{"summary":"Get Favicon","operationId":"avatarsGetFavicon","consumes":["application\/json"],"produces":["image\/*"],"tags":["avatars"],"description":"Use this endpoint to fetch the favorite icon (AKA favicon) of any remote website URL.\n","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getFavicon","weight":67,"cookies":false,"type":"location","demo":"avatars\/get-favicon.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-favicon.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"url","description":"Website URL which you want to fetch the favicon from.","required":true,"type":"string","format":"url","x-example":"https:\/\/example.com","in":"query"}]}},"\/avatars\/flags\/{code}":{"get":{"summary":"Get Country Flag","operationId":"avatarsGetFlag","consumes":["application\/json"],"produces":["image\/png"],"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.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getFlag","weight":65,"cookies":false,"type":"location","demo":"avatars\/get-flag.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-flag.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"code","description":"Country Code. ISO Alpha-2 country code format.","required":true,"type":"string","x-example":"af","in":"path"},{"name":"width","description":"Image width. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"height","description":"Image height. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"quality","description":"Image quality. Pass an integer between 0 to 100. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"}]}},"\/avatars\/image":{"get":{"summary":"Get Image from URL","operationId":"avatarsGetImage","consumes":["application\/json"],"produces":["image\/*"],"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.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getImage","weight":66,"cookies":false,"type":"location","demo":"avatars\/get-image.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-image.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"url","description":"Image URL which you want to crop.","required":true,"type":"string","format":"url","x-example":"https:\/\/example.com","in":"query"},{"name":"width","description":"Resize preview image width, Pass an integer between 0 to 2000.","required":false,"type":"integer","format":"int32","x-example":0,"default":400,"in":"query"},{"name":"height","description":"Resize preview image height, Pass an integer between 0 to 2000.","required":false,"type":"integer","format":"int32","x-example":0,"default":400,"in":"query"}]}},"\/avatars\/initials":{"get":{"summary":"Get User Initials","operationId":"avatarsGetInitials","consumes":["application\/json"],"produces":["image\/png"],"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.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getInitials","weight":69,"cookies":false,"type":"location","demo":"avatars\/get-initials.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-initials.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"name","description":"Full Name. When empty, current user name or email will be used. Max length: 128 chars.","required":false,"type":"string","x-example":"[NAME]","default":"","in":"query"},{"name":"width","description":"Image width. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":500,"in":"query"},{"name":"height","description":"Image height. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":500,"in":"query"},{"name":"color","description":"Changes text color. By default a random color will be picked and stay will persistent to the given name.","required":false,"type":"string","default":"","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,"type":"string","default":"","in":"query"}]}},"\/avatars\/qr":{"get":{"summary":"Get QR Code","operationId":"avatarsGetQR","consumes":["application\/json"],"produces":["image\/png"],"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.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getQR","weight":68,"cookies":false,"type":"location","demo":"avatars\/get-q-r.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-qr.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"text","description":"Plain text to be converted to QR code image.","required":true,"type":"string","x-example":"[TEXT]","in":"query"},{"name":"size","description":"QR code size. Pass an integer between 0 to 1000. Defaults to 400.","required":false,"type":"integer","format":"int32","x-example":0,"default":400,"in":"query"},{"name":"margin","description":"Margin from edge. Pass an integer between 0 to 10. Defaults to 1.","required":false,"type":"integer","format":"int32","x-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,"type":"boolean","x-example":false,"default":false,"in":"query"}]}},"\/database\/collections\/{collectionId}\/documents":{"get":{"summary":"List Documents","operationId":"databaseListDocuments","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Get a list of all the user documents. You can use the query params to filter your results. On admin mode, this endpoint will return a list of all of the project's documents. [Learn more about different API modes](\/docs\/admin).","responses":{"200":{"description":"Documents List","schema":{"$ref":"#\/definitions\/documentList"}}},"x-appwrite":{"method":"listDocuments","weight":76,"cookies":false,"type":"","demo":"database\/list-documents.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/list-documents.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"documents.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](\/docs\/server\/database#createCollection).","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"filters","description":"Array of filter strings. Each filter is constructed from a key name, comparison operator (=, !=, >, <, <=, >=) and a value. You can also use a dot (.) separator in attribute names to filter by child document attributes. Examples: 'name=John Doe' or 'category.$id>=5bed2d152c362'.","required":false,"type":"array","collectionFormat":"multi","items":{"type":"string"},"default":[],"in":"query"},{"name":"limit","description":"Maximum number of documents to return in response. Use this value to manage pagination. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Offset value. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderField","description":"Document field that results will be sorted by.","required":false,"type":"string","x-example":"[ORDER_FIELD]","default":"","in":"query"},{"name":"orderType","description":"Order direction. Possible values are DESC for descending order, or ASC for ascending order.","required":false,"type":"string","x-example":"DESC","default":"ASC","in":"query"},{"name":"orderCast","description":"Order field type casting. Possible values are int, string, date, time or datetime. The database will attempt to cast the order field to the value you pass here. The default value is a string.","required":false,"type":"string","x-example":"int","default":"string","in":"query"},{"name":"search","description":"Search query. Enter any free text search. The database will try to find a match against all document attributes and children. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"}]},"post":{"summary":"Create Document","operationId":"databaseCreateDocument","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Create a new Document. Before using this route, you should create a new collection resource using either a [server integration](\/docs\/server\/database#databaseCreateCollection) API or directly from your database console.","responses":{"201":{"description":"Document","schema":{"$ref":"#\/definitions\/document"}}},"x-appwrite":{"method":"createDocument","weight":75,"cookies":false,"type":"","demo":"database\/create-document.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/create-document.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"documents.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](\/docs\/server\/database#createCollection).","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"data":{"type":"object","description":"Document data as JSON object.","default":null,"x-example":"{}"},"read":{"type":"array","description":"An array of strings with read permissions. By default only the current user is granted with read permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"write":{"type":"array","description":"An array of strings with write permissions. By default only the current user is granted with write permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"parentDocument":{"type":"string","description":"Parent document unique ID. Use when you want your new document to be a child of a parent document.","default":"","x-example":"[PARENT_DOCUMENT]"},"parentProperty":{"type":"string","description":"Parent document property name. Use when you want your new document to be a child of a parent document.","default":"","x-example":null},"parentPropertyType":{"type":"string","description":"Parent document property connection type. You can set this value to **assign**, **append** or **prepend**, default value is assign. Use when you want your new document to be a child of a parent document.","default":"assign","x-example":"assign"}},"required":["data"]}}]}},"\/database\/collections\/{collectionId}\/documents\/{documentId}":{"get":{"summary":"Get Document","operationId":"databaseGetDocument","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Get a document by its unique ID. This endpoint response returns a JSON object with the document data.","responses":{"200":{"description":"Document","schema":{"$ref":"#\/definitions\/document"}}},"x-appwrite":{"method":"getDocument","weight":77,"cookies":false,"type":"","demo":"database\/get-document.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/get-document.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"documents.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](\/docs\/server\/database#createCollection).","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"documentId","description":"Document unique ID.","required":true,"type":"string","x-example":"[DOCUMENT_ID]","in":"path"}]},"patch":{"summary":"Update Document","operationId":"databaseUpdateDocument","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"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","schema":{"$ref":"#\/definitions\/document"}}},"x-appwrite":{"method":"updateDocument","weight":78,"cookies":false,"type":"","demo":"database\/update-document.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/update-document.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"documents.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](\/docs\/server\/database#createCollection).","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"documentId","description":"Document unique ID.","required":true,"type":"string","x-example":"[DOCUMENT_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"data":{"type":"object","description":"Document data as JSON object.","default":null,"x-example":"{}"},"read":{"type":"array","description":"An array of strings with read permissions. By default inherits the existing read permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"write":{"type":"array","description":"An array of strings with write permissions. By default inherits the existing write permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}}},"required":["data"]}}]},"delete":{"summary":"Delete Document","operationId":"databaseDeleteDocument","consumes":["application\/json"],"produces":[],"tags":["database"],"description":"Delete a document by its unique ID. This endpoint deletes only the parent documents, its attributes and relations to other documents. Child documents **will not** be deleted.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteDocument","weight":79,"cookies":false,"type":"","demo":"database\/delete-document.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/delete-document.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"documents.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](\/docs\/server\/database#createCollection).","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"documentId","description":"Document unique ID.","required":true,"type":"string","x-example":"[DOCUMENT_ID]","in":"path"}]}},"\/functions\/{functionId}\/executions":{"get":{"summary":"List Executions","operationId":"functionsListExecutions","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Get a list of all the current user function execution logs. You can use the query params to filter your results. On admin mode, this endpoint will return a list of all of the project's executions. [Learn more about different API modes](\/docs\/admin).","responses":{"200":{"description":"Executions List","schema":{"$ref":"#\/definitions\/executionList"}}},"x-appwrite":{"method":"listExecutions","weight":180,"cookies":false,"type":"","demo":"functions\/list-executions.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/list-executions.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"execution.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create Execution","operationId":"functionsCreateExecution","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Trigger a function execution. The returned object will return you the current execution status. You can ping the `Get Execution` endpoint to get updates on the current execution status. Once this endpoint is called, your function execution process will start asynchronously.","responses":{"201":{"description":"Execution","schema":{"$ref":"#\/definitions\/execution"}}},"x-appwrite":{"method":"createExecution","weight":179,"cookies":false,"type":"","demo":"functions\/create-execution.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/create-execution.md","rate-limit":60,"rate-time":60,"rate-key":"url:{url},ip:{ip}","scope":"execution.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"data":{"type":"string","description":"String of custom data to send to function.","default":"","x-example":"[DATA]"}}}}]}},"\/functions\/{functionId}\/executions\/{executionId}":{"get":{"summary":"Get Execution","operationId":"functionsGetExecution","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Get a function execution log by its unique ID.","responses":{"200":{"description":"Execution","schema":{"$ref":"#\/definitions\/execution"}}},"x-appwrite":{"method":"getExecution","weight":181,"cookies":false,"type":"","demo":"functions\/get-execution.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/get-execution.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"execution.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"executionId","description":"Execution unique ID.","required":true,"type":"string","x-example":"[EXECUTION_ID]","in":"path"}]}},"\/locale":{"get":{"summary":"Get User Locale","operationId":"localeGet","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"Get the current user location based on IP. Returns an object with user country code, country name, continent name, continent code, ip address and suggested currency. You can use the locale header to get the data in a supported language.\n\n([IP Geolocation by DB-IP](https:\/\/db-ip.com))","responses":{"200":{"description":"Locale","schema":{"$ref":"#\/definitions\/locale"}}},"x-appwrite":{"method":"get","weight":80,"cookies":false,"type":"","demo":"locale\/get.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-locale.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]}},"\/locale\/continents":{"get":{"summary":"List Continents","operationId":"localeGetContinents","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all continents. You can use the locale header to get the data in a supported language.","responses":{"200":{"description":"Continents List","schema":{"$ref":"#\/definitions\/continentList"}}},"x-appwrite":{"method":"getContinents","weight":84,"cookies":false,"type":"","demo":"locale\/get-continents.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-continents.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]}},"\/locale\/countries":{"get":{"summary":"List Countries","operationId":"localeGetCountries","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all countries. You can use the locale header to get the data in a supported language.","responses":{"200":{"description":"Countries List","schema":{"$ref":"#\/definitions\/countryList"}}},"x-appwrite":{"method":"getCountries","weight":81,"cookies":false,"type":"","demo":"locale\/get-countries.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-countries.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]}},"\/locale\/countries\/eu":{"get":{"summary":"List EU Countries","operationId":"localeGetCountriesEU","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all countries that are currently members of the EU. You can use the locale header to get the data in a supported language.","responses":{"200":{"description":"Countries List","schema":{"$ref":"#\/definitions\/countryList"}}},"x-appwrite":{"method":"getCountriesEU","weight":82,"cookies":false,"type":"","demo":"locale\/get-countries-e-u.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-countries-eu.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]}},"\/locale\/countries\/phones":{"get":{"summary":"List Countries Phone Codes","operationId":"localeGetCountriesPhones","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all countries phone codes. You can use the locale header to get the data in a supported language.","responses":{"200":{"description":"Phones List","schema":{"$ref":"#\/definitions\/phoneList"}}},"x-appwrite":{"method":"getCountriesPhones","weight":83,"cookies":false,"type":"","demo":"locale\/get-countries-phones.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-countries-phones.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]}},"\/locale\/currencies":{"get":{"summary":"List Currencies","operationId":"localeGetCurrencies","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all currencies, including currency symbol, name, plural, and decimal digits for all major and minor currencies. You can use the locale header to get the data in a supported language.","responses":{"200":{"description":"Currencies List","schema":{"$ref":"#\/definitions\/currencyList"}}},"x-appwrite":{"method":"getCurrencies","weight":85,"cookies":false,"type":"","demo":"locale\/get-currencies.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-currencies.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]}},"\/locale\/languages":{"get":{"summary":"List Languages","operationId":"localeGetLanguages","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all languages classified by ISO 639-1 including 2-letter code, name in English, and name in the respective language.","responses":{"200":{"description":"Languages List","schema":{"$ref":"#\/definitions\/languageList"}}},"x-appwrite":{"method":"getLanguages","weight":86,"cookies":false,"type":"","demo":"locale\/get-languages.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-languages.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]}},"\/storage\/files":{"get":{"summary":"List Files","operationId":"storageListFiles","consumes":["application\/json"],"produces":["application\/json"],"tags":["storage"],"description":"Get a list of all the user files. You can use the query params to filter your results. On admin mode, this endpoint will return a list of all of the project's files. [Learn more about different API modes](\/docs\/admin).","responses":{"200":{"description":"Files List","schema":{"$ref":"#\/definitions\/fileList"}}},"x-appwrite":{"method":"listFiles","weight":136,"cookies":false,"type":"","demo":"storage\/list-files.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/list-files.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create File","operationId":"storageCreateFile","consumes":["multipart\/form-data"],"produces":["application\/json"],"tags":["storage"],"description":"Create a new file. The user who creates the file will automatically be assigned to read and write access unless he has passed custom values for read and write arguments.","responses":{"201":{"description":"File","schema":{"$ref":"#\/definitions\/file"}}},"x-appwrite":{"method":"createFile","weight":135,"cookies":false,"type":"upload","demo":"storage\/create-file.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/create-file.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"file","description":"Binary file.","required":true,"type":"file","in":"formData"},{"name":"read","description":"An array of strings with read permissions. By default only the current user is granted with read permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","required":false,"type":"array","collectionFormat":"multi","items":{"type":"string"},"in":"formData"},{"name":"write","description":"An array of strings with write permissions. By default only the current user is granted with write permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","required":false,"type":"array","collectionFormat":"multi","items":{"type":"string"},"in":"formData"}]}},"\/storage\/files\/{fileId}":{"get":{"summary":"Get File","operationId":"storageGetFile","consumes":["application\/json"],"produces":["application\/json"],"tags":["storage"],"description":"Get a file by its unique ID. This endpoint response returns a JSON object with the file metadata.","responses":{"200":{"description":"File","schema":{"$ref":"#\/definitions\/file"}}},"x-appwrite":{"method":"getFile","weight":137,"cookies":false,"type":"","demo":"storage\/get-file.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/get-file.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID.","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"}]},"put":{"summary":"Update File","operationId":"storageUpdateFile","consumes":["application\/json"],"produces":["application\/json"],"tags":["storage"],"description":"Update a file by its unique ID. Only users with write permissions have access to update this resource.","responses":{"200":{"description":"File","schema":{"$ref":"#\/definitions\/file"}}},"x-appwrite":{"method":"updateFile","weight":141,"cookies":false,"type":"","demo":"storage\/update-file.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/update-file.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID.","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"read":{"type":"array","description":"An array of strings with read permissions. By default no user is granted with any read permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"write":{"type":"array","description":"An array of strings with write permissions. By default no user is granted with any write permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}}},"required":["read","write"]}}]},"delete":{"summary":"Delete File","operationId":"storageDeleteFile","consumes":["application\/json"],"produces":[],"tags":["storage"],"description":"Delete a file by its unique ID. Only users with write permissions have access to delete this resource.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteFile","weight":142,"cookies":false,"type":"","demo":"storage\/delete-file.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/delete-file.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID.","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"}]}},"\/storage\/files\/{fileId}\/download":{"get":{"summary":"Get File for Download","operationId":"storageGetFileDownload","consumes":["application\/json"],"produces":["*\/*"],"tags":["storage"],"description":"Get a file content by its unique ID. The endpoint response return with a 'Content-Disposition: attachment' header that tells the browser to start downloading the file to user downloads directory.","responses":{"200":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getFileDownload","weight":139,"cookies":false,"type":"location","demo":"storage\/get-file-download.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/get-file-download.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID.","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"}]}},"\/storage\/files\/{fileId}\/preview":{"get":{"summary":"Get File Preview","operationId":"storageGetFilePreview","consumes":["application\/json"],"produces":["image\/*"],"tags":["storage"],"description":"Get a file preview image. Currently, this method supports preview for image files (jpg, png, and gif), other supported formats, like pdf, docs, slides, and spreadsheets, will return the file icon image. You can also pass query string arguments for cutting and resizing your preview image.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getFilePreview","weight":138,"cookies":false,"type":"location","demo":"storage\/get-file-preview.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/get-file-preview.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"},{"name":"width","description":"Resize preview image width, Pass an integer between 0 to 4000.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"height","description":"Resize preview image height, Pass an integer between 0 to 4000.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"gravity","description":"Image crop gravity. Can be one of center,top-left,top,top-right,left,right,bottom-left,bottom,bottom-right","required":false,"type":"string","x-example":"center","default":"center","in":"query"},{"name":"quality","description":"Preview image quality. Pass an integer between 0 to 100. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"borderWidth","description":"Preview image border in pixels. Pass an integer between 0 to 100. Defaults to 0.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"borderColor","description":"Preview image border color. Use a valid HEX color, no # is needed for prefix.","required":false,"type":"string","default":"","in":"query"},{"name":"borderRadius","description":"Preview image border radius in pixels. Pass an integer between 0 to 4000.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"opacity","description":"Preview image opacity. Only works with images having an alpha channel (like png). Pass a number between 0 to 1.","required":false,"type":"number","format":"float","x-example":0,"default":1,"in":"query"},{"name":"rotation","description":"Preview image rotation in degrees. Pass an integer between 0 and 360.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"background","description":"Preview image background color. Only works with transparent images (png). Use a valid HEX color, no # is needed for prefix.","required":false,"type":"string","default":"","in":"query"},{"name":"output","description":"Output format type (jpeg, jpg, png, gif and webp).","required":false,"type":"string","x-example":"jpg","default":"","in":"query"}]}},"\/storage\/files\/{fileId}\/view":{"get":{"summary":"Get File for View","operationId":"storageGetFileView","consumes":["application\/json"],"produces":["*\/*"],"tags":["storage"],"description":"Get a file content by its unique ID. This endpoint is similar to the download method but returns with no 'Content-Disposition: attachment' header.","responses":{"200":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getFileView","weight":140,"cookies":false,"type":"location","demo":"storage\/get-file-view.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/get-file-view.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID.","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"}]}},"\/teams":{"get":{"summary":"List Teams","operationId":"teamsList","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Get a list of all the current user teams. You can use the query params to filter your results. On admin mode, this endpoint will return a list of all of the project's teams. [Learn more about different API modes](\/docs\/admin).","responses":{"200":{"description":"Teams List","schema":{"$ref":"#\/definitions\/teamList"}}},"x-appwrite":{"method":"list","weight":144,"cookies":false,"type":"","demo":"teams\/list.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/list-teams.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create Team","operationId":"teamsCreate","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Create a new team. The user who creates the team will automatically be assigned as the owner of the team. The team owner can invite new members, who will be able add new owners and update or delete the team from your project.","responses":{"201":{"description":"Team","schema":{"$ref":"#\/definitions\/team"}}},"x-appwrite":{"method":"create","weight":143,"cookies":false,"type":"","demo":"teams\/create.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/create-team.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Team name. Max length: 128 chars.","default":null,"x-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](\/docs\/permissions). Max length for each role is 32 chars.","default":["owner"],"x-example":null,"items":{"type":"string"}}},"required":["name"]}}]}},"\/teams\/{teamId}":{"get":{"summary":"Get Team","operationId":"teamsGet","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Get a team by its unique ID. All team members have read access for this resource.","responses":{"200":{"description":"Team","schema":{"$ref":"#\/definitions\/team"}}},"x-appwrite":{"method":"get","weight":145,"cookies":false,"type":"","demo":"teams\/get.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/get-team.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"}]},"put":{"summary":"Update Team","operationId":"teamsUpdate","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Update a team by its unique ID. Only team owners have write access for this resource.","responses":{"200":{"description":"Team","schema":{"$ref":"#\/definitions\/team"}}},"x-appwrite":{"method":"update","weight":146,"cookies":false,"type":"","demo":"teams\/update.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/update-team.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Team name. Max length: 128 chars.","default":null,"x-example":"[NAME]"}},"required":["name"]}}]},"delete":{"summary":"Delete Team","operationId":"teamsDelete","consumes":["application\/json"],"produces":[],"tags":["teams"],"description":"Delete a team by its unique ID. Only team owners have write access for this resource.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"delete","weight":147,"cookies":false,"type":"","demo":"teams\/delete.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/delete-team.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"}]}},"\/teams\/{teamId}\/memberships":{"get":{"summary":"Get Team Memberships","operationId":"teamsGetMemberships","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Get a team members by the team unique ID. All team members have read access for this list of resources.","responses":{"200":{"description":"Memberships List","schema":{"$ref":"#\/definitions\/membershipList"}}},"x-appwrite":{"method":"getMemberships","weight":150,"cookies":false,"type":"","demo":"teams\/get-memberships.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/get-team-members.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create Team Membership","operationId":"teamsCreateMembership","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Use this endpoint to invite a new member to join your team. If initiated from Client SDK, an email with a link to join the team will be sent to the new member's email address if the member doesn't exist in the project it will be created automatically. If initiated from server side SDKs, new member will automatically be added to the team.\n\nUse the 'URL' parameter to redirect the user from the invitation email back to your app. When the user is redirected, use the [Update Team Membership Status](\/docs\/client\/teams#teamsUpdateMembershipStatus) endpoint to allow the user to accept the invitation to the team. While calling from side SDKs the redirect url can be empty string.\n\nPlease note that in order to avoid a [Redirect Attacks](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md) the only valid redirect URL's are the once from domains you have set when added your platforms in the console interface.","responses":{"201":{"description":"Membership","schema":{"$ref":"#\/definitions\/membership"}}},"x-appwrite":{"method":"createMembership","weight":148,"cookies":false,"type":"","demo":"teams\/create-membership.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/create-team-membership.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"New team member email.","default":null,"x-example":"email@example.com"},"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](\/docs\/permissions). Max length for each role is 32 chars.","default":null,"x-example":null,"items":{"type":"string"}},"url":{"type":"string","description":"URL to redirect the user back to your app from the invitation 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.","default":null,"x-example":"https:\/\/example.com"},"name":{"type":"string","description":"New team member name. Max length: 128 chars.","default":"","x-example":"[NAME]"}},"required":["email","roles","url"]}}]}},"\/teams\/{teamId}\/memberships\/{membershipId}":{"patch":{"summary":"Update Membership Roles","operationId":"teamsUpdateMembershipRoles","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"","responses":{"200":{"description":"Membership","schema":{"$ref":"#\/definitions\/membership"}}},"x-appwrite":{"method":"updateMembershipRoles","weight":149,"cookies":false,"type":"","demo":"teams\/update-membership-roles.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/update-team-membership-roles.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"membershipId","description":"Membership ID.","required":true,"type":"string","x-example":"[MEMBERSHIP_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"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](\/docs\/permissions). Max length for each role is 32 chars.","default":null,"x-example":null,"items":{"type":"string"}}},"required":["roles"]}}]},"delete":{"summary":"Delete Team Membership","operationId":"teamsDeleteMembership","consumes":["application\/json"],"produces":[],"tags":["teams"],"description":"This endpoint allows a user to leave a team or for a team owner to delete the membership of any other team member. You can also use this endpoint to delete a user membership even if it is not accepted.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteMembership","weight":152,"cookies":false,"type":"","demo":"teams\/delete-membership.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/delete-team-membership.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"membershipId","description":"Membership ID.","required":true,"type":"string","x-example":"[MEMBERSHIP_ID]","in":"path"}]}},"\/teams\/{teamId}\/memberships\/{membershipId}\/status":{"patch":{"summary":"Update Team Membership Status","operationId":"teamsUpdateMembershipStatus","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Use this endpoint to allow a user to accept an invitation to join a team after being redirected back to your app from the invitation email recieved by the user.","responses":{"200":{"description":"Membership","schema":{"$ref":"#\/definitions\/membership"}}},"x-appwrite":{"method":"updateMembershipStatus","weight":151,"cookies":false,"type":"","demo":"teams\/update-membership-status.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/update-team-membership-status.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"public","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"membershipId","description":"Membership ID.","required":true,"type":"string","x-example":"[MEMBERSHIP_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"userId":{"type":"string","description":"User unique ID.","default":null,"x-example":"[USER_ID]"},"secret":{"type":"string","description":"Secret key.","default":null,"x-example":"[SECRET]"}},"required":["userId","secret"]}}]}}},"tags":[{"name":"account","description":"The Account service allows you to authenticate and manage a user account."},{"name":"avatars","description":"The Avatars service aims to help you complete everyday tasks related to your app image, icons, and avatars."},{"name":"database","description":"The Database service allows you to create structured collections of documents, query and filter lists of documents"},{"name":"locale","description":"The Locale service allows you to customize your app based on your users' location."},{"name":"health","description":"The Health service allows you to both validate and monitor your Appwrite server's health."},{"name":"projects","description":"The Project service allows you to manage all the projects in your Appwrite server."},{"name":"storage","description":"The Storage service allows you to manage your project files."},{"name":"teams","description":"The Teams service allows you to group users of your project and to enable them to share read and write access to your project resources"},{"name":"users","description":"The Users service allows you to manage your project users."},{"name":"functions","description":"The Functions Service allows you view, create and manage your Cloud Functions."}],"definitions":{"documentList":{"description":"Documents List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"documents":{"type":"array","description":"List of documents.","items":{"type":"object","$ref":"#\/definitions\/document"},"x-example":""}},"required":["sum","documents"]},"sessionList":{"description":"Sessions List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"sessions":{"type":"array","description":"List of sessions.","items":{"type":"object","$ref":"#\/definitions\/session"},"x-example":""}},"required":["sum","sessions"]},"logList":{"description":"Logs List","type":"object","properties":{"logs":{"type":"array","description":"List of logs.","items":{"type":"object","$ref":"#\/definitions\/log"},"x-example":""}},"required":["logs"]},"fileList":{"description":"Files List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"files":{"type":"array","description":"List of files.","items":{"type":"object","$ref":"#\/definitions\/file"},"x-example":""}},"required":["sum","files"]},"teamList":{"description":"Teams List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"teams":{"type":"array","description":"List of teams.","items":{"type":"object","$ref":"#\/definitions\/team"},"x-example":""}},"required":["sum","teams"]},"membershipList":{"description":"Memberships List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"memberships":{"type":"array","description":"List of memberships.","items":{"type":"object","$ref":"#\/definitions\/membership"},"x-example":""}},"required":["sum","memberships"]},"executionList":{"description":"Executions List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"executions":{"type":"array","description":"List of executions.","items":{"type":"object","$ref":"#\/definitions\/execution"},"x-example":""}},"required":["sum","executions"]},"countryList":{"description":"Countries List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"countries":{"type":"array","description":"List of countries.","items":{"type":"object","$ref":"#\/definitions\/country"},"x-example":""}},"required":["sum","countries"]},"continentList":{"description":"Continents List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"continents":{"type":"array","description":"List of continents.","items":{"type":"object","$ref":"#\/definitions\/continent"},"x-example":""}},"required":["sum","continents"]},"languageList":{"description":"Languages List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"languages":{"type":"array","description":"List of languages.","items":{"type":"object","$ref":"#\/definitions\/language"},"x-example":""}},"required":["sum","languages"]},"currencyList":{"description":"Currencies List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"currencies":{"type":"array","description":"List of currencies.","items":{"type":"object","$ref":"#\/definitions\/currency"},"x-example":""}},"required":["sum","currencies"]},"phoneList":{"description":"Phones List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"phones":{"type":"array","description":"List of phones.","items":{"type":"object","$ref":"#\/definitions\/phone"},"x-example":""}},"required":["sum","phones"]},"permissions":{"description":"Permissions","type":"object","properties":{"read":{"type":"array","description":"Read permissions.","items":{"type":"string"},"x-example":"user:5e5ea5c16897e"},"write":{"type":"array","description":"Write permissions.","items":{"type":"string"},"x-example":"user:5e5ea5c16897e"}},"required":["read","write"]},"document":{"description":"Document","type":"object","properties":{"$id":{"type":"string","description":"Document ID.","x-example":"5e5ea5c16897e"},"$collection":{"type":"string","description":"Collection ID.","x-example":"5e5ea5c15117e"},"$permissions":{"type":"object","description":"Document permissions.","x-example":{},"items":{"type":"object","$ref":"#\/definitions\/permissions"}}},"additionalProperties":true,"required":["$id","$collection","$permissions"]},"log":{"description":"Log","type":"object","properties":{"event":{"type":"string","description":"Event name.","x-example":"account.sessions.create"},"ip":{"type":"string","description":"IP session in use when the session was created.","x-example":"127.0.0.1"},"time":{"type":"integer","description":"Log creation time in Unix timestamp.","x-example":1592981250,"format":"int32"},"osCode":{"type":"string","description":"Operating system code name. View list of [available options](https:\/\/github.com\/appwrite\/appwrite\/blob\/master\/docs\/lists\/os.json).","x-example":"Mac"},"osName":{"type":"string","description":"Operating system name.","x-example":"Mac"},"osVersion":{"type":"string","description":"Operating system version.","x-example":"Mac"},"clientType":{"type":"string","description":"Client type.","x-example":"browser"},"clientCode":{"type":"string","description":"Client code name. View list of [available options](https:\/\/github.com\/appwrite\/appwrite\/blob\/master\/docs\/lists\/clients.json).","x-example":"CM"},"clientName":{"type":"string","description":"Client name.","x-example":"Chrome Mobile iOS"},"clientVersion":{"type":"string","description":"Client version.","x-example":"84.0"},"clientEngine":{"type":"string","description":"Client engine name.","x-example":"WebKit"},"clientEngineVersion":{"type":"string","description":"Client engine name.","x-example":"605.1.15"},"deviceName":{"type":"string","description":"Device name.","x-example":"smartphone"},"deviceBrand":{"type":"string","description":"Device brand name.","x-example":"Google"},"deviceModel":{"type":"string","description":"Device model name.","x-example":"Nexus 5"},"countryCode":{"type":"string","description":"Country two-character ISO 3166-1 alpha code.","x-example":"US"},"countryName":{"type":"string","description":"Country name.","x-example":"United States"}},"required":["event","ip","time","osCode","osName","osVersion","clientType","clientCode","clientName","clientVersion","clientEngine","clientEngineVersion","deviceName","deviceBrand","deviceModel","countryCode","countryName"]},"user":{"description":"User","type":"object","properties":{"$id":{"type":"string","description":"User ID.","x-example":"5e5ea5c16897e"},"name":{"type":"string","description":"User name.","x-example":"John Doe"},"registration":{"type":"integer","description":"User registration date in Unix timestamp.","x-example":1592981250,"format":"int32"},"status":{"type":"integer","description":"User status. 0 for Unactivated, 1 for active and 2 is blocked.","x-example":0,"format":"int32"},"passwordUpdate":{"type":"integer","description":"Unix timestamp of the most recent password update","x-example":1592981250,"format":"int32"},"email":{"type":"string","description":"User email address.","x-example":"john@appwrite.io"},"emailVerification":{"type":"boolean","description":"Email verification status.","x-example":true},"prefs":{"type":"object","description":"User preferences as a key-value object","x-example":{"theme":"pink","timezone":"UTC"},"items":{"type":"object","$ref":"#\/definitions\/preferences"}}},"required":["$id","name","registration","status","passwordUpdate","email","emailVerification","prefs"]},"preferences":{"description":"Preferences","type":"object","additionalProperties":true},"session":{"description":"Session","type":"object","properties":{"$id":{"type":"string","description":"Session ID.","x-example":"5e5ea5c16897e"},"userId":{"type":"string","description":"User ID.","x-example":"5e5bb8c16897e"},"expire":{"type":"integer","description":"Session expiration date in Unix timestamp.","x-example":1592981250,"format":"int32"},"provider":{"type":"string","description":"Session Provider.","x-example":"email"},"providerUid":{"type":"string","description":"Session Provider User ID.","x-example":"user@example.com"},"providerToken":{"type":"string","description":"Session Provider Token.","x-example":"MTQ0NjJkZmQ5OTM2NDE1ZTZjNGZmZjI3"},"ip":{"type":"string","description":"IP in use when the session was created.","x-example":"127.0.0.1"},"osCode":{"type":"string","description":"Operating system code name. View list of [available options](https:\/\/github.com\/appwrite\/appwrite\/blob\/master\/docs\/lists\/os.json).","x-example":"Mac"},"osName":{"type":"string","description":"Operating system name.","x-example":"Mac"},"osVersion":{"type":"string","description":"Operating system version.","x-example":"Mac"},"clientType":{"type":"string","description":"Client type.","x-example":"browser"},"clientCode":{"type":"string","description":"Client code name. View list of [available options](https:\/\/github.com\/appwrite\/appwrite\/blob\/master\/docs\/lists\/clients.json).","x-example":"CM"},"clientName":{"type":"string","description":"Client name.","x-example":"Chrome Mobile iOS"},"clientVersion":{"type":"string","description":"Client version.","x-example":"84.0"},"clientEngine":{"type":"string","description":"Client engine name.","x-example":"WebKit"},"clientEngineVersion":{"type":"string","description":"Client engine name.","x-example":"605.1.15"},"deviceName":{"type":"string","description":"Device name.","x-example":"smartphone"},"deviceBrand":{"type":"string","description":"Device brand name.","x-example":"Google"},"deviceModel":{"type":"string","description":"Device model name.","x-example":"Nexus 5"},"countryCode":{"type":"string","description":"Country two-character ISO 3166-1 alpha code.","x-example":"US"},"countryName":{"type":"string","description":"Country name.","x-example":"United States"},"current":{"type":"boolean","description":"Returns true if this the current user session.","x-example":true}},"required":["$id","userId","expire","provider","providerUid","providerToken","ip","osCode","osName","osVersion","clientType","clientCode","clientName","clientVersion","clientEngine","clientEngineVersion","deviceName","deviceBrand","deviceModel","countryCode","countryName","current"]},"token":{"description":"Token","type":"object","properties":{"$id":{"type":"string","description":"Token ID.","x-example":"bb8ea5c16897e"},"userId":{"type":"string","description":"User ID.","x-example":"5e5ea5c168bb8"},"secret":{"type":"string","description":"Token secret key. This will return an empty string unless the response is returned using an API key or as part of a webhook payload.","x-example":""},"expire":{"type":"integer","description":"Token expiration date in Unix timestamp.","x-example":1592981250,"format":"int32"}},"required":["$id","userId","secret","expire"]},"jwt":{"description":"JWT","type":"object","properties":{"jwt":{"type":"string","description":"JWT encoded string.","x-example":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"}},"required":["jwt"]},"locale":{"description":"Locale","type":"object","properties":{"ip":{"type":"string","description":"User IP address.","x-example":"127.0.0.1"},"countryCode":{"type":"string","description":"Country code in [ISO 3166-1](http:\/\/en.wikipedia.org\/wiki\/ISO_3166-1) two-character format","x-example":"US"},"country":{"type":"string","description":"Country name. This field support localization.","x-example":"United States"},"continentCode":{"type":"string","description":"Continent code. A two character continent code \"AF\" for Africa, \"AN\" for Antarctica, \"AS\" for Asia, \"EU\" for Europe, \"NA\" for North America, \"OC\" for Oceania, and \"SA\" for South America.","x-example":"NA"},"continent":{"type":"string","description":"Continent name. This field support localization.","x-example":"North America"},"eu":{"type":"boolean","description":"True if country is part of the Europian Union.","x-example":false},"currency":{"type":"string","description":"Currency code in [ISO 4217-1](http:\/\/en.wikipedia.org\/wiki\/ISO_4217) three-character format","x-example":"USD"}},"required":["ip","countryCode","country","continentCode","continent","eu","currency"]},"file":{"description":"File","type":"object","properties":{"$id":{"type":"string","description":"File ID.","x-example":"5e5ea5c16897e"},"$permissions":{"type":"object","description":"File permissions.","x-example":{},"items":{"type":"object","$ref":"#\/definitions\/permissions"}},"name":{"type":"string","description":"File name.","x-example":"Pink.png"},"dateCreated":{"type":"integer","description":"File creation date in Unix timestamp.","x-example":1592981250,"format":"int32"},"signature":{"type":"string","description":"File MD5 signature.","x-example":"5d529fd02b544198ae075bd57c1762bb"},"mimeType":{"type":"string","description":"File mime type.","x-example":"image\/png"},"sizeOriginal":{"type":"integer","description":"File original size in bytes.","x-example":17890,"format":"int32"}},"required":["$id","$permissions","name","dateCreated","signature","mimeType","sizeOriginal"]},"team":{"description":"Team","type":"object","properties":{"$id":{"type":"string","description":"Team ID.","x-example":"5e5ea5c16897e"},"name":{"type":"string","description":"Team name.","x-example":"VIP"},"dateCreated":{"type":"integer","description":"Team creation date in Unix timestamp.","x-example":1592981250,"format":"int32"},"sum":{"type":"integer","description":"Total sum of team members.","x-example":7,"format":"int32"}},"required":["$id","name","dateCreated","sum"]},"membership":{"description":"Membership","type":"object","properties":{"$id":{"type":"string","description":"Membership ID.","x-example":"5e5ea5c16897e"},"userId":{"type":"string","description":"User ID.","x-example":"5e5ea5c16897e"},"teamId":{"type":"string","description":"Team ID.","x-example":"5e5ea5c16897e"},"name":{"type":"string","description":"User name.","x-example":"VIP"},"email":{"type":"string","description":"User email address.","x-example":"john@appwrite.io"},"invited":{"type":"integer","description":"Date, the user has been invited to join the team in Unix timestamp.","x-example":1592981250,"format":"int32"},"joined":{"type":"integer","description":"Date, the user has accepted the invitation to join the team in Unix timestamp.","x-example":1592981250,"format":"int32"},"confirm":{"type":"boolean","description":"User confirmation status, true if the user has joined the team or false otherwise.","x-example":false},"roles":{"type":"array","description":"User list of roles","items":{"type":"string"},"x-example":"admin"}},"required":["$id","userId","teamId","name","email","invited","joined","confirm","roles"]},"execution":{"description":"Execution","type":"object","properties":{"$id":{"type":"string","description":"Execution ID.","x-example":"5e5ea5c16897e"},"$permissions":{"type":"object","description":"Execution permissions.","x-example":{},"items":{"type":"object","$ref":"#\/definitions\/permissions"}},"functionId":{"type":"string","description":"Function ID.","x-example":"5e5ea6g16897e"},"dateCreated":{"type":"integer","description":"The execution creation date in Unix timestamp.","x-example":1592981250,"format":"int32"},"trigger":{"type":"string","description":"The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.","x-example":"http"},"status":{"type":"string","description":"The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.","x-example":"processing"},"exitCode":{"type":"integer","description":"The script exit code.","x-example":0,"format":"int32"},"stdout":{"type":"string","description":"The script stdout output string. Logs the last 4,000 characters of the execution stdout output.","x-example":""},"stderr":{"type":"string","description":"The script stderr output string. Logs the last 4,000 characters of the execution stderr output","x-example":""},"time":{"type":"number","description":"The script execution time in seconds.","x-example":0.4,"format":"float"}},"required":["$id","$permissions","functionId","dateCreated","trigger","status","exitCode","stdout","stderr","time"]},"country":{"description":"Country","type":"object","properties":{"name":{"type":"string","description":"Country name.","x-example":"United States"},"code":{"type":"string","description":"Country two-character ISO 3166-1 alpha code.","x-example":"US"}},"required":["name","code"]},"continent":{"description":"Continent","type":"object","properties":{"name":{"type":"string","description":"Continent name.","x-example":"Europe"},"code":{"type":"string","description":"Continent two letter code.","x-example":"EU"}},"required":["name","code"]},"language":{"description":"Language","type":"object","properties":{"name":{"type":"string","description":"Language name.","x-example":"Italian"},"code":{"type":"string","description":"Language two-character ISO 639-1 codes.","x-example":"it"},"nativeName":{"type":"string","description":"Language native name.","x-example":"Italiano"}},"required":["name","code","nativeName"]},"currency":{"description":"Currency","type":"object","properties":{"symbol":{"type":"string","description":"Currency symbol.","x-example":"$"},"name":{"type":"string","description":"Currency name.","x-example":"US dollar"},"symbolNative":{"type":"string","description":"Currency native symbol.","x-example":"$"},"decimalDigits":{"type":"integer","description":"Number of decimal digits.","x-example":2,"format":"int32"},"rounding":{"type":"number","description":"Currency digit rounding.","x-example":0,"format":"float"},"code":{"type":"string","description":"Currency code in [ISO 4217-1](http:\/\/en.wikipedia.org\/wiki\/ISO_4217) three-character format.","x-example":"USD"},"namePlural":{"type":"string","description":"Currency plural name","x-example":"US dollars"}},"required":["symbol","name","symbolNative","decimalDigits","rounding","code","namePlural"]},"phone":{"description":"Phone","type":"object","properties":{"code":{"type":"string","description":"Phone code.","x-example":"+1"},"countryCode":{"type":"string","description":"Country two-character ISO 3166-1 alpha code.","x-example":"US"},"countryName":{"type":"string","description":"Country name.","x-example":"United States"}},"required":["code","countryCode","countryName"]}},"externalDocs":{"description":"Full API docs, specs and tutorials","url":"https:\/\/appwrite.io\/docs"}} \ No newline at end of file diff --git a/app/config/specs/0.11.x.console.json b/app/config/specs/0.11.x.console.json new file mode 100644 index 0000000000..51c7ed09f7 --- /dev/null +++ b/app/config/specs/0.11.x.console.json @@ -0,0 +1 @@ +{"swagger":"2.0","info":{"version":"0.11.0","title":"Appwrite","description":"Appwrite backend as a service cuts up to 70% of the time and costs required for building a modern application. We abstract and simplify common development tasks behind a REST APIs, to help you develop your app in a fast and secure way. For full API documentation and tutorials go to [https:\/\/appwrite.io\/docs](https:\/\/appwrite.io\/docs)","termsOfService":"https:\/\/appwrite.io\/policy\/terms","contact":{"name":"Appwrite Team","url":"https:\/\/appwrite.io\/support","email":"team@appwrite.io"},"license":{"name":"BSD-3-Clause","url":"https:\/\/raw.githubusercontent.com\/appwrite\/appwrite\/master\/LICENSE"}},"host":"appwrite.io","basePath":"\/v1","schemes":["https"],"consumes":["application\/json","multipart\/form-data"],"produces":["application\/json"],"securityDefinitions":{"Project":{"type":"apiKey","name":"X-Appwrite-Project","description":"Your project ID","in":"header","x-appwrite":{"demo":"5df5acd0d48c2"}},"Key":{"type":"apiKey","name":"X-Appwrite-Key","description":"Your secret API key","in":"header","x-appwrite":{"demo":"919c2d18fb5d4...a2ae413da83346ad2"}},"JWT":{"type":"apiKey","name":"X-Appwrite-JWT","description":"Your secret JSON Web Token","in":"header","x-appwrite":{"demo":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ..."}},"Locale":{"type":"apiKey","name":"X-Appwrite-Locale","description":"","in":"header","x-appwrite":{"demo":"en"}},"Mode":{"type":"apiKey","name":"X-Appwrite-Mode","description":"","in":"header","x-appwrite":{"demo":""}}},"paths":{"\/account":{"get":{"summary":"Get Account","operationId":"accountGet","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Get currently logged in user data as JSON object.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"get","weight":47,"cookies":false,"type":"","demo":"account\/get.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/get.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]},"post":{"summary":"Create Account","operationId":"accountCreate","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to allow a new user to register a new account in your project. After the user registration completes successfully, you can use the [\/account\/verfication](\/docs\/client\/account#accountCreateVerification) route to start verifying the user email address. To allow the new user to login to their new account, you need to create a new [account session](\/docs\/client\/account#accountCreateSession).","responses":{"201":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"create","weight":37,"cookies":false,"type":"","demo":"account\/create.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"public","platforms":["client"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"User email.","default":null,"x-example":"email@example.com"},"password":{"type":"string","description":"User password. Must be between 6 to 32 chars.","default":null,"x-example":"password"},"name":{"type":"string","description":"User name. Max length: 128 chars.","default":"","x-example":"[NAME]"}},"required":["email","password"]}}]},"delete":{"summary":"Delete Account","operationId":"accountDelete","consumes":["application\/json"],"produces":[],"tags":["account"],"description":"Delete a currently logged in user account. Behind the scene, the user record is not deleted but permanently blocked from any access. This is done to avoid deleted accounts being overtaken by new users with the same email address. Any user-related resources like documents or storage files should be deleted separately.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"delete","weight":56,"cookies":false,"type":"","demo":"account\/delete.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/delete.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]}},"\/account\/email":{"patch":{"summary":"Update Account Email","operationId":"accountUpdateEmail","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Update currently logged in user account email address. After changing user address, user confirmation status is being reset and a new confirmation mail is sent. For security measures, user password is required to complete this request.\nThis endpoint can also be used to convert an anonymous account to a normal one, by passing an email address and a new password.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updateEmail","weight":54,"cookies":false,"type":"","demo":"account\/update-email.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-email.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"User email.","default":null,"x-example":"email@example.com"},"password":{"type":"string","description":"User password. Must be between 6 to 32 chars.","default":null,"x-example":"password"}},"required":["email","password"]}}]}},"\/account\/jwt":{"post":{"summary":"Create Account JWT","operationId":"accountCreateJWT","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to create a JSON Web Token. You can use the resulting JWT to authenticate on behalf of the current user when working with the Appwrite server-side API and SDKs. The JWT secret is valid for 15 minutes from its creation and will be invalid if the user will logout in that time frame.","responses":{"201":{"description":"JWT","schema":{"$ref":"#\/definitions\/jwt"}}},"x-appwrite":{"method":"createJWT","weight":46,"cookies":false,"type":"","demo":"account\/create-j-w-t.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-jwt.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},userId:{userId}","scope":"account","platforms":["client"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}]}},"\/account\/logs":{"get":{"summary":"Get Account Logs","operationId":"accountGetLogs","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Get currently logged in user list of latest security activity logs. Each log returns user IP address, location and date and time of log.","responses":{"200":{"description":"Logs List","schema":{"$ref":"#\/definitions\/logList"}}},"x-appwrite":{"method":"getLogs","weight":50,"cookies":false,"type":"","demo":"account\/get-logs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/get-logs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]}},"\/account\/name":{"patch":{"summary":"Update Account Name","operationId":"accountUpdateName","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Update currently logged in user account name.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updateName","weight":52,"cookies":false,"type":"","demo":"account\/update-name.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-name.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"User name. Max length: 128 chars.","default":null,"x-example":"[NAME]"}},"required":["name"]}}]}},"\/account\/password":{"patch":{"summary":"Update Account Password","operationId":"accountUpdatePassword","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Update currently logged in user password. For validation, user is required to pass in the new password, and the old password. For users created with OAuth and Team Invites, oldPassword is optional.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updatePassword","weight":53,"cookies":false,"type":"","demo":"account\/update-password.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-password.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"password":{"type":"string","description":"New user password. Must be between 6 to 32 chars.","default":null,"x-example":"password"},"oldPassword":{"type":"string","description":"Old user password. Must be between 6 to 32 chars.","default":"","x-example":"password"}},"required":["password"]}}]}},"\/account\/prefs":{"get":{"summary":"Get Account Preferences","operationId":"accountGetPrefs","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Get currently logged in user preferences as a key-value object.","responses":{"200":{"description":"Preferences","schema":{"$ref":"#\/definitions\/preferences"}}},"x-appwrite":{"method":"getPrefs","weight":48,"cookies":false,"type":"","demo":"account\/get-prefs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/get-prefs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]},"patch":{"summary":"Update Account Preferences","operationId":"accountUpdatePrefs","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Update currently logged in user account preferences. You can pass only the specific settings you wish to update.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updatePrefs","weight":55,"cookies":false,"type":"","demo":"account\/update-prefs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-prefs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"prefs":{"type":"object","description":"Prefs key-value JSON object.","default":null,"x-example":"{}"}},"required":["prefs"]}}]}},"\/account\/recovery":{"post":{"summary":"Create Password Recovery","operationId":"accountCreateRecovery","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Sends the user an email with a temporary secret key for password reset. When the user clicks the confirmation link he is redirected back to your app password reset URL with the secret key and email address values attached to the URL query string. Use the query string params to submit a request to the [PUT \/account\/recovery](\/docs\/client\/account#accountUpdateRecovery) endpoint to complete the process. The verification link sent to the user's email address is valid for 1 hour.","responses":{"201":{"description":"Token","schema":{"$ref":"#\/definitions\/token"}}},"x-appwrite":{"method":"createRecovery","weight":59,"cookies":false,"type":"","demo":"account\/create-recovery.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-recovery.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},email:{param-email}","scope":"public","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"User email.","default":null,"x-example":"email@example.com"},"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.","default":null,"x-example":"https:\/\/example.com"}},"required":["email","url"]}}]},"put":{"summary":"Create Password Recovery (confirmation)","operationId":"accountUpdateRecovery","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to complete the user account password reset. Both the **userId** and **secret** arguments will be passed as query parameters to the redirect URL you have provided when sending your request to the [POST \/account\/recovery](\/docs\/client\/account#accountCreateRecovery) endpoint.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md) the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.","responses":{"200":{"description":"Token","schema":{"$ref":"#\/definitions\/token"}}},"x-appwrite":{"method":"updateRecovery","weight":60,"cookies":false,"type":"","demo":"account\/update-recovery.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-recovery.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},userId:{param-userId}","scope":"public","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"userId":{"type":"string","description":"User account UID address.","default":null,"x-example":"[USER_ID]"},"secret":{"type":"string","description":"Valid reset token.","default":null,"x-example":"[SECRET]"},"password":{"type":"string","description":"New password. Must be between 6 to 32 chars.","default":null,"x-example":"password"},"passwordAgain":{"type":"string","description":"New password again. Must be between 6 to 32 chars.","default":null,"x-example":"password"}},"required":["userId","secret","password","passwordAgain"]}}]}},"\/account\/sessions":{"get":{"summary":"Get Account Sessions","operationId":"accountGetSessions","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Get currently logged in user list of active sessions across different devices.","responses":{"200":{"description":"Sessions List","schema":{"$ref":"#\/definitions\/sessionList"}}},"x-appwrite":{"method":"getSessions","weight":49,"cookies":false,"type":"","demo":"account\/get-sessions.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/get-sessions.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]},"post":{"summary":"Create Account Session","operationId":"accountCreateSession","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Allow the user to login into their account by providing a valid email and password combination. This route will create a new session for the user.","responses":{"201":{"description":"Session","schema":{"$ref":"#\/definitions\/session"}}},"x-appwrite":{"method":"createSession","weight":38,"cookies":false,"type":"","demo":"account\/create-session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-session.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},email:{param-email}","scope":"public","platforms":["client"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"User email.","default":null,"x-example":"email@example.com"},"password":{"type":"string","description":"User password. Must be between 6 to 32 chars.","default":null,"x-example":"password"}},"required":["email","password"]}}]},"delete":{"summary":"Delete All Account Sessions","operationId":"accountDeleteSessions","consumes":["application\/json"],"produces":[],"tags":["account"],"description":"Delete all sessions from the user account and remove any sessions cookies from the end client.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteSessions","weight":58,"cookies":false,"type":"","demo":"account\/delete-sessions.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/delete-sessions.md","rate-limit":100,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}]}},"\/account\/sessions\/anonymous":{"post":{"summary":"Create Anonymous Session","operationId":"accountCreateAnonymousSession","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to allow a new user to register an anonymous account in your project. This route will also create a new session for the user. To allow the new user to convert an anonymous account to a normal account, you need to update its [email and password](\/docs\/client\/account#accountUpdateEmail) or create an [OAuth2 session](\/docs\/client\/account#accountCreateOAuth2Session).","responses":{"201":{"description":"Session","schema":{"$ref":"#\/definitions\/session"}}},"x-appwrite":{"method":"createAnonymousSession","weight":45,"cookies":false,"type":"","demo":"account\/create-anonymous-session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-session-anonymous.md","rate-limit":50,"rate-time":3600,"rate-key":"ip:{ip}","scope":"public","platforms":["client"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}]}},"\/account\/sessions\/magic-url":{"post":{"summary":"Create Magic URL session","operationId":"accountCreateMagicURLSession","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Sends the user an email with a secret key for creating a session. When the user clicks the link in the email, the user is redirected back to the URL you provided with the secret key and userId values attached to the URL query string. Use the query string parameters to submit a request to the [PUT \/account\/sessions\/magic-url](\/docs\/client\/account#accountUpdateMagicURLSession) endpoint to complete the login process. The link sent to the user's email address is valid for 1 hour. If you are on a mobile device you can leave the URL parameter empty, so that the login completion will be handled by your Appwrite instance by default.","responses":{"201":{"description":"Token","schema":{"$ref":"#\/definitions\/token"}}},"x-appwrite":{"method":"createMagicURLSession","weight":43,"cookies":false,"type":"","demo":"account\/create-magic-u-r-l-session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-magic-url-session.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},email:{param-email}","scope":"public","platforms":["client"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"User email.","default":null,"x-example":"email@example.com"},"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.","default":"","x-example":"https:\/\/example.com"}},"required":["email"]}}]},"put":{"summary":"Create Magic URL session (confirmation)","operationId":"accountUpdateMagicURLSession","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to complete creating the session with the Magic URL. Both the **userId** and **secret** arguments will be passed as query parameters to the redirect URL you have provided when sending your request to the [POST \/account\/sessions\/magic-url](\/docs\/client\/account#accountCreateMagicURLSession) endpoint.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md) the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.","responses":{"200":{"description":"Session","schema":{"$ref":"#\/definitions\/session"}}},"x-appwrite":{"method":"updateMagicURLSession","weight":44,"cookies":false,"type":"","demo":"account\/update-magic-u-r-l-session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-magic-url-session.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},userId:{param-userId}","scope":"public","platforms":["client"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"userId":{"type":"string","description":"User unique ID.","default":null,"x-example":"[USER_ID]"},"secret":{"type":"string","description":"Valid verification token.","default":null,"x-example":"[SECRET]"}},"required":["userId","secret"]}}]}},"\/account\/sessions\/oauth2\/{provider}":{"get":{"summary":"Create Account Session with OAuth2","operationId":"accountCreateOAuth2Session","consumes":["application\/json"],"produces":["text\/html"],"tags":["account"],"description":"Allow the user to login to their account using the OAuth2 provider of their choice. Each OAuth2 provider should be enabled from the Appwrite console first. Use the success and failure arguments to provide a redirect URL's back to your app when login is completed.\n\nIf there is already an active session, the new session will be attached to the logged-in account. If there are no active sessions, the server will attempt to look for a user with the same email address as the email received from the OAuth2 provider and attach the new session to the existing user. If no matching user is found - the server will create a new user..\n","responses":{"301":{"description":"No content"}},"x-appwrite":{"method":"createOAuth2Session","weight":39,"cookies":false,"type":"webAuth","demo":"account\/create-o-auth2session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-session-oauth2.md","rate-limit":50,"rate-time":3600,"rate-key":"ip:{ip}","scope":"public","platforms":["client"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"provider","description":"OAuth2 Provider. Currently, supported providers are: amazon, apple, bitbucket, bitly, box, discord, dropbox, facebook, github, gitlab, google, linkedin, microsoft, paypal, paypalSandbox, salesforce, slack, spotify, tradeshift, tradeshiftBox, twitch, vk, yahoo, yandex, wordpress.","required":true,"type":"string","x-example":"amazon","in":"path"},{"name":"success","description":"URL to redirect back to your app after a successful login attempt. 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.","required":false,"type":"string","format":"url","x-example":"https:\/\/example.com","default":"","in":"query"},{"name":"failure","description":"URL to redirect back to your app after a failed login attempt. 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.","required":false,"type":"string","format":"url","x-example":"https:\/\/example.com","default":"","in":"query"},{"name":"scopes","description":"A list of custom OAuth2 scopes. Check each provider internal docs for a list of supported scopes.","required":false,"type":"array","collectionFormat":"multi","items":{"type":"string"},"default":[],"in":"query"}]}},"\/account\/sessions\/{sessionId}":{"get":{"summary":"Get Session By ID","operationId":"accountGetSession","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to get a logged in user's session using a Session ID. Inputting 'current' will return the current session being used.","responses":{"200":{"description":"Session","schema":{"$ref":"#\/definitions\/session"}}},"x-appwrite":{"method":"getSession","weight":51,"cookies":false,"type":"","demo":"account\/get-session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/get-session.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"sessionId","description":"Session unique ID. Use the string 'current' to get the current device session.","required":true,"type":"string","x-example":"[SESSION_ID]","in":"path"}]},"delete":{"summary":"Delete Account Session","operationId":"accountDeleteSession","consumes":["application\/json"],"produces":[],"tags":["account"],"description":"Use this endpoint to log out the currently logged in user from all their account sessions across all of their different devices. When using the option id argument, only the session unique ID provider will be deleted.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteSession","weight":57,"cookies":false,"type":"","demo":"account\/delete-session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/delete-session.md","rate-limit":100,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"sessionId","description":"Session unique ID. Use the string 'current' to delete the current device session.","required":true,"type":"string","x-example":"[SESSION_ID]","in":"path"}]}},"\/account\/verification":{"post":{"summary":"Create Email Verification","operationId":"accountCreateVerification","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](\/docs\/client\/account#accountUpdateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n","responses":{"201":{"description":"Token","schema":{"$ref":"#\/definitions\/token"}}},"x-appwrite":{"method":"createVerification","weight":61,"cookies":false,"type":"","demo":"account\/create-verification.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-verification.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},userId:{userId}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"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.","default":null,"x-example":"https:\/\/example.com"}},"required":["url"]}}]},"put":{"summary":"Create Email Verification (confirmation)","operationId":"accountUpdateVerification","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.","responses":{"200":{"description":"Token","schema":{"$ref":"#\/definitions\/token"}}},"x-appwrite":{"method":"updateVerification","weight":62,"cookies":false,"type":"","demo":"account\/update-verification.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-verification.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},userId:{param-userId}","scope":"public","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"userId":{"type":"string","description":"User unique ID.","default":null,"x-example":"[USER_ID]"},"secret":{"type":"string","description":"Valid verification token.","default":null,"x-example":"[SECRET]"}},"required":["userId","secret"]}}]}},"\/avatars\/browsers\/{code}":{"get":{"summary":"Get Browser Icon","operationId":"avatarsGetBrowser","consumes":["application\/json"],"produces":["image\/png"],"tags":["avatars"],"description":"You can use this endpoint to show different browser icons to your users. The code argument receives the browser code as it appears in your user \/account\/sessions endpoint. Use width, height and quality arguments to change the output settings.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getBrowser","weight":64,"cookies":false,"type":"location","demo":"avatars\/get-browser.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-browser.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"code","description":"Browser Code.","required":true,"type":"string","x-example":"aa","in":"path"},{"name":"width","description":"Image width. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"height","description":"Image height. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"quality","description":"Image quality. Pass an integer between 0 to 100. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"}]}},"\/avatars\/credit-cards\/{code}":{"get":{"summary":"Get Credit Card Icon","operationId":"avatarsGetCreditCard","consumes":["application\/json"],"produces":["image\/png"],"tags":["avatars"],"description":"The credit card endpoint will return you the icon of the credit card provider you need. Use width, height and quality arguments to change the output settings.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getCreditCard","weight":63,"cookies":false,"type":"location","demo":"avatars\/get-credit-card.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-credit-card.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"code","description":"Credit Card Code. Possible values: amex, argencard, cabal, censosud, diners, discover, elo, hipercard, jcb, mastercard, naranja, targeta-shopping, union-china-pay, visa, mir, maestro.","required":true,"type":"string","x-example":"amex","in":"path"},{"name":"width","description":"Image width. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"height","description":"Image height. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"quality","description":"Image quality. Pass an integer between 0 to 100. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"}]}},"\/avatars\/favicon":{"get":{"summary":"Get Favicon","operationId":"avatarsGetFavicon","consumes":["application\/json"],"produces":["image\/*"],"tags":["avatars"],"description":"Use this endpoint to fetch the favorite icon (AKA favicon) of any remote website URL.\n","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getFavicon","weight":67,"cookies":false,"type":"location","demo":"avatars\/get-favicon.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-favicon.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"url","description":"Website URL which you want to fetch the favicon from.","required":true,"type":"string","format":"url","x-example":"https:\/\/example.com","in":"query"}]}},"\/avatars\/flags\/{code}":{"get":{"summary":"Get Country Flag","operationId":"avatarsGetFlag","consumes":["application\/json"],"produces":["image\/png"],"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.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getFlag","weight":65,"cookies":false,"type":"location","demo":"avatars\/get-flag.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-flag.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"code","description":"Country Code. ISO Alpha-2 country code format.","required":true,"type":"string","x-example":"af","in":"path"},{"name":"width","description":"Image width. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"height","description":"Image height. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"quality","description":"Image quality. Pass an integer between 0 to 100. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"}]}},"\/avatars\/image":{"get":{"summary":"Get Image from URL","operationId":"avatarsGetImage","consumes":["application\/json"],"produces":["image\/*"],"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.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getImage","weight":66,"cookies":false,"type":"location","demo":"avatars\/get-image.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-image.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"url","description":"Image URL which you want to crop.","required":true,"type":"string","format":"url","x-example":"https:\/\/example.com","in":"query"},{"name":"width","description":"Resize preview image width, Pass an integer between 0 to 2000.","required":false,"type":"integer","format":"int32","x-example":0,"default":400,"in":"query"},{"name":"height","description":"Resize preview image height, Pass an integer between 0 to 2000.","required":false,"type":"integer","format":"int32","x-example":0,"default":400,"in":"query"}]}},"\/avatars\/initials":{"get":{"summary":"Get User Initials","operationId":"avatarsGetInitials","consumes":["application\/json"],"produces":["image\/png"],"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.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getInitials","weight":69,"cookies":false,"type":"location","demo":"avatars\/get-initials.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-initials.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"name","description":"Full Name. When empty, current user name or email will be used. Max length: 128 chars.","required":false,"type":"string","x-example":"[NAME]","default":"","in":"query"},{"name":"width","description":"Image width. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":500,"in":"query"},{"name":"height","description":"Image height. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":500,"in":"query"},{"name":"color","description":"Changes text color. By default a random color will be picked and stay will persistent to the given name.","required":false,"type":"string","default":"","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,"type":"string","default":"","in":"query"}]}},"\/avatars\/qr":{"get":{"summary":"Get QR Code","operationId":"avatarsGetQR","consumes":["application\/json"],"produces":["image\/png"],"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.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getQR","weight":68,"cookies":false,"type":"location","demo":"avatars\/get-q-r.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-qr.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"text","description":"Plain text to be converted to QR code image.","required":true,"type":"string","x-example":"[TEXT]","in":"query"},{"name":"size","description":"QR code size. Pass an integer between 0 to 1000. Defaults to 400.","required":false,"type":"integer","format":"int32","x-example":0,"default":400,"in":"query"},{"name":"margin","description":"Margin from edge. Pass an integer between 0 to 10. Defaults to 1.","required":false,"type":"integer","format":"int32","x-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,"type":"boolean","x-example":false,"default":false,"in":"query"}]}},"\/database\/collections":{"get":{"summary":"List Collections","operationId":"databaseListCollections","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Get a list of all the user collections. You can use the query params to filter your results. On admin mode, this endpoint will return a list of all of the project's collections. [Learn more about different API modes](\/docs\/admin).","responses":{"200":{"description":"Collections List","schema":{"$ref":"#\/definitions\/collectionList"}}},"x-appwrite":{"method":"listCollections","weight":71,"cookies":false,"type":"","demo":"database\/list-collections.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/list-collections.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"collections.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create Collection","operationId":"databaseCreateCollection","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Create a new Collection.","responses":{"201":{"description":"Collection","schema":{"$ref":"#\/definitions\/collection"}}},"x-appwrite":{"method":"createCollection","weight":70,"cookies":false,"type":"","demo":"database\/create-collection.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/create-collection.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"collections.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Collection name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"read":{"type":"array","description":"An array of strings with read permissions. By default no user is granted with any read permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"write":{"type":"array","description":"An array of strings with write permissions. By default no user is granted with any write permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"rules":{"type":"array","description":"Array of [rule objects](\/docs\/rules). Each rule define a collection field name, data type and validation.","default":null,"x-example":null,"items":{"type":"string"}}},"required":["name","read","write","rules"]}}]}},"\/database\/collections\/{collectionId}":{"get":{"summary":"Get Collection","operationId":"databaseGetCollection","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Get a collection by its unique ID. This endpoint response returns a JSON object with the collection metadata.","responses":{"200":{"description":"Collection","schema":{"$ref":"#\/definitions\/collection"}}},"x-appwrite":{"method":"getCollection","weight":72,"cookies":false,"type":"","demo":"database\/get-collection.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/get-collection.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"collections.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID.","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"}]},"put":{"summary":"Update Collection","operationId":"databaseUpdateCollection","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Update a collection by its unique ID.","responses":{"200":{"description":"Collection","schema":{"$ref":"#\/definitions\/collection"}}},"x-appwrite":{"method":"updateCollection","weight":73,"cookies":false,"type":"","demo":"database\/update-collection.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/update-collection.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"collections.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID.","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Collection name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"read":{"type":"array","description":"An array of strings with read permissions. By default inherits the existing read permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"write":{"type":"array","description":"An array of strings with write permissions. By default inherits the existing write permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"rules":{"type":"array","description":"Array of [rule objects](\/docs\/rules). Each rule define a collection field name, data type and validation.","default":[],"x-example":null,"items":{"type":"string"}}},"required":["name"]}}]},"delete":{"summary":"Delete Collection","operationId":"databaseDeleteCollection","consumes":["application\/json"],"produces":[],"tags":["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"}},"x-appwrite":{"method":"deleteCollection","weight":74,"cookies":false,"type":"","demo":"database\/delete-collection.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/delete-collection.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"collections.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID.","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"}]}},"\/database\/collections\/{collectionId}\/documents":{"get":{"summary":"List Documents","operationId":"databaseListDocuments","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Get a list of all the user documents. You can use the query params to filter your results. On admin mode, this endpoint will return a list of all of the project's documents. [Learn more about different API modes](\/docs\/admin).","responses":{"200":{"description":"Documents List","schema":{"$ref":"#\/definitions\/documentList"}}},"x-appwrite":{"method":"listDocuments","weight":76,"cookies":false,"type":"","demo":"database\/list-documents.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/list-documents.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"documents.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](\/docs\/server\/database#createCollection).","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"filters","description":"Array of filter strings. Each filter is constructed from a key name, comparison operator (=, !=, >, <, <=, >=) and a value. You can also use a dot (.) separator in attribute names to filter by child document attributes. Examples: 'name=John Doe' or 'category.$id>=5bed2d152c362'.","required":false,"type":"array","collectionFormat":"multi","items":{"type":"string"},"default":[],"in":"query"},{"name":"limit","description":"Maximum number of documents to return in response. Use this value to manage pagination. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Offset value. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderField","description":"Document field that results will be sorted by.","required":false,"type":"string","x-example":"[ORDER_FIELD]","default":"","in":"query"},{"name":"orderType","description":"Order direction. Possible values are DESC for descending order, or ASC for ascending order.","required":false,"type":"string","x-example":"DESC","default":"ASC","in":"query"},{"name":"orderCast","description":"Order field type casting. Possible values are int, string, date, time or datetime. The database will attempt to cast the order field to the value you pass here. The default value is a string.","required":false,"type":"string","x-example":"int","default":"string","in":"query"},{"name":"search","description":"Search query. Enter any free text search. The database will try to find a match against all document attributes and children. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"}]},"post":{"summary":"Create Document","operationId":"databaseCreateDocument","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Create a new Document. Before using this route, you should create a new collection resource using either a [server integration](\/docs\/server\/database#databaseCreateCollection) API or directly from your database console.","responses":{"201":{"description":"Document","schema":{"$ref":"#\/definitions\/document"}}},"x-appwrite":{"method":"createDocument","weight":75,"cookies":false,"type":"","demo":"database\/create-document.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/create-document.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"documents.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](\/docs\/server\/database#createCollection).","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"data":{"type":"object","description":"Document data as JSON object.","default":null,"x-example":"{}"},"read":{"type":"array","description":"An array of strings with read permissions. By default only the current user is granted with read permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"write":{"type":"array","description":"An array of strings with write permissions. By default only the current user is granted with write permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"parentDocument":{"type":"string","description":"Parent document unique ID. Use when you want your new document to be a child of a parent document.","default":"","x-example":"[PARENT_DOCUMENT]"},"parentProperty":{"type":"string","description":"Parent document property name. Use when you want your new document to be a child of a parent document.","default":"","x-example":null},"parentPropertyType":{"type":"string","description":"Parent document property connection type. You can set this value to **assign**, **append** or **prepend**, default value is assign. Use when you want your new document to be a child of a parent document.","default":"assign","x-example":"assign"}},"required":["data"]}}]}},"\/database\/collections\/{collectionId}\/documents\/{documentId}":{"get":{"summary":"Get Document","operationId":"databaseGetDocument","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Get a document by its unique ID. This endpoint response returns a JSON object with the document data.","responses":{"200":{"description":"Document","schema":{"$ref":"#\/definitions\/document"}}},"x-appwrite":{"method":"getDocument","weight":77,"cookies":false,"type":"","demo":"database\/get-document.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/get-document.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"documents.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](\/docs\/server\/database#createCollection).","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"documentId","description":"Document unique ID.","required":true,"type":"string","x-example":"[DOCUMENT_ID]","in":"path"}]},"patch":{"summary":"Update Document","operationId":"databaseUpdateDocument","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"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","schema":{"$ref":"#\/definitions\/document"}}},"x-appwrite":{"method":"updateDocument","weight":78,"cookies":false,"type":"","demo":"database\/update-document.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/update-document.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"documents.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](\/docs\/server\/database#createCollection).","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"documentId","description":"Document unique ID.","required":true,"type":"string","x-example":"[DOCUMENT_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"data":{"type":"object","description":"Document data as JSON object.","default":null,"x-example":"{}"},"read":{"type":"array","description":"An array of strings with read permissions. By default inherits the existing read permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"write":{"type":"array","description":"An array of strings with write permissions. By default inherits the existing write permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}}},"required":["data"]}}]},"delete":{"summary":"Delete Document","operationId":"databaseDeleteDocument","consumes":["application\/json"],"produces":[],"tags":["database"],"description":"Delete a document by its unique ID. This endpoint deletes only the parent documents, its attributes and relations to other documents. Child documents **will not** be deleted.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteDocument","weight":79,"cookies":false,"type":"","demo":"database\/delete-document.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/delete-document.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"documents.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](\/docs\/server\/database#createCollection).","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"documentId","description":"Document unique ID.","required":true,"type":"string","x-example":"[DOCUMENT_ID]","in":"path"}]}},"\/functions":{"get":{"summary":"List Functions","operationId":"functionsList","consumes":["application\/json"],"produces":["application\/json"],"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","schema":{"$ref":"#\/definitions\/functionList"}}},"x-appwrite":{"method":"list","weight":169,"cookies":false,"type":"","demo":"functions\/list.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/list-functions.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create Function","operationId":"functionsCreate","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Create a new function. You can pass a list of [permissions](\/docs\/permissions) to allow different project users or team with access to execute the function using the client API.","responses":{"201":{"description":"Function","schema":{"$ref":"#\/definitions\/function"}}},"x-appwrite":{"method":"create","weight":168,"cookies":false,"type":"","demo":"functions\/create.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/create-function.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Function name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"execute":{"type":"array","description":"An array of strings with execution permissions. By default no user is granted with any execute permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"runtime":{"type":"string","description":"Execution runtime.","default":null,"x-example":"dotnet-5.0"},"vars":{"type":"object","description":"Key-value JSON object.","default":{},"x-example":"{}"},"events":{"type":"array","description":"Events list.","default":[],"x-example":null,"items":{"type":"string"}},"schedule":{"type":"string","description":"Schedule CRON syntax.","default":"","x-example":null},"timeout":{"type":"integer","description":"Function maximum execution time in seconds.","default":15,"x-example":1}},"required":["name","execute","runtime"]}}]}},"\/functions\/{functionId}":{"get":{"summary":"Get Function","operationId":"functionsGet","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Get a function by its unique ID.","responses":{"200":{"description":"Function","schema":{"$ref":"#\/definitions\/function"}}},"x-appwrite":{"method":"get","weight":170,"cookies":false,"type":"","demo":"functions\/get.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/get-function.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"}]},"put":{"summary":"Update Function","operationId":"functionsUpdate","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Update function by its unique ID.","responses":{"200":{"description":"Function","schema":{"$ref":"#\/definitions\/function"}}},"x-appwrite":{"method":"update","weight":172,"cookies":false,"type":"","demo":"functions\/update.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/update-function.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Function name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"execute":{"type":"array","description":"An array of strings with execution permissions. By default no user is granted with any execute permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"vars":{"type":"object","description":"Key-value JSON object.","default":{},"x-example":"{}"},"events":{"type":"array","description":"Events list.","default":[],"x-example":null,"items":{"type":"string"}},"schedule":{"type":"string","description":"Schedule CRON syntax.","default":"","x-example":null},"timeout":{"type":"integer","description":"Function maximum execution time in seconds.","default":15,"x-example":1}},"required":["name","execute"]}}]},"delete":{"summary":"Delete Function","operationId":"functionsDelete","consumes":["application\/json"],"produces":[],"tags":["functions"],"description":"Delete a function by its unique ID.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"delete","weight":174,"cookies":false,"type":"","demo":"functions\/delete.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/delete-function.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"}]}},"\/functions\/{functionId}\/executions":{"get":{"summary":"List Executions","operationId":"functionsListExecutions","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Get a list of all the current user function execution logs. You can use the query params to filter your results. On admin mode, this endpoint will return a list of all of the project's executions. [Learn more about different API modes](\/docs\/admin).","responses":{"200":{"description":"Executions List","schema":{"$ref":"#\/definitions\/executionList"}}},"x-appwrite":{"method":"listExecutions","weight":180,"cookies":false,"type":"","demo":"functions\/list-executions.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/list-executions.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"execution.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create Execution","operationId":"functionsCreateExecution","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Trigger a function execution. The returned object will return you the current execution status. You can ping the `Get Execution` endpoint to get updates on the current execution status. Once this endpoint is called, your function execution process will start asynchronously.","responses":{"201":{"description":"Execution","schema":{"$ref":"#\/definitions\/execution"}}},"x-appwrite":{"method":"createExecution","weight":179,"cookies":false,"type":"","demo":"functions\/create-execution.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/create-execution.md","rate-limit":60,"rate-time":60,"rate-key":"url:{url},ip:{ip}","scope":"execution.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"data":{"type":"string","description":"String of custom data to send to function.","default":"","x-example":"[DATA]"}}}}]}},"\/functions\/{functionId}\/executions\/{executionId}":{"get":{"summary":"Get Execution","operationId":"functionsGetExecution","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Get a function execution log by its unique ID.","responses":{"200":{"description":"Execution","schema":{"$ref":"#\/definitions\/execution"}}},"x-appwrite":{"method":"getExecution","weight":181,"cookies":false,"type":"","demo":"functions\/get-execution.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/get-execution.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"execution.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"executionId","description":"Execution unique ID.","required":true,"type":"string","x-example":"[EXECUTION_ID]","in":"path"}]}},"\/functions\/{functionId}\/tag":{"patch":{"summary":"Update Function Tag","operationId":"functionsUpdateTag","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Update the function code tag ID using the unique function ID. Use this endpoint to switch the code tag that should be executed by the execution endpoint.","responses":{"200":{"description":"Function","schema":{"$ref":"#\/definitions\/function"}}},"x-appwrite":{"method":"updateTag","weight":173,"cookies":false,"type":"","demo":"functions\/update-tag.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/update-function-tag.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"tag":{"type":"string","description":"Tag unique ID.","default":null,"x-example":"[TAG]"}},"required":["tag"]}}]}},"\/functions\/{functionId}\/tags":{"get":{"summary":"List Tags","operationId":"functionsListTags","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Get a list of all the project's code tags. You can use the query params to filter your results.","responses":{"200":{"description":"Tags List","schema":{"$ref":"#\/definitions\/tagList"}}},"x-appwrite":{"method":"listTags","weight":176,"cookies":false,"type":"","demo":"functions\/list-tags.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/list-tags.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create Tag","operationId":"functionsCreateTag","consumes":["multipart\/form-data"],"produces":["application\/json"],"tags":["functions"],"description":"Create a new function code tag. 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 tag to use your new tag 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](\/docs\/functions).\n\nUse the \"command\" param to set the entry point used to execute your code.","responses":{"201":{"description":"Tag","schema":{"$ref":"#\/definitions\/tag"}}},"x-appwrite":{"method":"createTag","weight":175,"cookies":false,"type":"","demo":"functions\/create-tag.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/create-tag.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.write","platforms":["server"],"packaging":true,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"command","description":"Code execution command.","required":true,"type":"string","x-example":"[COMMAND]","in":"formData"},{"name":"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.","required":true,"type":"file","in":"formData"}]}},"\/functions\/{functionId}\/tags\/{tagId}":{"get":{"summary":"Get Tag","operationId":"functionsGetTag","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Get a code tag by its unique ID.","responses":{"200":{"description":"Tag","schema":{"$ref":"#\/definitions\/tag"}}},"x-appwrite":{"method":"getTag","weight":177,"cookies":false,"type":"","demo":"functions\/get-tag.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/get-tag.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"tagId","description":"Tag unique ID.","required":true,"type":"string","x-example":"[TAG_ID]","in":"path"}]},"delete":{"summary":"Delete Tag","operationId":"functionsDeleteTag","consumes":["application\/json"],"produces":[],"tags":["functions"],"description":"Delete a code tag by its unique ID.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteTag","weight":178,"cookies":false,"type":"","demo":"functions\/delete-tag.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/delete-tag.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"tagId","description":"Tag unique ID.","required":true,"type":"string","x-example":"[TAG_ID]","in":"path"}]}},"\/functions\/{functionId}\/usage":{"get":{"summary":"Get Function Usage","operationId":"functionsGetUsage","consumes":["application\/json"],"produces":[],"tags":["functions"],"description":"","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getUsage","weight":171,"cookies":false,"type":"","demo":"functions\/get-usage.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.read","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"range","description":"Date range.","required":false,"type":"string","x-example":"24h","default":"30d","in":"query"}]}},"\/health":{"get":{"summary":"Get HTTP","operationId":"healthGet","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Check the Appwrite HTTP server is up and responsive.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"get","weight":87,"cookies":false,"type":"","demo":"health\/get.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/anti-virus":{"get":{"summary":"Get Anti virus","operationId":"healthGetAntiVirus","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Check the Appwrite Anti Virus server is up and connection is successful.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getAntiVirus","weight":99,"cookies":false,"type":"","demo":"health\/get-anti-virus.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-storage-anti-virus.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/cache":{"get":{"summary":"Get Cache","operationId":"healthGetCache","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Check the Appwrite in-memory cache server is up and connection is successful.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getCache","weight":90,"cookies":false,"type":"","demo":"health\/get-cache.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-cache.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/db":{"get":{"summary":"Get DB","operationId":"healthGetDB","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Check the Appwrite database server is up and connection is successful.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getDB","weight":89,"cookies":false,"type":"","demo":"health\/get-d-b.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-db.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/queue\/certificates":{"get":{"summary":"Get Certificate Queue","operationId":"healthGetQueueCertificates","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Get the number of certificates that are waiting to be issued against [Letsencrypt](https:\/\/letsencrypt.org\/) in the Appwrite internal queue server.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getQueueCertificates","weight":96,"cookies":false,"type":"","demo":"health\/get-queue-certificates.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-queue-certificates.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/queue\/functions":{"get":{"summary":"Get Functions Queue","operationId":"healthGetQueueFunctions","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getQueueFunctions","weight":97,"cookies":false,"type":"","demo":"health\/get-queue-functions.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-queue-functions.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/queue\/logs":{"get":{"summary":"Get Logs Queue","operationId":"healthGetQueueLogs","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Get the number of logs that are waiting to be processed in the Appwrite internal queue server.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getQueueLogs","weight":94,"cookies":false,"type":"","demo":"health\/get-queue-logs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-queue-logs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/queue\/tasks":{"get":{"summary":"Get Tasks Queue","operationId":"healthGetQueueTasks","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Get the number of tasks that are waiting to be processed in the Appwrite internal queue server.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getQueueTasks","weight":93,"cookies":false,"type":"","demo":"health\/get-queue-tasks.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-queue-tasks.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/queue\/usage":{"get":{"summary":"Get Usage Queue","operationId":"healthGetQueueUsage","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Get the number of usage stats that are waiting to be processed in the Appwrite internal queue server.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getQueueUsage","weight":95,"cookies":false,"type":"","demo":"health\/get-queue-usage.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-queue-usage.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/queue\/webhooks":{"get":{"summary":"Get Webhooks Queue","operationId":"healthGetQueueWebhooks","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Get the number of webhooks that are waiting to be processed in the Appwrite internal queue server.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getQueueWebhooks","weight":92,"cookies":false,"type":"","demo":"health\/get-queue-webhooks.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-queue-webhooks.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/storage\/local":{"get":{"summary":"Get Local Storage","operationId":"healthGetStorageLocal","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Check the Appwrite local storage device is up and connection is successful.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getStorageLocal","weight":98,"cookies":false,"type":"","demo":"health\/get-storage-local.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-storage-local.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/time":{"get":{"summary":"Get Time","operationId":"healthGetTime","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Check the Appwrite server time is synced with Google remote NTP server. We use this technology to smoothly handle leap seconds with no disruptive events. The [Network Time Protocol](https:\/\/en.wikipedia.org\/wiki\/Network_Time_Protocol) (NTP) is used by hundreds of millions of computers and devices to synchronize their clocks over the Internet. If your computer sets its own clock, it likely uses NTP.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getTime","weight":91,"cookies":false,"type":"","demo":"health\/get-time.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-time.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}]}},"\/locale":{"get":{"summary":"Get User Locale","operationId":"localeGet","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"Get the current user location based on IP. Returns an object with user country code, country name, continent name, continent code, ip address and suggested currency. You can use the locale header to get the data in a supported language.\n\n([IP Geolocation by DB-IP](https:\/\/db-ip.com))","responses":{"200":{"description":"Locale","schema":{"$ref":"#\/definitions\/locale"}}},"x-appwrite":{"method":"get","weight":80,"cookies":false,"type":"","demo":"locale\/get.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-locale.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}]}},"\/locale\/continents":{"get":{"summary":"List Continents","operationId":"localeGetContinents","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all continents. You can use the locale header to get the data in a supported language.","responses":{"200":{"description":"Continents List","schema":{"$ref":"#\/definitions\/continentList"}}},"x-appwrite":{"method":"getContinents","weight":84,"cookies":false,"type":"","demo":"locale\/get-continents.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-continents.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}]}},"\/locale\/countries":{"get":{"summary":"List Countries","operationId":"localeGetCountries","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all countries. You can use the locale header to get the data in a supported language.","responses":{"200":{"description":"Countries List","schema":{"$ref":"#\/definitions\/countryList"}}},"x-appwrite":{"method":"getCountries","weight":81,"cookies":false,"type":"","demo":"locale\/get-countries.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-countries.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}]}},"\/locale\/countries\/eu":{"get":{"summary":"List EU Countries","operationId":"localeGetCountriesEU","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all countries that are currently members of the EU. You can use the locale header to get the data in a supported language.","responses":{"200":{"description":"Countries List","schema":{"$ref":"#\/definitions\/countryList"}}},"x-appwrite":{"method":"getCountriesEU","weight":82,"cookies":false,"type":"","demo":"locale\/get-countries-e-u.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-countries-eu.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}]}},"\/locale\/countries\/phones":{"get":{"summary":"List Countries Phone Codes","operationId":"localeGetCountriesPhones","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all countries phone codes. You can use the locale header to get the data in a supported language.","responses":{"200":{"description":"Phones List","schema":{"$ref":"#\/definitions\/phoneList"}}},"x-appwrite":{"method":"getCountriesPhones","weight":83,"cookies":false,"type":"","demo":"locale\/get-countries-phones.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-countries-phones.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}]}},"\/locale\/currencies":{"get":{"summary":"List Currencies","operationId":"localeGetCurrencies","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all currencies, including currency symbol, name, plural, and decimal digits for all major and minor currencies. You can use the locale header to get the data in a supported language.","responses":{"200":{"description":"Currencies List","schema":{"$ref":"#\/definitions\/currencyList"}}},"x-appwrite":{"method":"getCurrencies","weight":85,"cookies":false,"type":"","demo":"locale\/get-currencies.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-currencies.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}]}},"\/locale\/languages":{"get":{"summary":"List Languages","operationId":"localeGetLanguages","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all languages classified by ISO 639-1 including 2-letter code, name in English, and name in the respective language.","responses":{"200":{"description":"Languages List","schema":{"$ref":"#\/definitions\/languageList"}}},"x-appwrite":{"method":"getLanguages","weight":86,"cookies":false,"type":"","demo":"locale\/get-languages.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-languages.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}]}},"\/projects":{"get":{"summary":"List Projects","operationId":"projectsList","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Projects List","schema":{"$ref":"#\/definitions\/projectList"}}},"x-appwrite":{"method":"list","weight":102,"cookies":false,"type":"","demo":"projects\/list.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.read","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create Project","operationId":"projectsCreate","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"201":{"description":"Project","schema":{"$ref":"#\/definitions\/project"}}},"x-appwrite":{"method":"create","weight":101,"cookies":false,"type":"","demo":"projects\/create.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Project name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"teamId":{"type":"string","description":"Team unique ID.","default":null,"x-example":"[TEAM_ID]"},"description":{"type":"string","description":"Project description. Max length: 256 chars.","default":"","x-example":"[DESCRIPTION]"},"logo":{"type":"string","description":"Project logo.","default":"","x-example":"[LOGO]"},"url":{"type":"string","description":"Project URL.","default":"","x-example":"https:\/\/example.com"},"legalName":{"type":"string","description":"Project legal Name. Max length: 256 chars.","default":"","x-example":"[LEGAL_NAME]"},"legalCountry":{"type":"string","description":"Project legal Country. Max length: 256 chars.","default":"","x-example":"[LEGAL_COUNTRY]"},"legalState":{"type":"string","description":"Project legal State. Max length: 256 chars.","default":"","x-example":"[LEGAL_STATE]"},"legalCity":{"type":"string","description":"Project legal City. Max length: 256 chars.","default":"","x-example":"[LEGAL_CITY]"},"legalAddress":{"type":"string","description":"Project legal Address. Max length: 256 chars.","default":"","x-example":"[LEGAL_ADDRESS]"},"legalTaxId":{"type":"string","description":"Project legal Tax ID. Max length: 256 chars.","default":"","x-example":"[LEGAL_TAX_ID]"}},"required":["name","teamId"]}}]}},"\/projects\/{projectId}":{"get":{"summary":"Get Project","operationId":"projectsGet","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Project","schema":{"$ref":"#\/definitions\/project"}}},"x-appwrite":{"method":"get","weight":103,"cookies":false,"type":"","demo":"projects\/get.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.read","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"}]},"patch":{"summary":"Update Project","operationId":"projectsUpdate","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Project","schema":{"$ref":"#\/definitions\/project"}}},"x-appwrite":{"method":"update","weight":105,"cookies":false,"type":"","demo":"projects\/update.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Project name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"description":{"type":"string","description":"Project description. Max length: 256 chars.","default":"","x-example":"[DESCRIPTION]"},"logo":{"type":"string","description":"Project logo.","default":"","x-example":"[LOGO]"},"url":{"type":"string","description":"Project URL.","default":"","x-example":"https:\/\/example.com"},"legalName":{"type":"string","description":"Project legal name. Max length: 256 chars.","default":"","x-example":"[LEGAL_NAME]"},"legalCountry":{"type":"string","description":"Project legal country. Max length: 256 chars.","default":"","x-example":"[LEGAL_COUNTRY]"},"legalState":{"type":"string","description":"Project legal state. Max length: 256 chars.","default":"","x-example":"[LEGAL_STATE]"},"legalCity":{"type":"string","description":"Project legal city. Max length: 256 chars.","default":"","x-example":"[LEGAL_CITY]"},"legalAddress":{"type":"string","description":"Project legal address. Max length: 256 chars.","default":"","x-example":"[LEGAL_ADDRESS]"},"legalTaxId":{"type":"string","description":"Project legal tax ID. Max length: 256 chars.","default":"","x-example":"[LEGAL_TAX_ID]"}},"required":["name"]}}]},"delete":{"summary":"Delete Project","operationId":"projectsDelete","consumes":["application\/json"],"produces":[],"tags":["projects"],"description":"","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"delete","weight":109,"cookies":false,"type":"","demo":"projects\/delete.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"password":{"type":"string","description":"Your user password for confirmation. Must be between 6 to 32 chars.","default":null,"x-example":"[PASSWORD]"}},"required":["password"]}}]}},"\/projects\/{projectId}\/auth\/limit":{"patch":{"summary":"Update Project users limit","operationId":"projectsUpdateAuthLimit","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Project","schema":{"$ref":"#\/definitions\/project"}}},"x-appwrite":{"method":"updateAuthLimit","weight":107,"cookies":false,"type":"","demo":"projects\/update-auth-limit.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"limit":{"type":"integer","description":"Set the max number of users allowed in this project. Use 0 for unlimited.","default":null,"x-example":null}},"required":["limit"]}}]}},"\/projects\/{projectId}\/auth\/{method}":{"patch":{"summary":"Update Project auth method status. Use this endpoint to enable or disable a given auth method for this project.","operationId":"projectsUpdateAuthStatus","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Project","schema":{"$ref":"#\/definitions\/project"}}},"x-appwrite":{"method":"updateAuthStatus","weight":108,"cookies":false,"type":"","demo":"projects\/update-auth-status.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"method","description":"Auth Method. Possible values: email-password,magic-url,anonymous,invites,jwt,phone","required":true,"type":"string","x-example":"email-password","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"status":{"type":"boolean","description":"Set the status of this auth method.","default":null,"x-example":false}},"required":["status"]}}]}},"\/projects\/{projectId}\/domains":{"get":{"summary":"List Domains","operationId":"projectsListDomains","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Domains List","schema":{"$ref":"#\/definitions\/domainList"}}},"x-appwrite":{"method":"listDomains","weight":131,"cookies":false,"type":"","demo":"projects\/list-domains.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.read","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"}]},"post":{"summary":"Create Domain","operationId":"projectsCreateDomain","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"201":{"description":"Domain","schema":{"$ref":"#\/definitions\/domain"}}},"x-appwrite":{"method":"createDomain","weight":130,"cookies":false,"type":"","demo":"projects\/create-domain.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"domain":{"type":"string","description":"Domain name.","default":null,"x-example":null}},"required":["domain"]}}]}},"\/projects\/{projectId}\/domains\/{domainId}":{"get":{"summary":"Get Domain","operationId":"projectsGetDomain","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Domain","schema":{"$ref":"#\/definitions\/domain"}}},"x-appwrite":{"method":"getDomain","weight":132,"cookies":false,"type":"","demo":"projects\/get-domain.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.read","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"domainId","description":"Domain unique ID.","required":true,"type":"string","x-example":"[DOMAIN_ID]","in":"path"}]},"delete":{"summary":"Delete Domain","operationId":"projectsDeleteDomain","consumes":["application\/json"],"produces":[],"tags":["projects"],"description":"","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteDomain","weight":134,"cookies":false,"type":"","demo":"projects\/delete-domain.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"domainId","description":"Domain unique ID.","required":true,"type":"string","x-example":"[DOMAIN_ID]","in":"path"}]}},"\/projects\/{projectId}\/domains\/{domainId}\/verification":{"patch":{"summary":"Update Domain Verification Status","operationId":"projectsUpdateDomainVerification","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Domain","schema":{"$ref":"#\/definitions\/domain"}}},"x-appwrite":{"method":"updateDomainVerification","weight":133,"cookies":false,"type":"","demo":"projects\/update-domain-verification.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"domainId","description":"Domain unique ID.","required":true,"type":"string","x-example":"[DOMAIN_ID]","in":"path"}]}},"\/projects\/{projectId}\/keys":{"get":{"summary":"List Keys","operationId":"projectsListKeys","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"API Keys List","schema":{"$ref":"#\/definitions\/keyList"}}},"x-appwrite":{"method":"listKeys","weight":116,"cookies":false,"type":"","demo":"projects\/list-keys.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.read","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"}]},"post":{"summary":"Create Key","operationId":"projectsCreateKey","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"201":{"description":"Key","schema":{"$ref":"#\/definitions\/key"}}},"x-appwrite":{"method":"createKey","weight":115,"cookies":false,"type":"","demo":"projects\/create-key.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Key name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"scopes":{"type":"array","description":"Key scopes list.","default":null,"x-example":null,"items":{"type":"string"}}},"required":["name","scopes"]}}]}},"\/projects\/{projectId}\/keys\/{keyId}":{"get":{"summary":"Get Key","operationId":"projectsGetKey","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Key","schema":{"$ref":"#\/definitions\/key"}}},"x-appwrite":{"method":"getKey","weight":117,"cookies":false,"type":"","demo":"projects\/get-key.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.read","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"keyId","description":"Key unique ID.","required":true,"type":"string","x-example":"[KEY_ID]","in":"path"}]},"put":{"summary":"Update Key","operationId":"projectsUpdateKey","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Key","schema":{"$ref":"#\/definitions\/key"}}},"x-appwrite":{"method":"updateKey","weight":118,"cookies":false,"type":"","demo":"projects\/update-key.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"keyId","description":"Key unique ID.","required":true,"type":"string","x-example":"[KEY_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Key name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"scopes":{"type":"array","description":"Key scopes list","default":null,"x-example":null,"items":{"type":"string"}}},"required":["name","scopes"]}}]},"delete":{"summary":"Delete Key","operationId":"projectsDeleteKey","consumes":["application\/json"],"produces":[],"tags":["projects"],"description":"","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteKey","weight":119,"cookies":false,"type":"","demo":"projects\/delete-key.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"keyId","description":"Key unique ID.","required":true,"type":"string","x-example":"[KEY_ID]","in":"path"}]}},"\/projects\/{projectId}\/oauth2":{"patch":{"summary":"Update Project OAuth2","operationId":"projectsUpdateOAuth2","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Project","schema":{"$ref":"#\/definitions\/project"}}},"x-appwrite":{"method":"updateOAuth2","weight":106,"cookies":false,"type":"","demo":"projects\/update-o-auth2.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"provider":{"type":"string","description":"Provider Name","default":null,"x-example":"amazon"},"appId":{"type":"string","description":"Provider app ID. Max length: 256 chars.","default":"","x-example":"[APP_ID]"},"secret":{"type":"string","description":"Provider secret key. Max length: 512 chars.","default":"","x-example":"[SECRET]"}},"required":["provider"]}}]}},"\/projects\/{projectId}\/platforms":{"get":{"summary":"List Platforms","operationId":"projectsListPlatforms","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Platforms List","schema":{"$ref":"#\/definitions\/platformList"}}},"x-appwrite":{"method":"listPlatforms","weight":126,"cookies":false,"type":"","demo":"projects\/list-platforms.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.read","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"}]},"post":{"summary":"Create Platform","operationId":"projectsCreatePlatform","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"201":{"description":"Platform","schema":{"$ref":"#\/definitions\/platform"}}},"x-appwrite":{"method":"createPlatform","weight":125,"cookies":false,"type":"","demo":"projects\/create-platform.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"type":{"type":"string","description":"Platform type.","default":null,"x-example":"web"},"name":{"type":"string","description":"Platform name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"key":{"type":"string","description":"Package name for Android or bundle ID for iOS or macOS. Max length: 256 chars.","default":"","x-example":"[KEY]"},"store":{"type":"string","description":"App store or Google Play store ID. Max length: 256 chars.","default":"","x-example":"[STORE]"},"hostname":{"type":"string","description":"Platform client hostname. Max length: 256 chars.","default":"","x-example":"[HOSTNAME]"}},"required":["type","name"]}}]}},"\/projects\/{projectId}\/platforms\/{platformId}":{"get":{"summary":"Get Platform","operationId":"projectsGetPlatform","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Platform","schema":{"$ref":"#\/definitions\/platform"}}},"x-appwrite":{"method":"getPlatform","weight":127,"cookies":false,"type":"","demo":"projects\/get-platform.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.read","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"platformId","description":"Platform unique ID.","required":true,"type":"string","x-example":"[PLATFORM_ID]","in":"path"}]},"put":{"summary":"Update Platform","operationId":"projectsUpdatePlatform","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Platform","schema":{"$ref":"#\/definitions\/platform"}}},"x-appwrite":{"method":"updatePlatform","weight":128,"cookies":false,"type":"","demo":"projects\/update-platform.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"platformId","description":"Platform unique ID.","required":true,"type":"string","x-example":"[PLATFORM_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Platform name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"key":{"type":"string","description":"Package name for android or bundle ID for iOS. Max length: 256 chars.","default":"","x-example":"[KEY]"},"store":{"type":"string","description":"App store or Google Play store ID. Max length: 256 chars.","default":"","x-example":"[STORE]"},"hostname":{"type":"string","description":"Platform client URL. Max length: 256 chars.","default":"","x-example":"[HOSTNAME]"}},"required":["name"]}}]},"delete":{"summary":"Delete Platform","operationId":"projectsDeletePlatform","consumes":["application\/json"],"produces":[],"tags":["projects"],"description":"","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deletePlatform","weight":129,"cookies":false,"type":"","demo":"projects\/delete-platform.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"platformId","description":"Platform unique ID.","required":true,"type":"string","x-example":"[PLATFORM_ID]","in":"path"}]}},"\/projects\/{projectId}\/tasks":{"get":{"summary":"List Tasks","operationId":"projectsListTasks","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Tasks List","schema":{"$ref":"#\/definitions\/taskList"}}},"x-appwrite":{"method":"listTasks","weight":121,"cookies":false,"type":"","demo":"projects\/list-tasks.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.read","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"}]},"post":{"summary":"Create Task","operationId":"projectsCreateTask","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"201":{"description":"Task","schema":{"$ref":"#\/definitions\/task"}}},"x-appwrite":{"method":"createTask","weight":120,"cookies":false,"type":"","demo":"projects\/create-task.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Task name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"status":{"type":"string","description":"Task status.","default":null,"x-example":"play"},"schedule":{"type":"string","description":"Task schedule CRON syntax.","default":null,"x-example":null},"security":{"type":"boolean","description":"Certificate verification, false for disabled or true for enabled.","default":null,"x-example":false},"httpMethod":{"type":"string","description":"Task HTTP method.","default":null,"x-example":"GET"},"httpUrl":{"type":"string","description":"Task HTTP URL","default":null,"x-example":"https:\/\/example.com"},"httpHeaders":{"type":"array","description":"Task HTTP headers list.","default":null,"x-example":null,"items":{"type":"string"}},"httpUser":{"type":"string","description":"Task HTTP user. Max length: 256 chars.","default":"","x-example":"[HTTP_USER]"},"httpPass":{"type":"string","description":"Task HTTP password. Max length: 256 chars.","default":"","x-example":"[HTTP_PASS]"}},"required":["name","status","schedule","security","httpMethod","httpUrl"]}}]}},"\/projects\/{projectId}\/tasks\/{taskId}":{"get":{"summary":"Get Task","operationId":"projectsGetTask","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Task","schema":{"$ref":"#\/definitions\/task"}}},"x-appwrite":{"method":"getTask","weight":122,"cookies":false,"type":"","demo":"projects\/get-task.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.read","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"taskId","description":"Task unique ID.","required":true,"type":"string","x-example":"[TASK_ID]","in":"path"}]},"put":{"summary":"Update Task","operationId":"projectsUpdateTask","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Task","schema":{"$ref":"#\/definitions\/task"}}},"x-appwrite":{"method":"updateTask","weight":123,"cookies":false,"type":"","demo":"projects\/update-task.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"taskId","description":"Task unique ID.","required":true,"type":"string","x-example":"[TASK_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Task name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"status":{"type":"string","description":"Task status.","default":null,"x-example":"play"},"schedule":{"type":"string","description":"Task schedule CRON syntax.","default":null,"x-example":null},"security":{"type":"boolean","description":"Certificate verification, false for disabled or true for enabled.","default":null,"x-example":false},"httpMethod":{"type":"string","description":"Task HTTP method.","default":null,"x-example":"GET"},"httpUrl":{"type":"string","description":"Task HTTP URL.","default":null,"x-example":"https:\/\/example.com"},"httpHeaders":{"type":"array","description":"Task HTTP headers list.","default":null,"x-example":null,"items":{"type":"string"}},"httpUser":{"type":"string","description":"Task HTTP user. Max length: 256 chars.","default":"","x-example":"[HTTP_USER]"},"httpPass":{"type":"string","description":"Task HTTP password. Max length: 256 chars.","default":"","x-example":"[HTTP_PASS]"}},"required":["name","status","schedule","security","httpMethod","httpUrl"]}}]},"delete":{"summary":"Delete Task","operationId":"projectsDeleteTask","consumes":["application\/json"],"produces":[],"tags":["projects"],"description":"","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteTask","weight":124,"cookies":false,"type":"","demo":"projects\/delete-task.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"taskId","description":"Task unique ID.","required":true,"type":"string","x-example":"[TASK_ID]","in":"path"}]}},"\/projects\/{projectId}\/usage":{"get":{"summary":"Get Project","operationId":"projectsGetUsage","consumes":["application\/json"],"produces":[],"tags":["projects"],"description":"","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getUsage","weight":104,"cookies":false,"type":"","demo":"projects\/get-usage.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.read","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"range","description":"Date range.","required":false,"type":"string","x-example":"24h","default":"30d","in":"query"}]}},"\/projects\/{projectId}\/webhooks":{"get":{"summary":"List Webhooks","operationId":"projectsListWebhooks","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Webhooks List","schema":{"$ref":"#\/definitions\/webhookList"}}},"x-appwrite":{"method":"listWebhooks","weight":111,"cookies":false,"type":"","demo":"projects\/list-webhooks.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.read","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"}]},"post":{"summary":"Create Webhook","operationId":"projectsCreateWebhook","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"201":{"description":"Webhook","schema":{"$ref":"#\/definitions\/webhook"}}},"x-appwrite":{"method":"createWebhook","weight":110,"cookies":false,"type":"","demo":"projects\/create-webhook.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Webhook name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"events":{"type":"array","description":"Events list.","default":null,"x-example":null,"items":{"type":"string"}},"url":{"type":"string","description":"Webhook URL.","default":null,"x-example":"https:\/\/example.com"},"security":{"type":"boolean","description":"Certificate verification, false for disabled or true for enabled.","default":null,"x-example":false},"httpUser":{"type":"string","description":"Webhook HTTP user. Max length: 256 chars.","default":"","x-example":"[HTTP_USER]"},"httpPass":{"type":"string","description":"Webhook HTTP password. Max length: 256 chars.","default":"","x-example":"[HTTP_PASS]"}},"required":["name","events","url","security"]}}]}},"\/projects\/{projectId}\/webhooks\/{webhookId}":{"get":{"summary":"Get Webhook","operationId":"projectsGetWebhook","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Webhook","schema":{"$ref":"#\/definitions\/webhook"}}},"x-appwrite":{"method":"getWebhook","weight":112,"cookies":false,"type":"","demo":"projects\/get-webhook.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.read","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"webhookId","description":"Webhook unique ID.","required":true,"type":"string","x-example":"[WEBHOOK_ID]","in":"path"}]},"put":{"summary":"Update Webhook","operationId":"projectsUpdateWebhook","consumes":["application\/json"],"produces":["application\/json"],"tags":["projects"],"description":"","responses":{"200":{"description":"Webhook","schema":{"$ref":"#\/definitions\/webhook"}}},"x-appwrite":{"method":"updateWebhook","weight":113,"cookies":false,"type":"","demo":"projects\/update-webhook.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"webhookId","description":"Webhook unique ID.","required":true,"type":"string","x-example":"[WEBHOOK_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Webhook name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"events":{"type":"array","description":"Events list.","default":null,"x-example":null,"items":{"type":"string"}},"url":{"type":"string","description":"Webhook URL.","default":null,"x-example":"https:\/\/example.com"},"security":{"type":"boolean","description":"Certificate verification, false for disabled or true for enabled.","default":null,"x-example":false},"httpUser":{"type":"string","description":"Webhook HTTP user. Max length: 256 chars.","default":"","x-example":"[HTTP_USER]"},"httpPass":{"type":"string","description":"Webhook HTTP password. Max length: 256 chars.","default":"","x-example":"[HTTP_PASS]"}},"required":["name","events","url","security"]}}]},"delete":{"summary":"Delete Webhook","operationId":"projectsDeleteWebhook","consumes":["application\/json"],"produces":[],"tags":["projects"],"description":"","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteWebhook","weight":114,"cookies":false,"type":"","demo":"projects\/delete-webhook.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"projects.write","platforms":["console"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[]}],"parameters":[{"name":"projectId","description":"Project unique ID.","required":true,"type":"string","x-example":"[PROJECT_ID]","in":"path"},{"name":"webhookId","description":"Webhook unique ID.","required":true,"type":"string","x-example":"[WEBHOOK_ID]","in":"path"}]}},"\/storage\/files":{"get":{"summary":"List Files","operationId":"storageListFiles","consumes":["application\/json"],"produces":["application\/json"],"tags":["storage"],"description":"Get a list of all the user files. You can use the query params to filter your results. On admin mode, this endpoint will return a list of all of the project's files. [Learn more about different API modes](\/docs\/admin).","responses":{"200":{"description":"Files List","schema":{"$ref":"#\/definitions\/fileList"}}},"x-appwrite":{"method":"listFiles","weight":136,"cookies":false,"type":"","demo":"storage\/list-files.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/list-files.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create File","operationId":"storageCreateFile","consumes":["multipart\/form-data"],"produces":["application\/json"],"tags":["storage"],"description":"Create a new file. The user who creates the file will automatically be assigned to read and write access unless he has passed custom values for read and write arguments.","responses":{"201":{"description":"File","schema":{"$ref":"#\/definitions\/file"}}},"x-appwrite":{"method":"createFile","weight":135,"cookies":false,"type":"upload","demo":"storage\/create-file.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/create-file.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"file","description":"Binary file.","required":true,"type":"file","in":"formData"},{"name":"read","description":"An array of strings with read permissions. By default only the current user is granted with read permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","required":false,"type":"array","collectionFormat":"multi","items":{"type":"string"},"in":"formData"},{"name":"write","description":"An array of strings with write permissions. By default only the current user is granted with write permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","required":false,"type":"array","collectionFormat":"multi","items":{"type":"string"},"in":"formData"}]}},"\/storage\/files\/{fileId}":{"get":{"summary":"Get File","operationId":"storageGetFile","consumes":["application\/json"],"produces":["application\/json"],"tags":["storage"],"description":"Get a file by its unique ID. This endpoint response returns a JSON object with the file metadata.","responses":{"200":{"description":"File","schema":{"$ref":"#\/definitions\/file"}}},"x-appwrite":{"method":"getFile","weight":137,"cookies":false,"type":"","demo":"storage\/get-file.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/get-file.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID.","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"}]},"put":{"summary":"Update File","operationId":"storageUpdateFile","consumes":["application\/json"],"produces":["application\/json"],"tags":["storage"],"description":"Update a file by its unique ID. Only users with write permissions have access to update this resource.","responses":{"200":{"description":"File","schema":{"$ref":"#\/definitions\/file"}}},"x-appwrite":{"method":"updateFile","weight":141,"cookies":false,"type":"","demo":"storage\/update-file.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/update-file.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID.","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"read":{"type":"array","description":"An array of strings with read permissions. By default no user is granted with any read permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"write":{"type":"array","description":"An array of strings with write permissions. By default no user is granted with any write permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}}},"required":["read","write"]}}]},"delete":{"summary":"Delete File","operationId":"storageDeleteFile","consumes":["application\/json"],"produces":[],"tags":["storage"],"description":"Delete a file by its unique ID. Only users with write permissions have access to delete this resource.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteFile","weight":142,"cookies":false,"type":"","demo":"storage\/delete-file.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/delete-file.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID.","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"}]}},"\/storage\/files\/{fileId}\/download":{"get":{"summary":"Get File for Download","operationId":"storageGetFileDownload","consumes":["application\/json"],"produces":["*\/*"],"tags":["storage"],"description":"Get a file content by its unique ID. The endpoint response return with a 'Content-Disposition: attachment' header that tells the browser to start downloading the file to user downloads directory.","responses":{"200":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getFileDownload","weight":139,"cookies":false,"type":"location","demo":"storage\/get-file-download.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/get-file-download.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID.","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"}]}},"\/storage\/files\/{fileId}\/preview":{"get":{"summary":"Get File Preview","operationId":"storageGetFilePreview","consumes":["application\/json"],"produces":["image\/*"],"tags":["storage"],"description":"Get a file preview image. Currently, this method supports preview for image files (jpg, png, and gif), other supported formats, like pdf, docs, slides, and spreadsheets, will return the file icon image. You can also pass query string arguments for cutting and resizing your preview image.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getFilePreview","weight":138,"cookies":false,"type":"location","demo":"storage\/get-file-preview.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/get-file-preview.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"},{"name":"width","description":"Resize preview image width, Pass an integer between 0 to 4000.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"height","description":"Resize preview image height, Pass an integer between 0 to 4000.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"gravity","description":"Image crop gravity. Can be one of center,top-left,top,top-right,left,right,bottom-left,bottom,bottom-right","required":false,"type":"string","x-example":"center","default":"center","in":"query"},{"name":"quality","description":"Preview image quality. Pass an integer between 0 to 100. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"borderWidth","description":"Preview image border in pixels. Pass an integer between 0 to 100. Defaults to 0.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"borderColor","description":"Preview image border color. Use a valid HEX color, no # is needed for prefix.","required":false,"type":"string","default":"","in":"query"},{"name":"borderRadius","description":"Preview image border radius in pixels. Pass an integer between 0 to 4000.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"opacity","description":"Preview image opacity. Only works with images having an alpha channel (like png). Pass a number between 0 to 1.","required":false,"type":"number","format":"float","x-example":0,"default":1,"in":"query"},{"name":"rotation","description":"Preview image rotation in degrees. Pass an integer between 0 and 360.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"background","description":"Preview image background color. Only works with transparent images (png). Use a valid HEX color, no # is needed for prefix.","required":false,"type":"string","default":"","in":"query"},{"name":"output","description":"Output format type (jpeg, jpg, png, gif and webp).","required":false,"type":"string","x-example":"jpg","default":"","in":"query"}]}},"\/storage\/files\/{fileId}\/view":{"get":{"summary":"Get File for View","operationId":"storageGetFileView","consumes":["application\/json"],"produces":["*\/*"],"tags":["storage"],"description":"Get a file content by its unique ID. This endpoint is similar to the download method but returns with no 'Content-Disposition: attachment' header.","responses":{"200":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getFileView","weight":140,"cookies":false,"type":"location","demo":"storage\/get-file-view.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/get-file-view.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID.","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"}]}},"\/teams":{"get":{"summary":"List Teams","operationId":"teamsList","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Get a list of all the current user teams. You can use the query params to filter your results. On admin mode, this endpoint will return a list of all of the project's teams. [Learn more about different API modes](\/docs\/admin).","responses":{"200":{"description":"Teams List","schema":{"$ref":"#\/definitions\/teamList"}}},"x-appwrite":{"method":"list","weight":144,"cookies":false,"type":"","demo":"teams\/list.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/list-teams.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create Team","operationId":"teamsCreate","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Create a new team. The user who creates the team will automatically be assigned as the owner of the team. The team owner can invite new members, who will be able add new owners and update or delete the team from your project.","responses":{"201":{"description":"Team","schema":{"$ref":"#\/definitions\/team"}}},"x-appwrite":{"method":"create","weight":143,"cookies":false,"type":"","demo":"teams\/create.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/create-team.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Team name. Max length: 128 chars.","default":null,"x-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](\/docs\/permissions). Max length for each role is 32 chars.","default":["owner"],"x-example":null,"items":{"type":"string"}}},"required":["name"]}}]}},"\/teams\/{teamId}":{"get":{"summary":"Get Team","operationId":"teamsGet","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Get a team by its unique ID. All team members have read access for this resource.","responses":{"200":{"description":"Team","schema":{"$ref":"#\/definitions\/team"}}},"x-appwrite":{"method":"get","weight":145,"cookies":false,"type":"","demo":"teams\/get.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/get-team.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"}]},"put":{"summary":"Update Team","operationId":"teamsUpdate","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Update a team by its unique ID. Only team owners have write access for this resource.","responses":{"200":{"description":"Team","schema":{"$ref":"#\/definitions\/team"}}},"x-appwrite":{"method":"update","weight":146,"cookies":false,"type":"","demo":"teams\/update.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/update-team.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Team name. Max length: 128 chars.","default":null,"x-example":"[NAME]"}},"required":["name"]}}]},"delete":{"summary":"Delete Team","operationId":"teamsDelete","consumes":["application\/json"],"produces":[],"tags":["teams"],"description":"Delete a team by its unique ID. Only team owners have write access for this resource.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"delete","weight":147,"cookies":false,"type":"","demo":"teams\/delete.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/delete-team.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"}]}},"\/teams\/{teamId}\/memberships":{"get":{"summary":"Get Team Memberships","operationId":"teamsGetMemberships","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Get a team members by the team unique ID. All team members have read access for this list of resources.","responses":{"200":{"description":"Memberships List","schema":{"$ref":"#\/definitions\/membershipList"}}},"x-appwrite":{"method":"getMemberships","weight":150,"cookies":false,"type":"","demo":"teams\/get-memberships.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/get-team-members.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create Team Membership","operationId":"teamsCreateMembership","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Use this endpoint to invite a new member to join your team. If initiated from Client SDK, an email with a link to join the team will be sent to the new member's email address if the member doesn't exist in the project it will be created automatically. If initiated from server side SDKs, new member will automatically be added to the team.\n\nUse the 'URL' parameter to redirect the user from the invitation email back to your app. When the user is redirected, use the [Update Team Membership Status](\/docs\/client\/teams#teamsUpdateMembershipStatus) endpoint to allow the user to accept the invitation to the team. While calling from side SDKs the redirect url can be empty string.\n\nPlease note that in order to avoid a [Redirect Attacks](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md) the only valid redirect URL's are the once from domains you have set when added your platforms in the console interface.","responses":{"201":{"description":"Membership","schema":{"$ref":"#\/definitions\/membership"}}},"x-appwrite":{"method":"createMembership","weight":148,"cookies":false,"type":"","demo":"teams\/create-membership.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/create-team-membership.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"New team member email.","default":null,"x-example":"email@example.com"},"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](\/docs\/permissions). Max length for each role is 32 chars.","default":null,"x-example":null,"items":{"type":"string"}},"url":{"type":"string","description":"URL to redirect the user back to your app from the invitation 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.","default":null,"x-example":"https:\/\/example.com"},"name":{"type":"string","description":"New team member name. Max length: 128 chars.","default":"","x-example":"[NAME]"}},"required":["email","roles","url"]}}]}},"\/teams\/{teamId}\/memberships\/{membershipId}":{"patch":{"summary":"Update Membership Roles","operationId":"teamsUpdateMembershipRoles","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"","responses":{"200":{"description":"Membership","schema":{"$ref":"#\/definitions\/membership"}}},"x-appwrite":{"method":"updateMembershipRoles","weight":149,"cookies":false,"type":"","demo":"teams\/update-membership-roles.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/update-team-membership-roles.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"membershipId","description":"Membership ID.","required":true,"type":"string","x-example":"[MEMBERSHIP_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"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](\/docs\/permissions). Max length for each role is 32 chars.","default":null,"x-example":null,"items":{"type":"string"}}},"required":["roles"]}}]},"delete":{"summary":"Delete Team Membership","operationId":"teamsDeleteMembership","consumes":["application\/json"],"produces":[],"tags":["teams"],"description":"This endpoint allows a user to leave a team or for a team owner to delete the membership of any other team member. You can also use this endpoint to delete a user membership even if it is not accepted.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteMembership","weight":152,"cookies":false,"type":"","demo":"teams\/delete-membership.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/delete-team-membership.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"membershipId","description":"Membership ID.","required":true,"type":"string","x-example":"[MEMBERSHIP_ID]","in":"path"}]}},"\/teams\/{teamId}\/memberships\/{membershipId}\/status":{"patch":{"summary":"Update Team Membership Status","operationId":"teamsUpdateMembershipStatus","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Use this endpoint to allow a user to accept an invitation to join a team after being redirected back to your app from the invitation email recieved by the user.","responses":{"200":{"description":"Membership","schema":{"$ref":"#\/definitions\/membership"}}},"x-appwrite":{"method":"updateMembershipStatus","weight":151,"cookies":false,"type":"","demo":"teams\/update-membership-status.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/update-team-membership-status.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"public","platforms":["client","server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"membershipId","description":"Membership ID.","required":true,"type":"string","x-example":"[MEMBERSHIP_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"userId":{"type":"string","description":"User unique ID.","default":null,"x-example":"[USER_ID]"},"secret":{"type":"string","description":"Secret key.","default":null,"x-example":"[SECRET]"}},"required":["userId","secret"]}}]}},"\/users":{"get":{"summary":"List Users","operationId":"usersList","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Get a list of all the project's users. You can use the query params to filter your results.","responses":{"200":{"description":"Users List","schema":{"$ref":"#\/definitions\/userList"}}},"x-appwrite":{"method":"list","weight":154,"cookies":false,"type":"","demo":"users\/list.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/list-users.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create User","operationId":"usersCreate","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Create a new user.","responses":{"201":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"create","weight":153,"cookies":false,"type":"","demo":"users\/create.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/create-user.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"User email.","default":null,"x-example":"email@example.com"},"password":{"type":"string","description":"User password. Must be between 6 to 32 chars.","default":null,"x-example":"password"},"name":{"type":"string","description":"User name. Max length: 128 chars.","default":"","x-example":"[NAME]"}},"required":["email","password"]}}]}},"\/users\/{userId}":{"get":{"summary":"Get User","operationId":"usersGet","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Get a user by its unique ID.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"get","weight":155,"cookies":false,"type":"","demo":"users\/get.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/get-user.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"}]},"delete":{"summary":"Delete User","operationId":"usersDelete","consumes":["application\/json"],"produces":[],"tags":["users"],"description":"Delete a user by its unique ID.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"delete","weight":167,"cookies":false,"type":"","demo":"users\/delete.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/delete.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"}]}},"\/users\/{userId}\/email":{"patch":{"summary":"Update Email","operationId":"usersUpdateEmail","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Update the user email by its unique ID.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updateEmail","weight":163,"cookies":false,"type":"","demo":"users\/update-email.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/update-user-email.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"User email.","default":null,"x-example":"email@example.com"}},"required":["email"]}}]}},"\/users\/{userId}\/logs":{"get":{"summary":"Get User Logs","operationId":"usersGetLogs","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Get a user activity logs list by its unique ID.","responses":{"200":{"description":"Logs List","schema":{"$ref":"#\/definitions\/logList"}}},"x-appwrite":{"method":"getLogs","weight":158,"cookies":false,"type":"","demo":"users\/get-logs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/get-user-logs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"}]}},"\/users\/{userId}\/name":{"patch":{"summary":"Update Name","operationId":"usersUpdateName","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Update the user name by its unique ID.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updateName","weight":161,"cookies":false,"type":"","demo":"users\/update-name.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/update-user-name.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"User name. Max length: 128 chars.","default":null,"x-example":"[NAME]"}},"required":["name"]}}]}},"\/users\/{userId}\/password":{"patch":{"summary":"Update Password","operationId":"usersUpdatePassword","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Update the user password by its unique ID.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updatePassword","weight":162,"cookies":false,"type":"","demo":"users\/update-password.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/update-user-password.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"password":{"type":"string","description":"New user password. Must be between 6 to 32 chars.","default":null,"x-example":"password"}},"required":["password"]}}]}},"\/users\/{userId}\/prefs":{"get":{"summary":"Get User Preferences","operationId":"usersGetPrefs","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Get the user preferences by its unique ID.","responses":{"200":{"description":"Preferences","schema":{"$ref":"#\/definitions\/preferences"}}},"x-appwrite":{"method":"getPrefs","weight":156,"cookies":false,"type":"","demo":"users\/get-prefs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/get-user-prefs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"}]},"patch":{"summary":"Update User Preferences","operationId":"usersUpdatePrefs","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Update the user preferences by its unique ID. You can pass only the specific settings you wish to update.","responses":{"200":{"description":"Preferences","schema":{"$ref":"#\/definitions\/preferences"}}},"x-appwrite":{"method":"updatePrefs","weight":164,"cookies":false,"type":"","demo":"users\/update-prefs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/update-user-prefs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"prefs":{"type":"object","description":"Prefs key-value JSON object.","default":null,"x-example":"{}"}},"required":["prefs"]}}]}},"\/users\/{userId}\/sessions":{"get":{"summary":"Get User Sessions","operationId":"usersGetSessions","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Get the user sessions list by its unique ID.","responses":{"200":{"description":"Sessions List","schema":{"$ref":"#\/definitions\/sessionList"}}},"x-appwrite":{"method":"getSessions","weight":157,"cookies":false,"type":"","demo":"users\/get-sessions.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/get-user-sessions.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.read","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"}]},"delete":{"summary":"Delete User Sessions","operationId":"usersDeleteSessions","consumes":["application\/json"],"produces":[],"tags":["users"],"description":"Delete all user's sessions by using the user's unique ID.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteSessions","weight":166,"cookies":false,"type":"","demo":"users\/delete-sessions.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/delete-user-sessions.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"}]}},"\/users\/{userId}\/sessions\/{sessionId}":{"delete":{"summary":"Delete User Session","operationId":"usersDeleteSession","consumes":["application\/json"],"produces":[],"tags":["users"],"description":"Delete a user sessions by its unique ID.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteSession","weight":165,"cookies":false,"type":"","demo":"users\/delete-session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/delete-user-session.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"},{"name":"sessionId","description":"User unique session ID.","required":true,"type":"string","x-example":"[SESSION_ID]","in":"path"}]}},"\/users\/{userId}\/status":{"patch":{"summary":"Update User Status","operationId":"usersUpdateStatus","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Update the user status by its unique ID.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updateStatus","weight":159,"cookies":false,"type":"","demo":"users\/update-status.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/update-user-status.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"status":{"type":"integer","description":"User Status code. To activate the user pass 1, to block the user pass 2 and for disabling the user pass 0","default":null,"x-example":1}},"required":["status"]}}]}},"\/users\/{userId}\/verification":{"patch":{"summary":"Update Email Verification","operationId":"usersUpdateVerification","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Update the user email verification status by its unique ID.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updateVerification","weight":160,"cookies":false,"type":"","demo":"users\/update-verification.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/update-user-verification.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"emailVerification":{"type":"boolean","description":"User Email Verification Status.","default":null,"x-example":false}},"required":["emailVerification"]}}]}}},"tags":[{"name":"account","description":"The Account service allows you to authenticate and manage a user account."},{"name":"avatars","description":"The Avatars service aims to help you complete everyday tasks related to your app image, icons, and avatars."},{"name":"database","description":"The Database service allows you to create structured collections of documents, query and filter lists of documents"},{"name":"locale","description":"The Locale service allows you to customize your app based on your users' location."},{"name":"health","description":"The Health service allows you to both validate and monitor your Appwrite server's health."},{"name":"projects","description":"The Project service allows you to manage all the projects in your Appwrite server."},{"name":"storage","description":"The Storage service allows you to manage your project files."},{"name":"teams","description":"The Teams service allows you to group users of your project and to enable them to share read and write access to your project resources"},{"name":"users","description":"The Users service allows you to manage your project users."},{"name":"functions","description":"The Functions Service allows you view, create and manage your Cloud Functions."}],"definitions":{"collectionList":{"description":"Collections List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"collections":{"type":"array","description":"List of collections.","items":{"type":"object","$ref":"#\/definitions\/collection"},"x-example":""}},"required":["sum","collections"]},"documentList":{"description":"Documents List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"documents":{"type":"array","description":"List of documents.","items":{"type":"object","$ref":"#\/definitions\/document"},"x-example":""}},"required":["sum","documents"]},"userList":{"description":"Users List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"users":{"type":"array","description":"List of users.","items":{"type":"object","$ref":"#\/definitions\/user"},"x-example":""}},"required":["sum","users"]},"sessionList":{"description":"Sessions List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"sessions":{"type":"array","description":"List of sessions.","items":{"type":"object","$ref":"#\/definitions\/session"},"x-example":""}},"required":["sum","sessions"]},"logList":{"description":"Logs List","type":"object","properties":{"logs":{"type":"array","description":"List of logs.","items":{"type":"object","$ref":"#\/definitions\/log"},"x-example":""}},"required":["logs"]},"fileList":{"description":"Files List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"files":{"type":"array","description":"List of files.","items":{"type":"object","$ref":"#\/definitions\/file"},"x-example":""}},"required":["sum","files"]},"teamList":{"description":"Teams List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"teams":{"type":"array","description":"List of teams.","items":{"type":"object","$ref":"#\/definitions\/team"},"x-example":""}},"required":["sum","teams"]},"membershipList":{"description":"Memberships List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"memberships":{"type":"array","description":"List of memberships.","items":{"type":"object","$ref":"#\/definitions\/membership"},"x-example":""}},"required":["sum","memberships"]},"functionList":{"description":"Functions List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"functions":{"type":"array","description":"List of functions.","items":{"type":"object","$ref":"#\/definitions\/function"},"x-example":""}},"required":["sum","functions"]},"tagList":{"description":"Tags List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"tags":{"type":"array","description":"List of tags.","items":{"type":"object","$ref":"#\/definitions\/tag"},"x-example":""}},"required":["sum","tags"]},"executionList":{"description":"Executions List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"executions":{"type":"array","description":"List of executions.","items":{"type":"object","$ref":"#\/definitions\/execution"},"x-example":""}},"required":["sum","executions"]},"projectList":{"description":"Projects List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"projects":{"type":"array","description":"List of projects.","items":{"type":"object","$ref":"#\/definitions\/project"},"x-example":""}},"required":["sum","projects"]},"webhookList":{"description":"Webhooks List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"webhooks":{"type":"array","description":"List of webhooks.","items":{"type":"object","$ref":"#\/definitions\/webhook"},"x-example":""}},"required":["sum","webhooks"]},"keyList":{"description":"API Keys List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"keys":{"type":"array","description":"List of keys.","items":{"type":"object","$ref":"#\/definitions\/key"},"x-example":""}},"required":["sum","keys"]},"taskList":{"description":"Tasks List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"tasks":{"type":"array","description":"List of tasks.","items":{"type":"object","$ref":"#\/definitions\/task"},"x-example":""}},"required":["sum","tasks"]},"platformList":{"description":"Platforms List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"platforms":{"type":"array","description":"List of platforms.","items":{"type":"object","$ref":"#\/definitions\/platform"},"x-example":""}},"required":["sum","platforms"]},"domainList":{"description":"Domains List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"domains":{"type":"array","description":"List of domains.","items":{"type":"object","$ref":"#\/definitions\/domain"},"x-example":""}},"required":["sum","domains"]},"countryList":{"description":"Countries List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"countries":{"type":"array","description":"List of countries.","items":{"type":"object","$ref":"#\/definitions\/country"},"x-example":""}},"required":["sum","countries"]},"continentList":{"description":"Continents List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"continents":{"type":"array","description":"List of continents.","items":{"type":"object","$ref":"#\/definitions\/continent"},"x-example":""}},"required":["sum","continents"]},"languageList":{"description":"Languages List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"languages":{"type":"array","description":"List of languages.","items":{"type":"object","$ref":"#\/definitions\/language"},"x-example":""}},"required":["sum","languages"]},"currencyList":{"description":"Currencies List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"currencies":{"type":"array","description":"List of currencies.","items":{"type":"object","$ref":"#\/definitions\/currency"},"x-example":""}},"required":["sum","currencies"]},"phoneList":{"description":"Phones List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"phones":{"type":"array","description":"List of phones.","items":{"type":"object","$ref":"#\/definitions\/phone"},"x-example":""}},"required":["sum","phones"]},"permissions":{"description":"Permissions","type":"object","properties":{"read":{"type":"array","description":"Read permissions.","items":{"type":"string"},"x-example":"user:5e5ea5c16897e"},"write":{"type":"array","description":"Write permissions.","items":{"type":"string"},"x-example":"user:5e5ea5c16897e"}},"required":["read","write"]},"collection":{"description":"Collection","type":"object","properties":{"$id":{"type":"string","description":"Collection ID.","x-example":"5e5ea5c16897e"},"$permissions":{"type":"object","description":"Collection permissions.","x-example":{},"items":{"type":"object","$ref":"#\/definitions\/permissions"}},"name":{"type":"string","description":"Collection name.","x-example":"Movies"},"dateCreated":{"type":"integer","description":"Collection creation date in Unix timestamp.","x-example":1592981250,"format":"int32"},"dateUpdated":{"type":"integer","description":"Collection creation date in Unix timestamp.","x-example":1592981550,"format":"int32"},"rules":{"type":"array","description":"Collection rules.","items":{"type":"object","$ref":"#\/definitions\/rule"},"x-example":""}},"required":["$id","$permissions","name","dateCreated","dateUpdated","rules"]},"document":{"description":"Document","type":"object","properties":{"$id":{"type":"string","description":"Document ID.","x-example":"5e5ea5c16897e"},"$collection":{"type":"string","description":"Collection ID.","x-example":"5e5ea5c15117e"},"$permissions":{"type":"object","description":"Document permissions.","x-example":{},"items":{"type":"object","$ref":"#\/definitions\/permissions"}}},"additionalProperties":true,"required":["$id","$collection","$permissions"]},"rule":{"description":"Rule","type":"object","properties":{"$id":{"type":"string","description":"Rule ID.","x-example":"5e5ea5c16897e"},"$collection":{"type":"string","description":"Rule Collection.","x-example":"5e5e66c16897e"},"type":{"type":"string","description":"Rule type. Possible values: ","x-example":"title"},"key":{"type":"string","description":"Rule key.","x-example":"title"},"label":{"type":"string","description":"Rule label.","x-example":"Title"},"default":{"type":"string","description":"Rule default value.","x-example":"Movie Name"},"array":{"type":"boolean","description":"Is array?","x-example":false},"required":{"type":"boolean","description":"Is required?","x-example":true},"list":{"type":"array","description":"List of allowed values","items":{"type":"string"},"x-example":"5e5ea5c168099"}},"required":["$id","$collection","type","key","label","default","array","required","list"]},"log":{"description":"Log","type":"object","properties":{"event":{"type":"string","description":"Event name.","x-example":"account.sessions.create"},"ip":{"type":"string","description":"IP session in use when the session was created.","x-example":"127.0.0.1"},"time":{"type":"integer","description":"Log creation time in Unix timestamp.","x-example":1592981250,"format":"int32"},"osCode":{"type":"string","description":"Operating system code name. View list of [available options](https:\/\/github.com\/appwrite\/appwrite\/blob\/master\/docs\/lists\/os.json).","x-example":"Mac"},"osName":{"type":"string","description":"Operating system name.","x-example":"Mac"},"osVersion":{"type":"string","description":"Operating system version.","x-example":"Mac"},"clientType":{"type":"string","description":"Client type.","x-example":"browser"},"clientCode":{"type":"string","description":"Client code name. View list of [available options](https:\/\/github.com\/appwrite\/appwrite\/blob\/master\/docs\/lists\/clients.json).","x-example":"CM"},"clientName":{"type":"string","description":"Client name.","x-example":"Chrome Mobile iOS"},"clientVersion":{"type":"string","description":"Client version.","x-example":"84.0"},"clientEngine":{"type":"string","description":"Client engine name.","x-example":"WebKit"},"clientEngineVersion":{"type":"string","description":"Client engine name.","x-example":"605.1.15"},"deviceName":{"type":"string","description":"Device name.","x-example":"smartphone"},"deviceBrand":{"type":"string","description":"Device brand name.","x-example":"Google"},"deviceModel":{"type":"string","description":"Device model name.","x-example":"Nexus 5"},"countryCode":{"type":"string","description":"Country two-character ISO 3166-1 alpha code.","x-example":"US"},"countryName":{"type":"string","description":"Country name.","x-example":"United States"}},"required":["event","ip","time","osCode","osName","osVersion","clientType","clientCode","clientName","clientVersion","clientEngine","clientEngineVersion","deviceName","deviceBrand","deviceModel","countryCode","countryName"]},"user":{"description":"User","type":"object","properties":{"$id":{"type":"string","description":"User ID.","x-example":"5e5ea5c16897e"},"name":{"type":"string","description":"User name.","x-example":"John Doe"},"registration":{"type":"integer","description":"User registration date in Unix timestamp.","x-example":1592981250,"format":"int32"},"status":{"type":"integer","description":"User status. 0 for Unactivated, 1 for active and 2 is blocked.","x-example":0,"format":"int32"},"passwordUpdate":{"type":"integer","description":"Unix timestamp of the most recent password update","x-example":1592981250,"format":"int32"},"email":{"type":"string","description":"User email address.","x-example":"john@appwrite.io"},"emailVerification":{"type":"boolean","description":"Email verification status.","x-example":true},"prefs":{"type":"object","description":"User preferences as a key-value object","x-example":{"theme":"pink","timezone":"UTC"},"items":{"type":"object","$ref":"#\/definitions\/preferences"}}},"required":["$id","name","registration","status","passwordUpdate","email","emailVerification","prefs"]},"preferences":{"description":"Preferences","type":"object","additionalProperties":true},"session":{"description":"Session","type":"object","properties":{"$id":{"type":"string","description":"Session ID.","x-example":"5e5ea5c16897e"},"userId":{"type":"string","description":"User ID.","x-example":"5e5bb8c16897e"},"expire":{"type":"integer","description":"Session expiration date in Unix timestamp.","x-example":1592981250,"format":"int32"},"provider":{"type":"string","description":"Session Provider.","x-example":"email"},"providerUid":{"type":"string","description":"Session Provider User ID.","x-example":"user@example.com"},"providerToken":{"type":"string","description":"Session Provider Token.","x-example":"MTQ0NjJkZmQ5OTM2NDE1ZTZjNGZmZjI3"},"ip":{"type":"string","description":"IP in use when the session was created.","x-example":"127.0.0.1"},"osCode":{"type":"string","description":"Operating system code name. View list of [available options](https:\/\/github.com\/appwrite\/appwrite\/blob\/master\/docs\/lists\/os.json).","x-example":"Mac"},"osName":{"type":"string","description":"Operating system name.","x-example":"Mac"},"osVersion":{"type":"string","description":"Operating system version.","x-example":"Mac"},"clientType":{"type":"string","description":"Client type.","x-example":"browser"},"clientCode":{"type":"string","description":"Client code name. View list of [available options](https:\/\/github.com\/appwrite\/appwrite\/blob\/master\/docs\/lists\/clients.json).","x-example":"CM"},"clientName":{"type":"string","description":"Client name.","x-example":"Chrome Mobile iOS"},"clientVersion":{"type":"string","description":"Client version.","x-example":"84.0"},"clientEngine":{"type":"string","description":"Client engine name.","x-example":"WebKit"},"clientEngineVersion":{"type":"string","description":"Client engine name.","x-example":"605.1.15"},"deviceName":{"type":"string","description":"Device name.","x-example":"smartphone"},"deviceBrand":{"type":"string","description":"Device brand name.","x-example":"Google"},"deviceModel":{"type":"string","description":"Device model name.","x-example":"Nexus 5"},"countryCode":{"type":"string","description":"Country two-character ISO 3166-1 alpha code.","x-example":"US"},"countryName":{"type":"string","description":"Country name.","x-example":"United States"},"current":{"type":"boolean","description":"Returns true if this the current user session.","x-example":true}},"required":["$id","userId","expire","provider","providerUid","providerToken","ip","osCode","osName","osVersion","clientType","clientCode","clientName","clientVersion","clientEngine","clientEngineVersion","deviceName","deviceBrand","deviceModel","countryCode","countryName","current"]},"token":{"description":"Token","type":"object","properties":{"$id":{"type":"string","description":"Token ID.","x-example":"bb8ea5c16897e"},"userId":{"type":"string","description":"User ID.","x-example":"5e5ea5c168bb8"},"secret":{"type":"string","description":"Token secret key. This will return an empty string unless the response is returned using an API key or as part of a webhook payload.","x-example":""},"expire":{"type":"integer","description":"Token expiration date in Unix timestamp.","x-example":1592981250,"format":"int32"}},"required":["$id","userId","secret","expire"]},"jwt":{"description":"JWT","type":"object","properties":{"jwt":{"type":"string","description":"JWT encoded string.","x-example":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"}},"required":["jwt"]},"locale":{"description":"Locale","type":"object","properties":{"ip":{"type":"string","description":"User IP address.","x-example":"127.0.0.1"},"countryCode":{"type":"string","description":"Country code in [ISO 3166-1](http:\/\/en.wikipedia.org\/wiki\/ISO_3166-1) two-character format","x-example":"US"},"country":{"type":"string","description":"Country name. This field support localization.","x-example":"United States"},"continentCode":{"type":"string","description":"Continent code. A two character continent code \"AF\" for Africa, \"AN\" for Antarctica, \"AS\" for Asia, \"EU\" for Europe, \"NA\" for North America, \"OC\" for Oceania, and \"SA\" for South America.","x-example":"NA"},"continent":{"type":"string","description":"Continent name. This field support localization.","x-example":"North America"},"eu":{"type":"boolean","description":"True if country is part of the Europian Union.","x-example":false},"currency":{"type":"string","description":"Currency code in [ISO 4217-1](http:\/\/en.wikipedia.org\/wiki\/ISO_4217) three-character format","x-example":"USD"}},"required":["ip","countryCode","country","continentCode","continent","eu","currency"]},"file":{"description":"File","type":"object","properties":{"$id":{"type":"string","description":"File ID.","x-example":"5e5ea5c16897e"},"$permissions":{"type":"object","description":"File permissions.","x-example":{},"items":{"type":"object","$ref":"#\/definitions\/permissions"}},"name":{"type":"string","description":"File name.","x-example":"Pink.png"},"dateCreated":{"type":"integer","description":"File creation date in Unix timestamp.","x-example":1592981250,"format":"int32"},"signature":{"type":"string","description":"File MD5 signature.","x-example":"5d529fd02b544198ae075bd57c1762bb"},"mimeType":{"type":"string","description":"File mime type.","x-example":"image\/png"},"sizeOriginal":{"type":"integer","description":"File original size in bytes.","x-example":17890,"format":"int32"}},"required":["$id","$permissions","name","dateCreated","signature","mimeType","sizeOriginal"]},"team":{"description":"Team","type":"object","properties":{"$id":{"type":"string","description":"Team ID.","x-example":"5e5ea5c16897e"},"name":{"type":"string","description":"Team name.","x-example":"VIP"},"dateCreated":{"type":"integer","description":"Team creation date in Unix timestamp.","x-example":1592981250,"format":"int32"},"sum":{"type":"integer","description":"Total sum of team members.","x-example":7,"format":"int32"}},"required":["$id","name","dateCreated","sum"]},"membership":{"description":"Membership","type":"object","properties":{"$id":{"type":"string","description":"Membership ID.","x-example":"5e5ea5c16897e"},"userId":{"type":"string","description":"User ID.","x-example":"5e5ea5c16897e"},"teamId":{"type":"string","description":"Team ID.","x-example":"5e5ea5c16897e"},"name":{"type":"string","description":"User name.","x-example":"VIP"},"email":{"type":"string","description":"User email address.","x-example":"john@appwrite.io"},"invited":{"type":"integer","description":"Date, the user has been invited to join the team in Unix timestamp.","x-example":1592981250,"format":"int32"},"joined":{"type":"integer","description":"Date, the user has accepted the invitation to join the team in Unix timestamp.","x-example":1592981250,"format":"int32"},"confirm":{"type":"boolean","description":"User confirmation status, true if the user has joined the team or false otherwise.","x-example":false},"roles":{"type":"array","description":"User list of roles","items":{"type":"string"},"x-example":"admin"}},"required":["$id","userId","teamId","name","email","invited","joined","confirm","roles"]},"function":{"description":"Function","type":"object","properties":{"$id":{"type":"string","description":"Function ID.","x-example":"5e5ea5c16897e"},"$permissions":{"type":"object","description":"Function permissions.","x-example":{},"items":{"type":"object","$ref":"#\/definitions\/permissions"}},"name":{"type":"string","description":"Function name.","x-example":"My Function"},"dateCreated":{"type":"integer","description":"Function creation date in Unix timestamp.","x-example":1592981250,"format":"int32"},"dateUpdated":{"type":"integer","description":"Function update date in Unix timestamp.","x-example":1592981257,"format":"int32"},"status":{"type":"string","description":"Function status. Possible values: disabled, enabled","x-example":"enabled"},"runtime":{"type":"string","description":"Function execution runtime.","x-example":"python-3.8"},"tag":{"type":"string","description":"Function active tag ID.","x-example":"5e5ea5c16897e"},"vars":{"type":"string","description":"Function environment variables.","x-example":{"key":"value"}},"events":{"type":"array","description":"Function trigger events.","items":{"type":"string"},"x-example":"account.create"},"schedule":{"type":"string","description":"Function execution schedult in CRON format.","x-example":"5 4 * * *"},"scheduleNext":{"type":"integer","description":"Function next scheduled execution date in Unix timestamp.","x-example":1592981292,"format":"int32"},"schedulePrevious":{"type":"integer","description":"Function next scheduled execution date in Unix timestamp.","x-example":1592981237,"format":"int32"},"timeout":{"type":"integer","description":"Function execution timeout in seconds.","x-example":1592981237,"format":"int32"}},"required":["$id","$permissions","name","dateCreated","dateUpdated","status","runtime","tag","vars","events","schedule","scheduleNext","schedulePrevious","timeout"]},"tag":{"description":"Tag","type":"object","properties":{"$id":{"type":"string","description":"Tag ID.","x-example":"5e5ea5c16897e"},"functionId":{"type":"string","description":"Function ID.","x-example":"5e5ea6g16897e"},"dateCreated":{"type":"integer","description":"The tag creation date in Unix timestamp.","x-example":1592981250,"format":"int32"},"command":{"type":"string","description":"The entrypoint command in use to execute the tag code.","x-example":"enabled"},"size":{"type":"string","description":"The code size in bytes.","x-example":"python-3.8"}},"required":["$id","functionId","dateCreated","command","size"]},"execution":{"description":"Execution","type":"object","properties":{"$id":{"type":"string","description":"Execution ID.","x-example":"5e5ea5c16897e"},"$permissions":{"type":"object","description":"Execution permissions.","x-example":{},"items":{"type":"object","$ref":"#\/definitions\/permissions"}},"functionId":{"type":"string","description":"Function ID.","x-example":"5e5ea6g16897e"},"dateCreated":{"type":"integer","description":"The execution creation date in Unix timestamp.","x-example":1592981250,"format":"int32"},"trigger":{"type":"string","description":"The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.","x-example":"http"},"status":{"type":"string","description":"The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.","x-example":"processing"},"exitCode":{"type":"integer","description":"The script exit code.","x-example":0,"format":"int32"},"stdout":{"type":"string","description":"The script stdout output string. Logs the last 4,000 characters of the execution stdout output.","x-example":""},"stderr":{"type":"string","description":"The script stderr output string. Logs the last 4,000 characters of the execution stderr output","x-example":""},"time":{"type":"number","description":"The script execution time in seconds.","x-example":0.4,"format":"float"}},"required":["$id","$permissions","functionId","dateCreated","trigger","status","exitCode","stdout","stderr","time"]},"project":{"description":"Project","type":"object","properties":{"$id":{"type":"string","description":"Project ID.","x-example":"5e5ea5c16897e"},"name":{"type":"string","description":"Project name.","x-example":"New Project"},"description":{"type":"string","description":"Project description.","x-example":"This is a new project."},"teamId":{"type":"string","description":"Project team ID.","x-example":"1592981250"},"logo":{"type":"string","description":"Project logo file ID.","x-example":"5f5c451b403cb"},"url":{"type":"string","description":"Project website URL.","x-example":"5f5c451b403cb"},"legalName":{"type":"string","description":"Company legal name.","x-example":"Company LTD."},"legalCountry":{"type":"string","description":"Country code in [ISO 3166-1](http:\/\/en.wikipedia.org\/wiki\/ISO_3166-1) two-character format.","x-example":"US"},"legalState":{"type":"string","description":"State name.","x-example":"New York"},"legalCity":{"type":"string","description":"City name.","x-example":"New York City."},"legalAddress":{"type":"string","description":"Company Address.","x-example":"620 Eighth Avenue, New York, NY 10018"},"legalTaxId":{"type":"string","description":"Company Tax ID.","x-example":"131102020"},"usersAuthLimit":{"type":"integer","description":"Max users allowed. 0 is unlimited.","x-example":100,"format":"int32"},"platforms":{"type":"array","description":"List of Platforms.","items":{"type":"object","$ref":"#\/definitions\/platform"},"x-example":{}},"webhooks":{"type":"array","description":"List of Webhooks.","items":{"type":"object","$ref":"#\/definitions\/webhook"},"x-example":{}},"keys":{"type":"array","description":"List of API Keys.","items":{"type":"object","$ref":"#\/definitions\/key"},"x-example":{}},"domains":{"type":"array","description":"List of Domains.","items":{"type":"object","$ref":"#\/definitions\/domain"},"x-example":{}},"tasks":{"type":"array","description":"List of Tasks.","items":{"type":"object","$ref":"#\/definitions\/task"},"x-example":{}},"usersOauth2AmazonAppid":{"type":"string","description":"Amazon OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2AmazonSecret":{"type":"string","description":"Amazon OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2AppleAppid":{"type":"string","description":"Apple OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2AppleSecret":{"type":"string","description":"Apple OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2BitbucketAppid":{"type":"string","description":"BitBucket OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2BitbucketSecret":{"type":"string","description":"BitBucket OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2BitlyAppid":{"type":"string","description":"Bitly OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2BitlySecret":{"type":"string","description":"Bitly OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2BoxAppid":{"type":"string","description":"Box OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2BoxSecret":{"type":"string","description":"Box OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2DiscordAppid":{"type":"string","description":"Discord OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2DiscordSecret":{"type":"string","description":"Discord OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2DropboxAppid":{"type":"string","description":"Dropbox OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2DropboxSecret":{"type":"string","description":"Dropbox OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2FacebookAppid":{"type":"string","description":"Facebook OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2FacebookSecret":{"type":"string","description":"Facebook OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2GithubAppid":{"type":"string","description":"GitHub OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2GithubSecret":{"type":"string","description":"GitHub OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2GitlabAppid":{"type":"string","description":"GitLab OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2GitlabSecret":{"type":"string","description":"GitLab OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2GoogleAppid":{"type":"string","description":"Google OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2GoogleSecret":{"type":"string","description":"Google OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2LinkedinAppid":{"type":"string","description":"LinkedIn OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2LinkedinSecret":{"type":"string","description":"LinkedIn OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2MicrosoftAppid":{"type":"string","description":"Microsoft OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2MicrosoftSecret":{"type":"string","description":"Microsoft OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2PaypalAppid":{"type":"string","description":"PayPal OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2PaypalSecret":{"type":"string","description":"PayPal OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2PaypalSandboxAppid":{"type":"string","description":"PayPal OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2PaypalSandboxSecret":{"type":"string","description":"PayPal OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2SalesforceAppid":{"type":"string","description":"Salesforce OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2SalesforceSecret":{"type":"string","description":"Salesforce OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2SlackAppid":{"type":"string","description":"Slack OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2SlackSecret":{"type":"string","description":"Slack OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2SpotifyAppid":{"type":"string","description":"Spotify OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2SpotifySecret":{"type":"string","description":"Spotify OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2TradeshiftAppid":{"type":"string","description":"Tradeshift OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2TradeshiftSecret":{"type":"string","description":"Tradeshift OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2TradeshiftBoxAppid":{"type":"string","description":"Tradeshift OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2TradeshiftBoxSecret":{"type":"string","description":"Tradeshift OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2TwitchAppid":{"type":"string","description":"Twitch OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2TwitchSecret":{"type":"string","description":"Twitch OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2VkAppid":{"type":"string","description":"VK OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2VkSecret":{"type":"string","description":"VK OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2YahooAppid":{"type":"string","description":"Yahoo OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2YahooSecret":{"type":"string","description":"Yahoo OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2YandexAppid":{"type":"string","description":"Yandex OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2YandexSecret":{"type":"string","description":"Yandex OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2WordpressAppid":{"type":"string","description":"WordPress OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2WordpressSecret":{"type":"string","description":"WordPress OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersOauth2MockAppid":{"type":"string","description":"Mock OAuth app ID.","x-example":"123247283472834787438"},"usersOauth2MockSecret":{"type":"string","description":"Mock OAuth secret ID.","x-example":"djsgudsdsewe43434343dd34..."},"usersAuthEmailPassword":{"type":"boolean","description":"Email\/Password auth method status","x-example":true},"usersAuthMagicURL":{"type":"boolean","description":"Magic URL auth method status","x-example":true},"usersAuthAnonymous":{"type":"boolean","description":"Anonymous auth method status","x-example":true},"usersAuthInvites":{"type":"boolean","description":"Invites auth method status","x-example":true},"usersAuthJWT":{"type":"boolean","description":"JWT auth method status","x-example":true},"usersAuthPhone":{"type":"boolean","description":"Phone auth method status","x-example":true}},"required":["$id","name","description","teamId","logo","url","legalName","legalCountry","legalState","legalCity","legalAddress","legalTaxId","usersAuthLimit","platforms","webhooks","keys","domains","tasks","usersOauth2AmazonAppid","usersOauth2AmazonSecret","usersOauth2AppleAppid","usersOauth2AppleSecret","usersOauth2BitbucketAppid","usersOauth2BitbucketSecret","usersOauth2BitlyAppid","usersOauth2BitlySecret","usersOauth2BoxAppid","usersOauth2BoxSecret","usersOauth2DiscordAppid","usersOauth2DiscordSecret","usersOauth2DropboxAppid","usersOauth2DropboxSecret","usersOauth2FacebookAppid","usersOauth2FacebookSecret","usersOauth2GithubAppid","usersOauth2GithubSecret","usersOauth2GitlabAppid","usersOauth2GitlabSecret","usersOauth2GoogleAppid","usersOauth2GoogleSecret","usersOauth2LinkedinAppid","usersOauth2LinkedinSecret","usersOauth2MicrosoftAppid","usersOauth2MicrosoftSecret","usersOauth2PaypalAppid","usersOauth2PaypalSecret","usersOauth2PaypalSandboxAppid","usersOauth2PaypalSandboxSecret","usersOauth2SalesforceAppid","usersOauth2SalesforceSecret","usersOauth2SlackAppid","usersOauth2SlackSecret","usersOauth2SpotifyAppid","usersOauth2SpotifySecret","usersOauth2TradeshiftAppid","usersOauth2TradeshiftSecret","usersOauth2TradeshiftBoxAppid","usersOauth2TradeshiftBoxSecret","usersOauth2TwitchAppid","usersOauth2TwitchSecret","usersOauth2VkAppid","usersOauth2VkSecret","usersOauth2YahooAppid","usersOauth2YahooSecret","usersOauth2YandexAppid","usersOauth2YandexSecret","usersOauth2WordpressAppid","usersOauth2WordpressSecret","usersOauth2MockAppid","usersOauth2MockSecret","usersAuthEmailPassword","usersAuthMagicURL","usersAuthAnonymous","usersAuthInvites","usersAuthJWT","usersAuthPhone"]},"webhook":{"description":"Webhook","type":"object","properties":{"$id":{"type":"string","description":"Webhook ID.","x-example":"5e5ea5c16897e"},"name":{"type":"string","description":"Webhook name.","x-example":"My Webhook"},"url":{"type":"string","description":"Webhook URL endpoint.","x-example":"https:\/\/example.com\/webhook"},"events":{"type":"array","description":"Webhook trigger events.","items":{"type":"string"},"x-example":"database.collections.update"},"security":{"type":"boolean","description":"Indicated if SSL \/ TLS Certificate verification is enabled.","x-example":true},"httpUser":{"type":"string","description":"HTTP basic authentication username.","x-example":"username"},"httpPass":{"type":"string","description":"HTTP basic authentication password.","x-example":"password"}},"required":["$id","name","url","events","security","httpUser","httpPass"]},"key":{"description":"Key","type":"object","properties":{"$id":{"type":"string","description":"Key ID.","x-example":"5e5ea5c16897e"},"name":{"type":"string","description":"Key name.","x-example":"My API Key"},"scopes":{"type":"array","description":"Allowed permission scopes.","items":{"type":"string"},"x-example":"users.read"},"secret":{"type":"string","description":"Secret key.","x-example":"919c2d18fb5d4...a2ae413da83346ad2"}},"required":["$id","name","scopes","secret"]},"task":{"description":"Task","type":"object","properties":{"$id":{"type":"string","description":"Task ID.","x-example":"5e5ea5c16897e"},"name":{"type":"string","description":"Task name.","x-example":"My Task"},"security":{"type":"boolean","description":"Indicated if SSL \/ TLS Certificate verification is enabled.","x-example":true},"httpMethod":{"type":"string","description":"Task HTTP Method.","x-example":"POST"},"httpUrl":{"type":"string","description":"Task HTTP URL.","x-example":"https:\/\/example.com\/task"},"httpHeaders":{"type":"array","description":"Task HTTP headers.","items":{"type":"string"},"x-example":"key:value"},"httpUser":{"type":"string","description":"HTTP basic authentication username.","x-example":"username"},"httpPass":{"type":"string","description":"HTTP basic authentication password.","x-example":"password"},"duration":{"type":"number","description":"Task duration in seconds.","x-example":1.2,"format":"float"},"delay":{"type":"number","description":"Task delay time in seconds.","x-example":1.2,"format":"float"},"failures":{"type":"integer","description":"Number of recurring task failures.","x-example":0,"format":"int32"},"schedule":{"type":"string","description":"Task schedule in CRON syntax.","x-example":"* * * * *"},"status":{"type":"string","description":"Task status. Possible values: play, pause","x-example":"enabled"},"updated":{"type":"integer","description":"Task last updated time in Unix timestamp.","x-example":1592981250,"format":"int32"},"previous":{"type":"integer","description":"Task previous run time in Unix timestamp.","x-example":1592981250,"format":"int32"},"next":{"type":"integer","description":"Task next run time in Unix timestamp.","x-example":1592981650,"format":"int32"}},"required":["$id","name","security","httpMethod","httpUrl","httpHeaders","httpUser","httpPass","duration","delay","failures","schedule","status","updated","previous","next"]},"domain":{"description":"Domain","type":"object","properties":{"$id":{"type":"string","description":"Domain ID.","x-example":"5e5ea5c16897e"},"domain":{"type":"string","description":"Domain name.","x-example":"appwrite.company.com"},"registerable":{"type":"string","description":"Registerable domain name.","x-example":"company.com"},"tld":{"type":"string","description":"TLD name.","x-example":"com"},"verification":{"type":"boolean","description":"Verification process status.","x-example":true},"certificateId":{"type":"string","description":"Certificate ID.","x-example":"6ejea5c13377e"}},"required":["$id","domain","registerable","tld","verification","certificateId"]},"platform":{"description":"Platform","type":"object","properties":{"$id":{"type":"string","description":"Platform ID.","x-example":"5e5ea5c16897e"},"name":{"type":"string","description":"Platform name.","x-example":"My Web App"},"type":{"type":"string","description":"Platform type. Possible values are: web, flutter-ios, flutter-android, ios, android, and unity.","x-example":"My Web App"},"key":{"type":"string","description":"Platform Key. iOS bundle ID or Android package name. Empty string for other platforms.","x-example":"com.company.appname"},"store":{"type":"string","description":"App store or Google Play store ID.","x-example":""},"hostname":{"type":"string","description":"Web app hostname. Empty string for other platforms.","x-example":true},"httpUser":{"type":"string","description":"HTTP basic authentication username.","x-example":"username"},"httpPass":{"type":"string","description":"HTTP basic authentication password.","x-example":"password"}},"required":["$id","name","type","key","store","hostname","httpUser","httpPass"]},"country":{"description":"Country","type":"object","properties":{"name":{"type":"string","description":"Country name.","x-example":"United States"},"code":{"type":"string","description":"Country two-character ISO 3166-1 alpha code.","x-example":"US"}},"required":["name","code"]},"continent":{"description":"Continent","type":"object","properties":{"name":{"type":"string","description":"Continent name.","x-example":"Europe"},"code":{"type":"string","description":"Continent two letter code.","x-example":"EU"}},"required":["name","code"]},"language":{"description":"Language","type":"object","properties":{"name":{"type":"string","description":"Language name.","x-example":"Italian"},"code":{"type":"string","description":"Language two-character ISO 639-1 codes.","x-example":"it"},"nativeName":{"type":"string","description":"Language native name.","x-example":"Italiano"}},"required":["name","code","nativeName"]},"currency":{"description":"Currency","type":"object","properties":{"symbol":{"type":"string","description":"Currency symbol.","x-example":"$"},"name":{"type":"string","description":"Currency name.","x-example":"US dollar"},"symbolNative":{"type":"string","description":"Currency native symbol.","x-example":"$"},"decimalDigits":{"type":"integer","description":"Number of decimal digits.","x-example":2,"format":"int32"},"rounding":{"type":"number","description":"Currency digit rounding.","x-example":0,"format":"float"},"code":{"type":"string","description":"Currency code in [ISO 4217-1](http:\/\/en.wikipedia.org\/wiki\/ISO_4217) three-character format.","x-example":"USD"},"namePlural":{"type":"string","description":"Currency plural name","x-example":"US dollars"}},"required":["symbol","name","symbolNative","decimalDigits","rounding","code","namePlural"]},"phone":{"description":"Phone","type":"object","properties":{"code":{"type":"string","description":"Phone code.","x-example":"+1"},"countryCode":{"type":"string","description":"Country two-character ISO 3166-1 alpha code.","x-example":"US"},"countryName":{"type":"string","description":"Country name.","x-example":"United States"}},"required":["code","countryCode","countryName"]}},"externalDocs":{"description":"Full API docs, specs and tutorials","url":"https:\/\/appwrite.io\/docs"}} \ No newline at end of file diff --git a/app/config/specs/0.11.x.server.json b/app/config/specs/0.11.x.server.json new file mode 100644 index 0000000000..1c2d1e5204 --- /dev/null +++ b/app/config/specs/0.11.x.server.json @@ -0,0 +1 @@ +{"swagger":"2.0","info":{"version":"0.11.0","title":"Appwrite","description":"Appwrite backend as a service cuts up to 70% of the time and costs required for building a modern application. We abstract and simplify common development tasks behind a REST APIs, to help you develop your app in a fast and secure way. For full API documentation and tutorials go to [https:\/\/appwrite.io\/docs](https:\/\/appwrite.io\/docs)","termsOfService":"https:\/\/appwrite.io\/policy\/terms","contact":{"name":"Appwrite Team","url":"https:\/\/appwrite.io\/support","email":"team@appwrite.io"},"license":{"name":"BSD-3-Clause","url":"https:\/\/raw.githubusercontent.com\/appwrite\/appwrite\/master\/LICENSE"}},"host":"appwrite.io","basePath":"\/v1","schemes":["https"],"consumes":["application\/json","multipart\/form-data"],"produces":["application\/json"],"securityDefinitions":{"Project":{"type":"apiKey","name":"X-Appwrite-Project","description":"Your project ID","in":"header","x-appwrite":{"demo":"5df5acd0d48c2"}},"Key":{"type":"apiKey","name":"X-Appwrite-Key","description":"Your secret API key","in":"header","x-appwrite":{"demo":"919c2d18fb5d4...a2ae413da83346ad2"}},"JWT":{"type":"apiKey","name":"X-Appwrite-JWT","description":"Your secret JSON Web Token","in":"header","x-appwrite":{"demo":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ..."}},"Locale":{"type":"apiKey","name":"X-Appwrite-Locale","description":"","in":"header","x-appwrite":{"demo":"en"}}},"paths":{"\/account":{"get":{"summary":"Get Account","operationId":"accountGet","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Get currently logged in user data as JSON object.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"get","weight":47,"cookies":false,"type":"","demo":"account\/get.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/get.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}]},"delete":{"summary":"Delete Account","operationId":"accountDelete","consumes":["application\/json"],"produces":[],"tags":["account"],"description":"Delete a currently logged in user account. Behind the scene, the user record is not deleted but permanently blocked from any access. This is done to avoid deleted accounts being overtaken by new users with the same email address. Any user-related resources like documents or storage files should be deleted separately.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"delete","weight":56,"cookies":false,"type":"","demo":"account\/delete.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/delete.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}]}},"\/account\/email":{"patch":{"summary":"Update Account Email","operationId":"accountUpdateEmail","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Update currently logged in user account email address. After changing user address, user confirmation status is being reset and a new confirmation mail is sent. For security measures, user password is required to complete this request.\nThis endpoint can also be used to convert an anonymous account to a normal one, by passing an email address and a new password.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updateEmail","weight":54,"cookies":false,"type":"","demo":"account\/update-email.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-email.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"User email.","default":null,"x-example":"email@example.com"},"password":{"type":"string","description":"User password. Must be between 6 to 32 chars.","default":null,"x-example":"password"}},"required":["email","password"]}}]}},"\/account\/logs":{"get":{"summary":"Get Account Logs","operationId":"accountGetLogs","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Get currently logged in user list of latest security activity logs. Each log returns user IP address, location and date and time of log.","responses":{"200":{"description":"Logs List","schema":{"$ref":"#\/definitions\/logList"}}},"x-appwrite":{"method":"getLogs","weight":50,"cookies":false,"type":"","demo":"account\/get-logs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/get-logs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}]}},"\/account\/name":{"patch":{"summary":"Update Account Name","operationId":"accountUpdateName","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Update currently logged in user account name.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updateName","weight":52,"cookies":false,"type":"","demo":"account\/update-name.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-name.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"User name. Max length: 128 chars.","default":null,"x-example":"[NAME]"}},"required":["name"]}}]}},"\/account\/password":{"patch":{"summary":"Update Account Password","operationId":"accountUpdatePassword","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Update currently logged in user password. For validation, user is required to pass in the new password, and the old password. For users created with OAuth and Team Invites, oldPassword is optional.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updatePassword","weight":53,"cookies":false,"type":"","demo":"account\/update-password.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-password.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"password":{"type":"string","description":"New user password. Must be between 6 to 32 chars.","default":null,"x-example":"password"},"oldPassword":{"type":"string","description":"Old user password. Must be between 6 to 32 chars.","default":"","x-example":"password"}},"required":["password"]}}]}},"\/account\/prefs":{"get":{"summary":"Get Account Preferences","operationId":"accountGetPrefs","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Get currently logged in user preferences as a key-value object.","responses":{"200":{"description":"Preferences","schema":{"$ref":"#\/definitions\/preferences"}}},"x-appwrite":{"method":"getPrefs","weight":48,"cookies":false,"type":"","demo":"account\/get-prefs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/get-prefs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}]},"patch":{"summary":"Update Account Preferences","operationId":"accountUpdatePrefs","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Update currently logged in user account preferences. You can pass only the specific settings you wish to update.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updatePrefs","weight":55,"cookies":false,"type":"","demo":"account\/update-prefs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-prefs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"prefs":{"type":"object","description":"Prefs key-value JSON object.","default":null,"x-example":"{}"}},"required":["prefs"]}}]}},"\/account\/recovery":{"post":{"summary":"Create Password Recovery","operationId":"accountCreateRecovery","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Sends the user an email with a temporary secret key for password reset. When the user clicks the confirmation link he is redirected back to your app password reset URL with the secret key and email address values attached to the URL query string. Use the query string params to submit a request to the [PUT \/account\/recovery](\/docs\/client\/account#accountUpdateRecovery) endpoint to complete the process. The verification link sent to the user's email address is valid for 1 hour.","responses":{"201":{"description":"Token","schema":{"$ref":"#\/definitions\/token"}}},"x-appwrite":{"method":"createRecovery","weight":59,"cookies":false,"type":"","demo":"account\/create-recovery.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-recovery.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},email:{param-email}","scope":"public","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"User email.","default":null,"x-example":"email@example.com"},"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.","default":null,"x-example":"https:\/\/example.com"}},"required":["email","url"]}}]},"put":{"summary":"Create Password Recovery (confirmation)","operationId":"accountUpdateRecovery","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to complete the user account password reset. Both the **userId** and **secret** arguments will be passed as query parameters to the redirect URL you have provided when sending your request to the [POST \/account\/recovery](\/docs\/client\/account#accountCreateRecovery) endpoint.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md) the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.","responses":{"200":{"description":"Token","schema":{"$ref":"#\/definitions\/token"}}},"x-appwrite":{"method":"updateRecovery","weight":60,"cookies":false,"type":"","demo":"account\/update-recovery.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-recovery.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},userId:{param-userId}","scope":"public","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"userId":{"type":"string","description":"User account UID address.","default":null,"x-example":"[USER_ID]"},"secret":{"type":"string","description":"Valid reset token.","default":null,"x-example":"[SECRET]"},"password":{"type":"string","description":"New password. Must be between 6 to 32 chars.","default":null,"x-example":"password"},"passwordAgain":{"type":"string","description":"New password again. Must be between 6 to 32 chars.","default":null,"x-example":"password"}},"required":["userId","secret","password","passwordAgain"]}}]}},"\/account\/sessions":{"get":{"summary":"Get Account Sessions","operationId":"accountGetSessions","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Get currently logged in user list of active sessions across different devices.","responses":{"200":{"description":"Sessions List","schema":{"$ref":"#\/definitions\/sessionList"}}},"x-appwrite":{"method":"getSessions","weight":49,"cookies":false,"type":"","demo":"account\/get-sessions.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/get-sessions.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}]},"delete":{"summary":"Delete All Account Sessions","operationId":"accountDeleteSessions","consumes":["application\/json"],"produces":[],"tags":["account"],"description":"Delete all sessions from the user account and remove any sessions cookies from the end client.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteSessions","weight":58,"cookies":false,"type":"","demo":"account\/delete-sessions.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/delete-sessions.md","rate-limit":100,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}]}},"\/account\/sessions\/{sessionId}":{"get":{"summary":"Get Session By ID","operationId":"accountGetSession","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to get a logged in user's session using a Session ID. Inputting 'current' will return the current session being used.","responses":{"200":{"description":"Session","schema":{"$ref":"#\/definitions\/session"}}},"x-appwrite":{"method":"getSession","weight":51,"cookies":false,"type":"","demo":"account\/get-session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/get-session.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"sessionId","description":"Session unique ID. Use the string 'current' to get the current device session.","required":true,"type":"string","x-example":"[SESSION_ID]","in":"path"}]},"delete":{"summary":"Delete Account Session","operationId":"accountDeleteSession","consumes":["application\/json"],"produces":[],"tags":["account"],"description":"Use this endpoint to log out the currently logged in user from all their account sessions across all of their different devices. When using the option id argument, only the session unique ID provider will be deleted.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteSession","weight":57,"cookies":false,"type":"","demo":"account\/delete-session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/delete-session.md","rate-limit":100,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"sessionId","description":"Session unique ID. Use the string 'current' to delete the current device session.","required":true,"type":"string","x-example":"[SESSION_ID]","in":"path"}]}},"\/account\/verification":{"post":{"summary":"Create Email Verification","operationId":"accountCreateVerification","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to send a verification message to your user email address to confirm they are the valid owners of that address. Both the **userId** and **secret** arguments will be passed as query parameters to the URL you have provided to be attached to the verification email. The provided URL should redirect the user back to your app and allow you to complete the verification process by verifying both the **userId** and **secret** parameters. Learn more about how to [complete the verification process](\/docs\/client\/account#accountUpdateVerification). The verification link sent to the user's email address is valid for 7 days.\n\nPlease note that in order to avoid a [Redirect Attack](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md), the only valid redirect URLs are the ones from domains you have set when adding your platforms in the console interface.\n","responses":{"201":{"description":"Token","schema":{"$ref":"#\/definitions\/token"}}},"x-appwrite":{"method":"createVerification","weight":61,"cookies":false,"type":"","demo":"account\/create-verification.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/create-verification.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},userId:{userId}","scope":"account","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"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.","default":null,"x-example":"https:\/\/example.com"}},"required":["url"]}}]},"put":{"summary":"Create Email Verification (confirmation)","operationId":"accountUpdateVerification","consumes":["application\/json"],"produces":["application\/json"],"tags":["account"],"description":"Use this endpoint to complete the user email verification process. Use both the **userId** and **secret** parameters that were attached to your app URL to verify the user email ownership. If confirmed this route will return a 200 status code.","responses":{"200":{"description":"Token","schema":{"$ref":"#\/definitions\/token"}}},"x-appwrite":{"method":"updateVerification","weight":62,"cookies":false,"type":"","demo":"account\/update-verification.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/account\/update-verification.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},userId:{param-userId}","scope":"public","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"userId":{"type":"string","description":"User unique ID.","default":null,"x-example":"[USER_ID]"},"secret":{"type":"string","description":"Valid verification token.","default":null,"x-example":"[SECRET]"}},"required":["userId","secret"]}}]}},"\/avatars\/browsers\/{code}":{"get":{"summary":"Get Browser Icon","operationId":"avatarsGetBrowser","consumes":["application\/json"],"produces":["image\/png"],"tags":["avatars"],"description":"You can use this endpoint to show different browser icons to your users. The code argument receives the browser code as it appears in your user \/account\/sessions endpoint. Use width, height and quality arguments to change the output settings.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getBrowser","weight":64,"cookies":false,"type":"location","demo":"avatars\/get-browser.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-browser.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"code","description":"Browser Code.","required":true,"type":"string","x-example":"aa","in":"path"},{"name":"width","description":"Image width. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"height","description":"Image height. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"quality","description":"Image quality. Pass an integer between 0 to 100. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"}]}},"\/avatars\/credit-cards\/{code}":{"get":{"summary":"Get Credit Card Icon","operationId":"avatarsGetCreditCard","consumes":["application\/json"],"produces":["image\/png"],"tags":["avatars"],"description":"The credit card endpoint will return you the icon of the credit card provider you need. Use width, height and quality arguments to change the output settings.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getCreditCard","weight":63,"cookies":false,"type":"location","demo":"avatars\/get-credit-card.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-credit-card.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"code","description":"Credit Card Code. Possible values: amex, argencard, cabal, censosud, diners, discover, elo, hipercard, jcb, mastercard, naranja, targeta-shopping, union-china-pay, visa, mir, maestro.","required":true,"type":"string","x-example":"amex","in":"path"},{"name":"width","description":"Image width. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"height","description":"Image height. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"quality","description":"Image quality. Pass an integer between 0 to 100. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"}]}},"\/avatars\/favicon":{"get":{"summary":"Get Favicon","operationId":"avatarsGetFavicon","consumes":["application\/json"],"produces":["image\/*"],"tags":["avatars"],"description":"Use this endpoint to fetch the favorite icon (AKA favicon) of any remote website URL.\n","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getFavicon","weight":67,"cookies":false,"type":"location","demo":"avatars\/get-favicon.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-favicon.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"url","description":"Website URL which you want to fetch the favicon from.","required":true,"type":"string","format":"url","x-example":"https:\/\/example.com","in":"query"}]}},"\/avatars\/flags\/{code}":{"get":{"summary":"Get Country Flag","operationId":"avatarsGetFlag","consumes":["application\/json"],"produces":["image\/png"],"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.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getFlag","weight":65,"cookies":false,"type":"location","demo":"avatars\/get-flag.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-flag.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"code","description":"Country Code. ISO Alpha-2 country code format.","required":true,"type":"string","x-example":"af","in":"path"},{"name":"width","description":"Image width. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"height","description":"Image height. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"quality","description":"Image quality. Pass an integer between 0 to 100. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"}]}},"\/avatars\/image":{"get":{"summary":"Get Image from URL","operationId":"avatarsGetImage","consumes":["application\/json"],"produces":["image\/*"],"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.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getImage","weight":66,"cookies":false,"type":"location","demo":"avatars\/get-image.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-image.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"url","description":"Image URL which you want to crop.","required":true,"type":"string","format":"url","x-example":"https:\/\/example.com","in":"query"},{"name":"width","description":"Resize preview image width, Pass an integer between 0 to 2000.","required":false,"type":"integer","format":"int32","x-example":0,"default":400,"in":"query"},{"name":"height","description":"Resize preview image height, Pass an integer between 0 to 2000.","required":false,"type":"integer","format":"int32","x-example":0,"default":400,"in":"query"}]}},"\/avatars\/initials":{"get":{"summary":"Get User Initials","operationId":"avatarsGetInitials","consumes":["application\/json"],"produces":["image\/png"],"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.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getInitials","weight":69,"cookies":false,"type":"location","demo":"avatars\/get-initials.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-initials.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"name","description":"Full Name. When empty, current user name or email will be used. Max length: 128 chars.","required":false,"type":"string","x-example":"[NAME]","default":"","in":"query"},{"name":"width","description":"Image width. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":500,"in":"query"},{"name":"height","description":"Image height. Pass an integer between 0 to 2000. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":500,"in":"query"},{"name":"color","description":"Changes text color. By default a random color will be picked and stay will persistent to the given name.","required":false,"type":"string","default":"","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,"type":"string","default":"","in":"query"}]}},"\/avatars\/qr":{"get":{"summary":"Get QR Code","operationId":"avatarsGetQR","consumes":["application\/json"],"produces":["image\/png"],"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.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getQR","weight":68,"cookies":false,"type":"location","demo":"avatars\/get-q-r.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/avatars\/get-qr.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"avatars.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"text","description":"Plain text to be converted to QR code image.","required":true,"type":"string","x-example":"[TEXT]","in":"query"},{"name":"size","description":"QR code size. Pass an integer between 0 to 1000. Defaults to 400.","required":false,"type":"integer","format":"int32","x-example":0,"default":400,"in":"query"},{"name":"margin","description":"Margin from edge. Pass an integer between 0 to 10. Defaults to 1.","required":false,"type":"integer","format":"int32","x-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,"type":"boolean","x-example":false,"default":false,"in":"query"}]}},"\/database\/collections":{"get":{"summary":"List Collections","operationId":"databaseListCollections","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Get a list of all the user collections. You can use the query params to filter your results. On admin mode, this endpoint will return a list of all of the project's collections. [Learn more about different API modes](\/docs\/admin).","responses":{"200":{"description":"Collections List","schema":{"$ref":"#\/definitions\/collectionList"}}},"x-appwrite":{"method":"listCollections","weight":71,"cookies":false,"type":"","demo":"database\/list-collections.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/list-collections.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"collections.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create Collection","operationId":"databaseCreateCollection","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Create a new Collection.","responses":{"201":{"description":"Collection","schema":{"$ref":"#\/definitions\/collection"}}},"x-appwrite":{"method":"createCollection","weight":70,"cookies":false,"type":"","demo":"database\/create-collection.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/create-collection.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"collections.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Collection name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"read":{"type":"array","description":"An array of strings with read permissions. By default no user is granted with any read permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"write":{"type":"array","description":"An array of strings with write permissions. By default no user is granted with any write permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"rules":{"type":"array","description":"Array of [rule objects](\/docs\/rules). Each rule define a collection field name, data type and validation.","default":null,"x-example":null,"items":{"type":"string"}}},"required":["name","read","write","rules"]}}]}},"\/database\/collections\/{collectionId}":{"get":{"summary":"Get Collection","operationId":"databaseGetCollection","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Get a collection by its unique ID. This endpoint response returns a JSON object with the collection metadata.","responses":{"200":{"description":"Collection","schema":{"$ref":"#\/definitions\/collection"}}},"x-appwrite":{"method":"getCollection","weight":72,"cookies":false,"type":"","demo":"database\/get-collection.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/get-collection.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"collections.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID.","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"}]},"put":{"summary":"Update Collection","operationId":"databaseUpdateCollection","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Update a collection by its unique ID.","responses":{"200":{"description":"Collection","schema":{"$ref":"#\/definitions\/collection"}}},"x-appwrite":{"method":"updateCollection","weight":73,"cookies":false,"type":"","demo":"database\/update-collection.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/update-collection.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"collections.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID.","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Collection name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"read":{"type":"array","description":"An array of strings with read permissions. By default inherits the existing read permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"write":{"type":"array","description":"An array of strings with write permissions. By default inherits the existing write permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"rules":{"type":"array","description":"Array of [rule objects](\/docs\/rules). Each rule define a collection field name, data type and validation.","default":[],"x-example":null,"items":{"type":"string"}}},"required":["name"]}}]},"delete":{"summary":"Delete Collection","operationId":"databaseDeleteCollection","consumes":["application\/json"],"produces":[],"tags":["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"}},"x-appwrite":{"method":"deleteCollection","weight":74,"cookies":false,"type":"","demo":"database\/delete-collection.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/delete-collection.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"collections.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID.","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"}]}},"\/database\/collections\/{collectionId}\/documents":{"get":{"summary":"List Documents","operationId":"databaseListDocuments","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Get a list of all the user documents. You can use the query params to filter your results. On admin mode, this endpoint will return a list of all of the project's documents. [Learn more about different API modes](\/docs\/admin).","responses":{"200":{"description":"Documents List","schema":{"$ref":"#\/definitions\/documentList"}}},"x-appwrite":{"method":"listDocuments","weight":76,"cookies":false,"type":"","demo":"database\/list-documents.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/list-documents.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"documents.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](\/docs\/server\/database#createCollection).","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"filters","description":"Array of filter strings. Each filter is constructed from a key name, comparison operator (=, !=, >, <, <=, >=) and a value. You can also use a dot (.) separator in attribute names to filter by child document attributes. Examples: 'name=John Doe' or 'category.$id>=5bed2d152c362'.","required":false,"type":"array","collectionFormat":"multi","items":{"type":"string"},"default":[],"in":"query"},{"name":"limit","description":"Maximum number of documents to return in response. Use this value to manage pagination. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Offset value. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderField","description":"Document field that results will be sorted by.","required":false,"type":"string","x-example":"[ORDER_FIELD]","default":"","in":"query"},{"name":"orderType","description":"Order direction. Possible values are DESC for descending order, or ASC for ascending order.","required":false,"type":"string","x-example":"DESC","default":"ASC","in":"query"},{"name":"orderCast","description":"Order field type casting. Possible values are int, string, date, time or datetime. The database will attempt to cast the order field to the value you pass here. The default value is a string.","required":false,"type":"string","x-example":"int","default":"string","in":"query"},{"name":"search","description":"Search query. Enter any free text search. The database will try to find a match against all document attributes and children. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"}]},"post":{"summary":"Create Document","operationId":"databaseCreateDocument","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Create a new Document. Before using this route, you should create a new collection resource using either a [server integration](\/docs\/server\/database#databaseCreateCollection) API or directly from your database console.","responses":{"201":{"description":"Document","schema":{"$ref":"#\/definitions\/document"}}},"x-appwrite":{"method":"createDocument","weight":75,"cookies":false,"type":"","demo":"database\/create-document.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/create-document.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"documents.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](\/docs\/server\/database#createCollection).","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"data":{"type":"object","description":"Document data as JSON object.","default":null,"x-example":"{}"},"read":{"type":"array","description":"An array of strings with read permissions. By default only the current user is granted with read permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"write":{"type":"array","description":"An array of strings with write permissions. By default only the current user is granted with write permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"parentDocument":{"type":"string","description":"Parent document unique ID. Use when you want your new document to be a child of a parent document.","default":"","x-example":"[PARENT_DOCUMENT]"},"parentProperty":{"type":"string","description":"Parent document property name. Use when you want your new document to be a child of a parent document.","default":"","x-example":null},"parentPropertyType":{"type":"string","description":"Parent document property connection type. You can set this value to **assign**, **append** or **prepend**, default value is assign. Use when you want your new document to be a child of a parent document.","default":"assign","x-example":"assign"}},"required":["data"]}}]}},"\/database\/collections\/{collectionId}\/documents\/{documentId}":{"get":{"summary":"Get Document","operationId":"databaseGetDocument","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"description":"Get a document by its unique ID. This endpoint response returns a JSON object with the document data.","responses":{"200":{"description":"Document","schema":{"$ref":"#\/definitions\/document"}}},"x-appwrite":{"method":"getDocument","weight":77,"cookies":false,"type":"","demo":"database\/get-document.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/get-document.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"documents.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](\/docs\/server\/database#createCollection).","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"documentId","description":"Document unique ID.","required":true,"type":"string","x-example":"[DOCUMENT_ID]","in":"path"}]},"patch":{"summary":"Update Document","operationId":"databaseUpdateDocument","consumes":["application\/json"],"produces":["application\/json"],"tags":["database"],"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","schema":{"$ref":"#\/definitions\/document"}}},"x-appwrite":{"method":"updateDocument","weight":78,"cookies":false,"type":"","demo":"database\/update-document.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/update-document.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"documents.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](\/docs\/server\/database#createCollection).","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"documentId","description":"Document unique ID.","required":true,"type":"string","x-example":"[DOCUMENT_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"data":{"type":"object","description":"Document data as JSON object.","default":null,"x-example":"{}"},"read":{"type":"array","description":"An array of strings with read permissions. By default inherits the existing read permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"write":{"type":"array","description":"An array of strings with write permissions. By default inherits the existing write permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}}},"required":["data"]}}]},"delete":{"summary":"Delete Document","operationId":"databaseDeleteDocument","consumes":["application\/json"],"produces":[],"tags":["database"],"description":"Delete a document by its unique ID. This endpoint deletes only the parent documents, its attributes and relations to other documents. Child documents **will not** be deleted.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteDocument","weight":79,"cookies":false,"type":"","demo":"database\/delete-document.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/database\/delete-document.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"documents.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"collectionId","description":"Collection unique ID. You can create a new collection with validation rules using the Database service [server integration](\/docs\/server\/database#createCollection).","required":true,"type":"string","x-example":"[COLLECTION_ID]","in":"path"},{"name":"documentId","description":"Document unique ID.","required":true,"type":"string","x-example":"[DOCUMENT_ID]","in":"path"}]}},"\/functions":{"get":{"summary":"List Functions","operationId":"functionsList","consumes":["application\/json"],"produces":["application\/json"],"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","schema":{"$ref":"#\/definitions\/functionList"}}},"x-appwrite":{"method":"list","weight":169,"cookies":false,"type":"","demo":"functions\/list.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/list-functions.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create Function","operationId":"functionsCreate","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Create a new function. You can pass a list of [permissions](\/docs\/permissions) to allow different project users or team with access to execute the function using the client API.","responses":{"201":{"description":"Function","schema":{"$ref":"#\/definitions\/function"}}},"x-appwrite":{"method":"create","weight":168,"cookies":false,"type":"","demo":"functions\/create.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/create-function.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Function name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"execute":{"type":"array","description":"An array of strings with execution permissions. By default no user is granted with any execute permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"runtime":{"type":"string","description":"Execution runtime.","default":null,"x-example":"dotnet-5.0"},"vars":{"type":"object","description":"Key-value JSON object.","default":{},"x-example":"{}"},"events":{"type":"array","description":"Events list.","default":[],"x-example":null,"items":{"type":"string"}},"schedule":{"type":"string","description":"Schedule CRON syntax.","default":"","x-example":null},"timeout":{"type":"integer","description":"Function maximum execution time in seconds.","default":15,"x-example":1}},"required":["name","execute","runtime"]}}]}},"\/functions\/{functionId}":{"get":{"summary":"Get Function","operationId":"functionsGet","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Get a function by its unique ID.","responses":{"200":{"description":"Function","schema":{"$ref":"#\/definitions\/function"}}},"x-appwrite":{"method":"get","weight":170,"cookies":false,"type":"","demo":"functions\/get.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/get-function.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"}]},"put":{"summary":"Update Function","operationId":"functionsUpdate","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Update function by its unique ID.","responses":{"200":{"description":"Function","schema":{"$ref":"#\/definitions\/function"}}},"x-appwrite":{"method":"update","weight":172,"cookies":false,"type":"","demo":"functions\/update.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/update-function.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Function name. Max length: 128 chars.","default":null,"x-example":"[NAME]"},"execute":{"type":"array","description":"An array of strings with execution permissions. By default no user is granted with any execute permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"vars":{"type":"object","description":"Key-value JSON object.","default":{},"x-example":"{}"},"events":{"type":"array","description":"Events list.","default":[],"x-example":null,"items":{"type":"string"}},"schedule":{"type":"string","description":"Schedule CRON syntax.","default":"","x-example":null},"timeout":{"type":"integer","description":"Function maximum execution time in seconds.","default":15,"x-example":1}},"required":["name","execute"]}}]},"delete":{"summary":"Delete Function","operationId":"functionsDelete","consumes":["application\/json"],"produces":[],"tags":["functions"],"description":"Delete a function by its unique ID.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"delete","weight":174,"cookies":false,"type":"","demo":"functions\/delete.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/delete-function.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"}]}},"\/functions\/{functionId}\/executions":{"get":{"summary":"List Executions","operationId":"functionsListExecutions","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Get a list of all the current user function execution logs. You can use the query params to filter your results. On admin mode, this endpoint will return a list of all of the project's executions. [Learn more about different API modes](\/docs\/admin).","responses":{"200":{"description":"Executions List","schema":{"$ref":"#\/definitions\/executionList"}}},"x-appwrite":{"method":"listExecutions","weight":180,"cookies":false,"type":"","demo":"functions\/list-executions.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/list-executions.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"execution.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create Execution","operationId":"functionsCreateExecution","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Trigger a function execution. The returned object will return you the current execution status. You can ping the `Get Execution` endpoint to get updates on the current execution status. Once this endpoint is called, your function execution process will start asynchronously.","responses":{"201":{"description":"Execution","schema":{"$ref":"#\/definitions\/execution"}}},"x-appwrite":{"method":"createExecution","weight":179,"cookies":false,"type":"","demo":"functions\/create-execution.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/create-execution.md","rate-limit":60,"rate-time":60,"rate-key":"url:{url},ip:{ip}","scope":"execution.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"data":{"type":"string","description":"String of custom data to send to function.","default":"","x-example":"[DATA]"}}}}]}},"\/functions\/{functionId}\/executions\/{executionId}":{"get":{"summary":"Get Execution","operationId":"functionsGetExecution","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Get a function execution log by its unique ID.","responses":{"200":{"description":"Execution","schema":{"$ref":"#\/definitions\/execution"}}},"x-appwrite":{"method":"getExecution","weight":181,"cookies":false,"type":"","demo":"functions\/get-execution.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/get-execution.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"execution.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"executionId","description":"Execution unique ID.","required":true,"type":"string","x-example":"[EXECUTION_ID]","in":"path"}]}},"\/functions\/{functionId}\/tag":{"patch":{"summary":"Update Function Tag","operationId":"functionsUpdateTag","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Update the function code tag ID using the unique function ID. Use this endpoint to switch the code tag that should be executed by the execution endpoint.","responses":{"200":{"description":"Function","schema":{"$ref":"#\/definitions\/function"}}},"x-appwrite":{"method":"updateTag","weight":173,"cookies":false,"type":"","demo":"functions\/update-tag.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/update-function-tag.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"tag":{"type":"string","description":"Tag unique ID.","default":null,"x-example":"[TAG]"}},"required":["tag"]}}]}},"\/functions\/{functionId}\/tags":{"get":{"summary":"List Tags","operationId":"functionsListTags","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Get a list of all the project's code tags. You can use the query params to filter your results.","responses":{"200":{"description":"Tags List","schema":{"$ref":"#\/definitions\/tagList"}}},"x-appwrite":{"method":"listTags","weight":176,"cookies":false,"type":"","demo":"functions\/list-tags.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/list-tags.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create Tag","operationId":"functionsCreateTag","consumes":["multipart\/form-data"],"produces":["application\/json"],"tags":["functions"],"description":"Create a new function code tag. 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 tag to use your new tag 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](\/docs\/functions).\n\nUse the \"command\" param to set the entry point used to execute your code.","responses":{"201":{"description":"Tag","schema":{"$ref":"#\/definitions\/tag"}}},"x-appwrite":{"method":"createTag","weight":175,"cookies":false,"type":"","demo":"functions\/create-tag.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/create-tag.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.write","platforms":["server"],"packaging":true,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"command","description":"Code execution command.","required":true,"type":"string","x-example":"[COMMAND]","in":"formData"},{"name":"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.","required":true,"type":"file","in":"formData"}]}},"\/functions\/{functionId}\/tags\/{tagId}":{"get":{"summary":"Get Tag","operationId":"functionsGetTag","consumes":["application\/json"],"produces":["application\/json"],"tags":["functions"],"description":"Get a code tag by its unique ID.","responses":{"200":{"description":"Tag","schema":{"$ref":"#\/definitions\/tag"}}},"x-appwrite":{"method":"getTag","weight":177,"cookies":false,"type":"","demo":"functions\/get-tag.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/get-tag.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"tagId","description":"Tag unique ID.","required":true,"type":"string","x-example":"[TAG_ID]","in":"path"}]},"delete":{"summary":"Delete Tag","operationId":"functionsDeleteTag","consumes":["application\/json"],"produces":[],"tags":["functions"],"description":"Delete a code tag by its unique ID.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteTag","weight":178,"cookies":false,"type":"","demo":"functions\/delete-tag.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/functions\/delete-tag.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"functions.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"functionId","description":"Function unique ID.","required":true,"type":"string","x-example":"[FUNCTION_ID]","in":"path"},{"name":"tagId","description":"Tag unique ID.","required":true,"type":"string","x-example":"[TAG_ID]","in":"path"}]}},"\/health":{"get":{"summary":"Get HTTP","operationId":"healthGet","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Check the Appwrite HTTP server is up and responsive.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"get","weight":87,"cookies":false,"type":"","demo":"health\/get.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/anti-virus":{"get":{"summary":"Get Anti virus","operationId":"healthGetAntiVirus","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Check the Appwrite Anti Virus server is up and connection is successful.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getAntiVirus","weight":99,"cookies":false,"type":"","demo":"health\/get-anti-virus.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-storage-anti-virus.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/cache":{"get":{"summary":"Get Cache","operationId":"healthGetCache","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Check the Appwrite in-memory cache server is up and connection is successful.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getCache","weight":90,"cookies":false,"type":"","demo":"health\/get-cache.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-cache.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/db":{"get":{"summary":"Get DB","operationId":"healthGetDB","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Check the Appwrite database server is up and connection is successful.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getDB","weight":89,"cookies":false,"type":"","demo":"health\/get-d-b.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-db.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/queue\/certificates":{"get":{"summary":"Get Certificate Queue","operationId":"healthGetQueueCertificates","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Get the number of certificates that are waiting to be issued against [Letsencrypt](https:\/\/letsencrypt.org\/) in the Appwrite internal queue server.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getQueueCertificates","weight":96,"cookies":false,"type":"","demo":"health\/get-queue-certificates.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-queue-certificates.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/queue\/functions":{"get":{"summary":"Get Functions Queue","operationId":"healthGetQueueFunctions","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getQueueFunctions","weight":97,"cookies":false,"type":"","demo":"health\/get-queue-functions.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-queue-functions.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/queue\/logs":{"get":{"summary":"Get Logs Queue","operationId":"healthGetQueueLogs","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Get the number of logs that are waiting to be processed in the Appwrite internal queue server.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getQueueLogs","weight":94,"cookies":false,"type":"","demo":"health\/get-queue-logs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-queue-logs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/queue\/tasks":{"get":{"summary":"Get Tasks Queue","operationId":"healthGetQueueTasks","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Get the number of tasks that are waiting to be processed in the Appwrite internal queue server.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getQueueTasks","weight":93,"cookies":false,"type":"","demo":"health\/get-queue-tasks.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-queue-tasks.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/queue\/usage":{"get":{"summary":"Get Usage Queue","operationId":"healthGetQueueUsage","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Get the number of usage stats that are waiting to be processed in the Appwrite internal queue server.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getQueueUsage","weight":95,"cookies":false,"type":"","demo":"health\/get-queue-usage.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-queue-usage.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/queue\/webhooks":{"get":{"summary":"Get Webhooks Queue","operationId":"healthGetQueueWebhooks","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Get the number of webhooks that are waiting to be processed in the Appwrite internal queue server.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getQueueWebhooks","weight":92,"cookies":false,"type":"","demo":"health\/get-queue-webhooks.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-queue-webhooks.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/storage\/local":{"get":{"summary":"Get Local Storage","operationId":"healthGetStorageLocal","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Check the Appwrite local storage device is up and connection is successful.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getStorageLocal","weight":98,"cookies":false,"type":"","demo":"health\/get-storage-local.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-storage-local.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}]}},"\/health\/time":{"get":{"summary":"Get Time","operationId":"healthGetTime","consumes":["application\/json"],"produces":[],"tags":["health"],"description":"Check the Appwrite server time is synced with Google remote NTP server. We use this technology to smoothly handle leap seconds with no disruptive events. The [Network Time Protocol](https:\/\/en.wikipedia.org\/wiki\/Network_Time_Protocol) (NTP) is used by hundreds of millions of computers and devices to synchronize their clocks over the Internet. If your computer sets its own clock, it likely uses NTP.","responses":{"500":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getTime","weight":91,"cookies":false,"type":"","demo":"health\/get-time.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/health\/get-time.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"health.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}]}},"\/locale":{"get":{"summary":"Get User Locale","operationId":"localeGet","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"Get the current user location based on IP. Returns an object with user country code, country name, continent name, continent code, ip address and suggested currency. You can use the locale header to get the data in a supported language.\n\n([IP Geolocation by DB-IP](https:\/\/db-ip.com))","responses":{"200":{"description":"Locale","schema":{"$ref":"#\/definitions\/locale"}}},"x-appwrite":{"method":"get","weight":80,"cookies":false,"type":"","demo":"locale\/get.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-locale.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}]}},"\/locale\/continents":{"get":{"summary":"List Continents","operationId":"localeGetContinents","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all continents. You can use the locale header to get the data in a supported language.","responses":{"200":{"description":"Continents List","schema":{"$ref":"#\/definitions\/continentList"}}},"x-appwrite":{"method":"getContinents","weight":84,"cookies":false,"type":"","demo":"locale\/get-continents.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-continents.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}]}},"\/locale\/countries":{"get":{"summary":"List Countries","operationId":"localeGetCountries","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all countries. You can use the locale header to get the data in a supported language.","responses":{"200":{"description":"Countries List","schema":{"$ref":"#\/definitions\/countryList"}}},"x-appwrite":{"method":"getCountries","weight":81,"cookies":false,"type":"","demo":"locale\/get-countries.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-countries.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}]}},"\/locale\/countries\/eu":{"get":{"summary":"List EU Countries","operationId":"localeGetCountriesEU","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all countries that are currently members of the EU. You can use the locale header to get the data in a supported language.","responses":{"200":{"description":"Countries List","schema":{"$ref":"#\/definitions\/countryList"}}},"x-appwrite":{"method":"getCountriesEU","weight":82,"cookies":false,"type":"","demo":"locale\/get-countries-e-u.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-countries-eu.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}]}},"\/locale\/countries\/phones":{"get":{"summary":"List Countries Phone Codes","operationId":"localeGetCountriesPhones","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all countries phone codes. You can use the locale header to get the data in a supported language.","responses":{"200":{"description":"Phones List","schema":{"$ref":"#\/definitions\/phoneList"}}},"x-appwrite":{"method":"getCountriesPhones","weight":83,"cookies":false,"type":"","demo":"locale\/get-countries-phones.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-countries-phones.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}]}},"\/locale\/currencies":{"get":{"summary":"List Currencies","operationId":"localeGetCurrencies","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all currencies, including currency symbol, name, plural, and decimal digits for all major and minor currencies. You can use the locale header to get the data in a supported language.","responses":{"200":{"description":"Currencies List","schema":{"$ref":"#\/definitions\/currencyList"}}},"x-appwrite":{"method":"getCurrencies","weight":85,"cookies":false,"type":"","demo":"locale\/get-currencies.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-currencies.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}]}},"\/locale\/languages":{"get":{"summary":"List Languages","operationId":"localeGetLanguages","consumes":["application\/json"],"produces":["application\/json"],"tags":["locale"],"description":"List of all languages classified by ISO 639-1 including 2-letter code, name in English, and name in the respective language.","responses":{"200":{"description":"Languages List","schema":{"$ref":"#\/definitions\/languageList"}}},"x-appwrite":{"method":"getLanguages","weight":86,"cookies":false,"type":"","demo":"locale\/get-languages.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/locale\/get-languages.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"locale.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}]}},"\/storage\/files":{"get":{"summary":"List Files","operationId":"storageListFiles","consumes":["application\/json"],"produces":["application\/json"],"tags":["storage"],"description":"Get a list of all the user files. You can use the query params to filter your results. On admin mode, this endpoint will return a list of all of the project's files. [Learn more about different API modes](\/docs\/admin).","responses":{"200":{"description":"Files List","schema":{"$ref":"#\/definitions\/fileList"}}},"x-appwrite":{"method":"listFiles","weight":136,"cookies":false,"type":"","demo":"storage\/list-files.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/list-files.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create File","operationId":"storageCreateFile","consumes":["multipart\/form-data"],"produces":["application\/json"],"tags":["storage"],"description":"Create a new file. The user who creates the file will automatically be assigned to read and write access unless he has passed custom values for read and write arguments.","responses":{"201":{"description":"File","schema":{"$ref":"#\/definitions\/file"}}},"x-appwrite":{"method":"createFile","weight":135,"cookies":false,"type":"upload","demo":"storage\/create-file.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/create-file.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"file","description":"Binary file.","required":true,"type":"file","in":"formData"},{"name":"read","description":"An array of strings with read permissions. By default only the current user is granted with read permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","required":false,"type":"array","collectionFormat":"multi","items":{"type":"string"},"in":"formData"},{"name":"write","description":"An array of strings with write permissions. By default only the current user is granted with write permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","required":false,"type":"array","collectionFormat":"multi","items":{"type":"string"},"in":"formData"}]}},"\/storage\/files\/{fileId}":{"get":{"summary":"Get File","operationId":"storageGetFile","consumes":["application\/json"],"produces":["application\/json"],"tags":["storage"],"description":"Get a file by its unique ID. This endpoint response returns a JSON object with the file metadata.","responses":{"200":{"description":"File","schema":{"$ref":"#\/definitions\/file"}}},"x-appwrite":{"method":"getFile","weight":137,"cookies":false,"type":"","demo":"storage\/get-file.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/get-file.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID.","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"}]},"put":{"summary":"Update File","operationId":"storageUpdateFile","consumes":["application\/json"],"produces":["application\/json"],"tags":["storage"],"description":"Update a file by its unique ID. Only users with write permissions have access to update this resource.","responses":{"200":{"description":"File","schema":{"$ref":"#\/definitions\/file"}}},"x-appwrite":{"method":"updateFile","weight":141,"cookies":false,"type":"","demo":"storage\/update-file.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/update-file.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID.","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"read":{"type":"array","description":"An array of strings with read permissions. By default no user is granted with any read permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}},"write":{"type":"array","description":"An array of strings with write permissions. By default no user is granted with any write permissions. [learn more about permissions](\/docs\/permissions) and get a full list of available permissions.","default":null,"x-example":null,"items":{"type":"string"}}},"required":["read","write"]}}]},"delete":{"summary":"Delete File","operationId":"storageDeleteFile","consumes":["application\/json"],"produces":[],"tags":["storage"],"description":"Delete a file by its unique ID. Only users with write permissions have access to delete this resource.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteFile","weight":142,"cookies":false,"type":"","demo":"storage\/delete-file.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/delete-file.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID.","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"}]}},"\/storage\/files\/{fileId}\/download":{"get":{"summary":"Get File for Download","operationId":"storageGetFileDownload","consumes":["application\/json"],"produces":["*\/*"],"tags":["storage"],"description":"Get a file content by its unique ID. The endpoint response return with a 'Content-Disposition: attachment' header that tells the browser to start downloading the file to user downloads directory.","responses":{"200":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getFileDownload","weight":139,"cookies":false,"type":"location","demo":"storage\/get-file-download.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/get-file-download.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID.","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"}]}},"\/storage\/files\/{fileId}\/preview":{"get":{"summary":"Get File Preview","operationId":"storageGetFilePreview","consumes":["application\/json"],"produces":["image\/*"],"tags":["storage"],"description":"Get a file preview image. Currently, this method supports preview for image files (jpg, png, and gif), other supported formats, like pdf, docs, slides, and spreadsheets, will return the file icon image. You can also pass query string arguments for cutting and resizing your preview image.","responses":{"200":{"description":"Image","schema":{"type":"file"}}},"x-appwrite":{"method":"getFilePreview","weight":138,"cookies":false,"type":"location","demo":"storage\/get-file-preview.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/get-file-preview.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"},{"name":"width","description":"Resize preview image width, Pass an integer between 0 to 4000.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"height","description":"Resize preview image height, Pass an integer between 0 to 4000.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"gravity","description":"Image crop gravity. Can be one of center,top-left,top,top-right,left,right,bottom-left,bottom,bottom-right","required":false,"type":"string","x-example":"center","default":"center","in":"query"},{"name":"quality","description":"Preview image quality. Pass an integer between 0 to 100. Defaults to 100.","required":false,"type":"integer","format":"int32","x-example":0,"default":100,"in":"query"},{"name":"borderWidth","description":"Preview image border in pixels. Pass an integer between 0 to 100. Defaults to 0.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"borderColor","description":"Preview image border color. Use a valid HEX color, no # is needed for prefix.","required":false,"type":"string","default":"","in":"query"},{"name":"borderRadius","description":"Preview image border radius in pixels. Pass an integer between 0 to 4000.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"opacity","description":"Preview image opacity. Only works with images having an alpha channel (like png). Pass a number between 0 to 1.","required":false,"type":"number","format":"float","x-example":0,"default":1,"in":"query"},{"name":"rotation","description":"Preview image rotation in degrees. Pass an integer between 0 and 360.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"background","description":"Preview image background color. Only works with transparent images (png). Use a valid HEX color, no # is needed for prefix.","required":false,"type":"string","default":"","in":"query"},{"name":"output","description":"Output format type (jpeg, jpg, png, gif and webp).","required":false,"type":"string","x-example":"jpg","default":"","in":"query"}]}},"\/storage\/files\/{fileId}\/view":{"get":{"summary":"Get File for View","operationId":"storageGetFileView","consumes":["application\/json"],"produces":["*\/*"],"tags":["storage"],"description":"Get a file content by its unique ID. This endpoint is similar to the download method but returns with no 'Content-Disposition: attachment' header.","responses":{"200":{"description":"File","schema":{"type":"file"}}},"x-appwrite":{"method":"getFileView","weight":140,"cookies":false,"type":"location","demo":"storage\/get-file-view.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/storage\/get-file-view.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"files.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"fileId","description":"File unique ID.","required":true,"type":"string","x-example":"[FILE_ID]","in":"path"}]}},"\/teams":{"get":{"summary":"List Teams","operationId":"teamsList","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Get a list of all the current user teams. You can use the query params to filter your results. On admin mode, this endpoint will return a list of all of the project's teams. [Learn more about different API modes](\/docs\/admin).","responses":{"200":{"description":"Teams List","schema":{"$ref":"#\/definitions\/teamList"}}},"x-appwrite":{"method":"list","weight":144,"cookies":false,"type":"","demo":"teams\/list.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/list-teams.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create Team","operationId":"teamsCreate","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Create a new team. The user who creates the team will automatically be assigned as the owner of the team. The team owner can invite new members, who will be able add new owners and update or delete the team from your project.","responses":{"201":{"description":"Team","schema":{"$ref":"#\/definitions\/team"}}},"x-appwrite":{"method":"create","weight":143,"cookies":false,"type":"","demo":"teams\/create.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/create-team.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Team name. Max length: 128 chars.","default":null,"x-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](\/docs\/permissions). Max length for each role is 32 chars.","default":["owner"],"x-example":null,"items":{"type":"string"}}},"required":["name"]}}]}},"\/teams\/{teamId}":{"get":{"summary":"Get Team","operationId":"teamsGet","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Get a team by its unique ID. All team members have read access for this resource.","responses":{"200":{"description":"Team","schema":{"$ref":"#\/definitions\/team"}}},"x-appwrite":{"method":"get","weight":145,"cookies":false,"type":"","demo":"teams\/get.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/get-team.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"}]},"put":{"summary":"Update Team","operationId":"teamsUpdate","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Update a team by its unique ID. Only team owners have write access for this resource.","responses":{"200":{"description":"Team","schema":{"$ref":"#\/definitions\/team"}}},"x-appwrite":{"method":"update","weight":146,"cookies":false,"type":"","demo":"teams\/update.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/update-team.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"Team name. Max length: 128 chars.","default":null,"x-example":"[NAME]"}},"required":["name"]}}]},"delete":{"summary":"Delete Team","operationId":"teamsDelete","consumes":["application\/json"],"produces":[],"tags":["teams"],"description":"Delete a team by its unique ID. Only team owners have write access for this resource.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"delete","weight":147,"cookies":false,"type":"","demo":"teams\/delete.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/delete-team.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"}]}},"\/teams\/{teamId}\/memberships":{"get":{"summary":"Get Team Memberships","operationId":"teamsGetMemberships","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Get a team members by the team unique ID. All team members have read access for this list of resources.","responses":{"200":{"description":"Memberships List","schema":{"$ref":"#\/definitions\/membershipList"}}},"x-appwrite":{"method":"getMemberships","weight":150,"cookies":false,"type":"","demo":"teams\/get-memberships.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/get-team-members.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.read","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create Team Membership","operationId":"teamsCreateMembership","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Use this endpoint to invite a new member to join your team. If initiated from Client SDK, an email with a link to join the team will be sent to the new member's email address if the member doesn't exist in the project it will be created automatically. If initiated from server side SDKs, new member will automatically be added to the team.\n\nUse the 'URL' parameter to redirect the user from the invitation email back to your app. When the user is redirected, use the [Update Team Membership Status](\/docs\/client\/teams#teamsUpdateMembershipStatus) endpoint to allow the user to accept the invitation to the team. While calling from side SDKs the redirect url can be empty string.\n\nPlease note that in order to avoid a [Redirect Attacks](https:\/\/github.com\/OWASP\/CheatSheetSeries\/blob\/master\/cheatsheets\/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md) the only valid redirect URL's are the once from domains you have set when added your platforms in the console interface.","responses":{"201":{"description":"Membership","schema":{"$ref":"#\/definitions\/membership"}}},"x-appwrite":{"method":"createMembership","weight":148,"cookies":false,"type":"","demo":"teams\/create-membership.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/create-team-membership.md","rate-limit":10,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"New team member email.","default":null,"x-example":"email@example.com"},"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](\/docs\/permissions). Max length for each role is 32 chars.","default":null,"x-example":null,"items":{"type":"string"}},"url":{"type":"string","description":"URL to redirect the user back to your app from the invitation 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.","default":null,"x-example":"https:\/\/example.com"},"name":{"type":"string","description":"New team member name. Max length: 128 chars.","default":"","x-example":"[NAME]"}},"required":["email","roles","url"]}}]}},"\/teams\/{teamId}\/memberships\/{membershipId}":{"patch":{"summary":"Update Membership Roles","operationId":"teamsUpdateMembershipRoles","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"","responses":{"200":{"description":"Membership","schema":{"$ref":"#\/definitions\/membership"}}},"x-appwrite":{"method":"updateMembershipRoles","weight":149,"cookies":false,"type":"","demo":"teams\/update-membership-roles.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/update-team-membership-roles.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"membershipId","description":"Membership ID.","required":true,"type":"string","x-example":"[MEMBERSHIP_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"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](\/docs\/permissions). Max length for each role is 32 chars.","default":null,"x-example":null,"items":{"type":"string"}}},"required":["roles"]}}]},"delete":{"summary":"Delete Team Membership","operationId":"teamsDeleteMembership","consumes":["application\/json"],"produces":[],"tags":["teams"],"description":"This endpoint allows a user to leave a team or for a team owner to delete the membership of any other team member. You can also use this endpoint to delete a user membership even if it is not accepted.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteMembership","weight":152,"cookies":false,"type":"","demo":"teams\/delete-membership.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/delete-team-membership.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"teams.write","platforms":["client","server","server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"membershipId","description":"Membership ID.","required":true,"type":"string","x-example":"[MEMBERSHIP_ID]","in":"path"}]}},"\/teams\/{teamId}\/memberships\/{membershipId}\/status":{"patch":{"summary":"Update Team Membership Status","operationId":"teamsUpdateMembershipStatus","consumes":["application\/json"],"produces":["application\/json"],"tags":["teams"],"description":"Use this endpoint to allow a user to accept an invitation to join a team after being redirected back to your app from the invitation email recieved by the user.","responses":{"200":{"description":"Membership","schema":{"$ref":"#\/definitions\/membership"}}},"x-appwrite":{"method":"updateMembershipStatus","weight":151,"cookies":false,"type":"","demo":"teams\/update-membership-status.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/teams\/update-team-membership-status.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"public","platforms":["client","server"],"packaging":false,"auth":{"Project":[],"JWT":[]}},"security":[{"Project":[],"JWT":[]}],"parameters":[{"name":"teamId","description":"Team unique ID.","required":true,"type":"string","x-example":"[TEAM_ID]","in":"path"},{"name":"membershipId","description":"Membership ID.","required":true,"type":"string","x-example":"[MEMBERSHIP_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"userId":{"type":"string","description":"User unique ID.","default":null,"x-example":"[USER_ID]"},"secret":{"type":"string","description":"Secret key.","default":null,"x-example":"[SECRET]"}},"required":["userId","secret"]}}]}},"\/users":{"get":{"summary":"List Users","operationId":"usersList","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Get a list of all the project's users. You can use the query params to filter your results.","responses":{"200":{"description":"Users List","schema":{"$ref":"#\/definitions\/userList"}}},"x-appwrite":{"method":"list","weight":154,"cookies":false,"type":"","demo":"users\/list.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/list-users.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"search","description":"Search term to filter your list results. Max length: 256 chars.","required":false,"type":"string","x-example":"[SEARCH]","default":"","in":"query"},{"name":"limit","description":"Results limit value. By default will return maximum 25 results. Maximum of 100 results allowed per request.","required":false,"type":"integer","format":"int32","x-example":0,"default":25,"in":"query"},{"name":"offset","description":"Results offset. The default value is 0. Use this param to manage pagination.","required":false,"type":"integer","format":"int32","x-example":0,"default":0,"in":"query"},{"name":"orderType","description":"Order result by ASC or DESC order.","required":false,"type":"string","x-example":"ASC","default":"ASC","in":"query"}]},"post":{"summary":"Create User","operationId":"usersCreate","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Create a new user.","responses":{"201":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"create","weight":153,"cookies":false,"type":"","demo":"users\/create.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/create-user.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"User email.","default":null,"x-example":"email@example.com"},"password":{"type":"string","description":"User password. Must be between 6 to 32 chars.","default":null,"x-example":"password"},"name":{"type":"string","description":"User name. Max length: 128 chars.","default":"","x-example":"[NAME]"}},"required":["email","password"]}}]}},"\/users\/{userId}":{"get":{"summary":"Get User","operationId":"usersGet","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Get a user by its unique ID.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"get","weight":155,"cookies":false,"type":"","demo":"users\/get.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/get-user.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"}]},"delete":{"summary":"Delete User","operationId":"usersDelete","consumes":["application\/json"],"produces":[],"tags":["users"],"description":"Delete a user by its unique ID.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"delete","weight":167,"cookies":false,"type":"","demo":"users\/delete.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/delete.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"}]}},"\/users\/{userId}\/email":{"patch":{"summary":"Update Email","operationId":"usersUpdateEmail","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Update the user email by its unique ID.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updateEmail","weight":163,"cookies":false,"type":"","demo":"users\/update-email.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/update-user-email.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"email":{"type":"string","description":"User email.","default":null,"x-example":"email@example.com"}},"required":["email"]}}]}},"\/users\/{userId}\/logs":{"get":{"summary":"Get User Logs","operationId":"usersGetLogs","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Get a user activity logs list by its unique ID.","responses":{"200":{"description":"Logs List","schema":{"$ref":"#\/definitions\/logList"}}},"x-appwrite":{"method":"getLogs","weight":158,"cookies":false,"type":"","demo":"users\/get-logs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/get-user-logs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"}]}},"\/users\/{userId}\/name":{"patch":{"summary":"Update Name","operationId":"usersUpdateName","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Update the user name by its unique ID.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updateName","weight":161,"cookies":false,"type":"","demo":"users\/update-name.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/update-user-name.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"name":{"type":"string","description":"User name. Max length: 128 chars.","default":null,"x-example":"[NAME]"}},"required":["name"]}}]}},"\/users\/{userId}\/password":{"patch":{"summary":"Update Password","operationId":"usersUpdatePassword","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Update the user password by its unique ID.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updatePassword","weight":162,"cookies":false,"type":"","demo":"users\/update-password.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/update-user-password.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"password":{"type":"string","description":"New user password. Must be between 6 to 32 chars.","default":null,"x-example":"password"}},"required":["password"]}}]}},"\/users\/{userId}\/prefs":{"get":{"summary":"Get User Preferences","operationId":"usersGetPrefs","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Get the user preferences by its unique ID.","responses":{"200":{"description":"Preferences","schema":{"$ref":"#\/definitions\/preferences"}}},"x-appwrite":{"method":"getPrefs","weight":156,"cookies":false,"type":"","demo":"users\/get-prefs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/get-user-prefs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"}]},"patch":{"summary":"Update User Preferences","operationId":"usersUpdatePrefs","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Update the user preferences by its unique ID. You can pass only the specific settings you wish to update.","responses":{"200":{"description":"Preferences","schema":{"$ref":"#\/definitions\/preferences"}}},"x-appwrite":{"method":"updatePrefs","weight":164,"cookies":false,"type":"","demo":"users\/update-prefs.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/update-user-prefs.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"prefs":{"type":"object","description":"Prefs key-value JSON object.","default":null,"x-example":"{}"}},"required":["prefs"]}}]}},"\/users\/{userId}\/sessions":{"get":{"summary":"Get User Sessions","operationId":"usersGetSessions","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Get the user sessions list by its unique ID.","responses":{"200":{"description":"Sessions List","schema":{"$ref":"#\/definitions\/sessionList"}}},"x-appwrite":{"method":"getSessions","weight":157,"cookies":false,"type":"","demo":"users\/get-sessions.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/get-user-sessions.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.read","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"}]},"delete":{"summary":"Delete User Sessions","operationId":"usersDeleteSessions","consumes":["application\/json"],"produces":[],"tags":["users"],"description":"Delete all user's sessions by using the user's unique ID.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteSessions","weight":166,"cookies":false,"type":"","demo":"users\/delete-sessions.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/delete-user-sessions.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"}]}},"\/users\/{userId}\/sessions\/{sessionId}":{"delete":{"summary":"Delete User Session","operationId":"usersDeleteSession","consumes":["application\/json"],"produces":[],"tags":["users"],"description":"Delete a user sessions by its unique ID.","responses":{"204":{"description":"No content"}},"x-appwrite":{"method":"deleteSession","weight":165,"cookies":false,"type":"","demo":"users\/delete-session.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/delete-user-session.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"},{"name":"sessionId","description":"User unique session ID.","required":true,"type":"string","x-example":"[SESSION_ID]","in":"path"}]}},"\/users\/{userId}\/status":{"patch":{"summary":"Update User Status","operationId":"usersUpdateStatus","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Update the user status by its unique ID.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updateStatus","weight":159,"cookies":false,"type":"","demo":"users\/update-status.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/update-user-status.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"status":{"type":"integer","description":"User Status code. To activate the user pass 1, to block the user pass 2 and for disabling the user pass 0","default":null,"x-example":1}},"required":["status"]}}]}},"\/users\/{userId}\/verification":{"patch":{"summary":"Update Email Verification","operationId":"usersUpdateVerification","consumes":["application\/json"],"produces":["application\/json"],"tags":["users"],"description":"Update the user email verification status by its unique ID.","responses":{"200":{"description":"User","schema":{"$ref":"#\/definitions\/user"}}},"x-appwrite":{"method":"updateVerification","weight":160,"cookies":false,"type":"","demo":"users\/update-verification.md","edit":"https:\/\/github.com\/appwrite\/appwrite\/edit\/master\/docs\/references\/users\/update-user-verification.md","rate-limit":0,"rate-time":3600,"rate-key":"url:{url},ip:{ip}","scope":"users.write","platforms":["server"],"packaging":false,"auth":{"Project":[],"Key":[]}},"security":[{"Project":[],"Key":[]}],"parameters":[{"name":"userId","description":"User unique ID.","required":true,"type":"string","x-example":"[USER_ID]","in":"path"},{"name":"payload","in":"body","schema":{"type":"object","properties":{"emailVerification":{"type":"boolean","description":"User Email Verification Status.","default":null,"x-example":false}},"required":["emailVerification"]}}]}}},"tags":[{"name":"account","description":"The Account service allows you to authenticate and manage a user account."},{"name":"avatars","description":"The Avatars service aims to help you complete everyday tasks related to your app image, icons, and avatars."},{"name":"database","description":"The Database service allows you to create structured collections of documents, query and filter lists of documents"},{"name":"locale","description":"The Locale service allows you to customize your app based on your users' location."},{"name":"health","description":"The Health service allows you to both validate and monitor your Appwrite server's health."},{"name":"projects","description":"The Project service allows you to manage all the projects in your Appwrite server."},{"name":"storage","description":"The Storage service allows you to manage your project files."},{"name":"teams","description":"The Teams service allows you to group users of your project and to enable them to share read and write access to your project resources"},{"name":"users","description":"The Users service allows you to manage your project users."},{"name":"functions","description":"The Functions Service allows you view, create and manage your Cloud Functions."}],"definitions":{"collectionList":{"description":"Collections List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"collections":{"type":"array","description":"List of collections.","items":{"type":"object","$ref":"#\/definitions\/collection"},"x-example":""}},"required":["sum","collections"]},"documentList":{"description":"Documents List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"documents":{"type":"array","description":"List of documents.","items":{"type":"object","$ref":"#\/definitions\/document"},"x-example":""}},"required":["sum","documents"]},"userList":{"description":"Users List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"users":{"type":"array","description":"List of users.","items":{"type":"object","$ref":"#\/definitions\/user"},"x-example":""}},"required":["sum","users"]},"sessionList":{"description":"Sessions List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"sessions":{"type":"array","description":"List of sessions.","items":{"type":"object","$ref":"#\/definitions\/session"},"x-example":""}},"required":["sum","sessions"]},"logList":{"description":"Logs List","type":"object","properties":{"logs":{"type":"array","description":"List of logs.","items":{"type":"object","$ref":"#\/definitions\/log"},"x-example":""}},"required":["logs"]},"fileList":{"description":"Files List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"files":{"type":"array","description":"List of files.","items":{"type":"object","$ref":"#\/definitions\/file"},"x-example":""}},"required":["sum","files"]},"teamList":{"description":"Teams List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"teams":{"type":"array","description":"List of teams.","items":{"type":"object","$ref":"#\/definitions\/team"},"x-example":""}},"required":["sum","teams"]},"membershipList":{"description":"Memberships List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"memberships":{"type":"array","description":"List of memberships.","items":{"type":"object","$ref":"#\/definitions\/membership"},"x-example":""}},"required":["sum","memberships"]},"functionList":{"description":"Functions List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"functions":{"type":"array","description":"List of functions.","items":{"type":"object","$ref":"#\/definitions\/function"},"x-example":""}},"required":["sum","functions"]},"tagList":{"description":"Tags List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"tags":{"type":"array","description":"List of tags.","items":{"type":"object","$ref":"#\/definitions\/tag"},"x-example":""}},"required":["sum","tags"]},"executionList":{"description":"Executions List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"executions":{"type":"array","description":"List of executions.","items":{"type":"object","$ref":"#\/definitions\/execution"},"x-example":""}},"required":["sum","executions"]},"countryList":{"description":"Countries List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"countries":{"type":"array","description":"List of countries.","items":{"type":"object","$ref":"#\/definitions\/country"},"x-example":""}},"required":["sum","countries"]},"continentList":{"description":"Continents List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"continents":{"type":"array","description":"List of continents.","items":{"type":"object","$ref":"#\/definitions\/continent"},"x-example":""}},"required":["sum","continents"]},"languageList":{"description":"Languages List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"languages":{"type":"array","description":"List of languages.","items":{"type":"object","$ref":"#\/definitions\/language"},"x-example":""}},"required":["sum","languages"]},"currencyList":{"description":"Currencies List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"currencies":{"type":"array","description":"List of currencies.","items":{"type":"object","$ref":"#\/definitions\/currency"},"x-example":""}},"required":["sum","currencies"]},"phoneList":{"description":"Phones List","type":"object","properties":{"sum":{"type":"integer","description":"Total number of items available on the server.","x-example":5,"format":"int32"},"phones":{"type":"array","description":"List of phones.","items":{"type":"object","$ref":"#\/definitions\/phone"},"x-example":""}},"required":["sum","phones"]},"permissions":{"description":"Permissions","type":"object","properties":{"read":{"type":"array","description":"Read permissions.","items":{"type":"string"},"x-example":"user:5e5ea5c16897e"},"write":{"type":"array","description":"Write permissions.","items":{"type":"string"},"x-example":"user:5e5ea5c16897e"}},"required":["read","write"]},"collection":{"description":"Collection","type":"object","properties":{"$id":{"type":"string","description":"Collection ID.","x-example":"5e5ea5c16897e"},"$permissions":{"type":"object","description":"Collection permissions.","x-example":{},"items":{"type":"object","$ref":"#\/definitions\/permissions"}},"name":{"type":"string","description":"Collection name.","x-example":"Movies"},"dateCreated":{"type":"integer","description":"Collection creation date in Unix timestamp.","x-example":1592981250,"format":"int32"},"dateUpdated":{"type":"integer","description":"Collection creation date in Unix timestamp.","x-example":1592981550,"format":"int32"},"rules":{"type":"array","description":"Collection rules.","items":{"type":"object","$ref":"#\/definitions\/rule"},"x-example":""}},"required":["$id","$permissions","name","dateCreated","dateUpdated","rules"]},"document":{"description":"Document","type":"object","properties":{"$id":{"type":"string","description":"Document ID.","x-example":"5e5ea5c16897e"},"$collection":{"type":"string","description":"Collection ID.","x-example":"5e5ea5c15117e"},"$permissions":{"type":"object","description":"Document permissions.","x-example":{},"items":{"type":"object","$ref":"#\/definitions\/permissions"}}},"additionalProperties":true,"required":["$id","$collection","$permissions"]},"rule":{"description":"Rule","type":"object","properties":{"$id":{"type":"string","description":"Rule ID.","x-example":"5e5ea5c16897e"},"$collection":{"type":"string","description":"Rule Collection.","x-example":"5e5e66c16897e"},"type":{"type":"string","description":"Rule type. Possible values: ","x-example":"title"},"key":{"type":"string","description":"Rule key.","x-example":"title"},"label":{"type":"string","description":"Rule label.","x-example":"Title"},"default":{"type":"string","description":"Rule default value.","x-example":"Movie Name"},"array":{"type":"boolean","description":"Is array?","x-example":false},"required":{"type":"boolean","description":"Is required?","x-example":true},"list":{"type":"array","description":"List of allowed values","items":{"type":"string"},"x-example":"5e5ea5c168099"}},"required":["$id","$collection","type","key","label","default","array","required","list"]},"log":{"description":"Log","type":"object","properties":{"event":{"type":"string","description":"Event name.","x-example":"account.sessions.create"},"ip":{"type":"string","description":"IP session in use when the session was created.","x-example":"127.0.0.1"},"time":{"type":"integer","description":"Log creation time in Unix timestamp.","x-example":1592981250,"format":"int32"},"osCode":{"type":"string","description":"Operating system code name. View list of [available options](https:\/\/github.com\/appwrite\/appwrite\/blob\/master\/docs\/lists\/os.json).","x-example":"Mac"},"osName":{"type":"string","description":"Operating system name.","x-example":"Mac"},"osVersion":{"type":"string","description":"Operating system version.","x-example":"Mac"},"clientType":{"type":"string","description":"Client type.","x-example":"browser"},"clientCode":{"type":"string","description":"Client code name. View list of [available options](https:\/\/github.com\/appwrite\/appwrite\/blob\/master\/docs\/lists\/clients.json).","x-example":"CM"},"clientName":{"type":"string","description":"Client name.","x-example":"Chrome Mobile iOS"},"clientVersion":{"type":"string","description":"Client version.","x-example":"84.0"},"clientEngine":{"type":"string","description":"Client engine name.","x-example":"WebKit"},"clientEngineVersion":{"type":"string","description":"Client engine name.","x-example":"605.1.15"},"deviceName":{"type":"string","description":"Device name.","x-example":"smartphone"},"deviceBrand":{"type":"string","description":"Device brand name.","x-example":"Google"},"deviceModel":{"type":"string","description":"Device model name.","x-example":"Nexus 5"},"countryCode":{"type":"string","description":"Country two-character ISO 3166-1 alpha code.","x-example":"US"},"countryName":{"type":"string","description":"Country name.","x-example":"United States"}},"required":["event","ip","time","osCode","osName","osVersion","clientType","clientCode","clientName","clientVersion","clientEngine","clientEngineVersion","deviceName","deviceBrand","deviceModel","countryCode","countryName"]},"user":{"description":"User","type":"object","properties":{"$id":{"type":"string","description":"User ID.","x-example":"5e5ea5c16897e"},"name":{"type":"string","description":"User name.","x-example":"John Doe"},"registration":{"type":"integer","description":"User registration date in Unix timestamp.","x-example":1592981250,"format":"int32"},"status":{"type":"integer","description":"User status. 0 for Unactivated, 1 for active and 2 is blocked.","x-example":0,"format":"int32"},"passwordUpdate":{"type":"integer","description":"Unix timestamp of the most recent password update","x-example":1592981250,"format":"int32"},"email":{"type":"string","description":"User email address.","x-example":"john@appwrite.io"},"emailVerification":{"type":"boolean","description":"Email verification status.","x-example":true},"prefs":{"type":"object","description":"User preferences as a key-value object","x-example":{"theme":"pink","timezone":"UTC"},"items":{"type":"object","$ref":"#\/definitions\/preferences"}}},"required":["$id","name","registration","status","passwordUpdate","email","emailVerification","prefs"]},"preferences":{"description":"Preferences","type":"object","additionalProperties":true},"session":{"description":"Session","type":"object","properties":{"$id":{"type":"string","description":"Session ID.","x-example":"5e5ea5c16897e"},"userId":{"type":"string","description":"User ID.","x-example":"5e5bb8c16897e"},"expire":{"type":"integer","description":"Session expiration date in Unix timestamp.","x-example":1592981250,"format":"int32"},"provider":{"type":"string","description":"Session Provider.","x-example":"email"},"providerUid":{"type":"string","description":"Session Provider User ID.","x-example":"user@example.com"},"providerToken":{"type":"string","description":"Session Provider Token.","x-example":"MTQ0NjJkZmQ5OTM2NDE1ZTZjNGZmZjI3"},"ip":{"type":"string","description":"IP in use when the session was created.","x-example":"127.0.0.1"},"osCode":{"type":"string","description":"Operating system code name. View list of [available options](https:\/\/github.com\/appwrite\/appwrite\/blob\/master\/docs\/lists\/os.json).","x-example":"Mac"},"osName":{"type":"string","description":"Operating system name.","x-example":"Mac"},"osVersion":{"type":"string","description":"Operating system version.","x-example":"Mac"},"clientType":{"type":"string","description":"Client type.","x-example":"browser"},"clientCode":{"type":"string","description":"Client code name. View list of [available options](https:\/\/github.com\/appwrite\/appwrite\/blob\/master\/docs\/lists\/clients.json).","x-example":"CM"},"clientName":{"type":"string","description":"Client name.","x-example":"Chrome Mobile iOS"},"clientVersion":{"type":"string","description":"Client version.","x-example":"84.0"},"clientEngine":{"type":"string","description":"Client engine name.","x-example":"WebKit"},"clientEngineVersion":{"type":"string","description":"Client engine name.","x-example":"605.1.15"},"deviceName":{"type":"string","description":"Device name.","x-example":"smartphone"},"deviceBrand":{"type":"string","description":"Device brand name.","x-example":"Google"},"deviceModel":{"type":"string","description":"Device model name.","x-example":"Nexus 5"},"countryCode":{"type":"string","description":"Country two-character ISO 3166-1 alpha code.","x-example":"US"},"countryName":{"type":"string","description":"Country name.","x-example":"United States"},"current":{"type":"boolean","description":"Returns true if this the current user session.","x-example":true}},"required":["$id","userId","expire","provider","providerUid","providerToken","ip","osCode","osName","osVersion","clientType","clientCode","clientName","clientVersion","clientEngine","clientEngineVersion","deviceName","deviceBrand","deviceModel","countryCode","countryName","current"]},"token":{"description":"Token","type":"object","properties":{"$id":{"type":"string","description":"Token ID.","x-example":"bb8ea5c16897e"},"userId":{"type":"string","description":"User ID.","x-example":"5e5ea5c168bb8"},"secret":{"type":"string","description":"Token secret key. This will return an empty string unless the response is returned using an API key or as part of a webhook payload.","x-example":""},"expire":{"type":"integer","description":"Token expiration date in Unix timestamp.","x-example":1592981250,"format":"int32"}},"required":["$id","userId","secret","expire"]},"locale":{"description":"Locale","type":"object","properties":{"ip":{"type":"string","description":"User IP address.","x-example":"127.0.0.1"},"countryCode":{"type":"string","description":"Country code in [ISO 3166-1](http:\/\/en.wikipedia.org\/wiki\/ISO_3166-1) two-character format","x-example":"US"},"country":{"type":"string","description":"Country name. This field support localization.","x-example":"United States"},"continentCode":{"type":"string","description":"Continent code. A two character continent code \"AF\" for Africa, \"AN\" for Antarctica, \"AS\" for Asia, \"EU\" for Europe, \"NA\" for North America, \"OC\" for Oceania, and \"SA\" for South America.","x-example":"NA"},"continent":{"type":"string","description":"Continent name. This field support localization.","x-example":"North America"},"eu":{"type":"boolean","description":"True if country is part of the Europian Union.","x-example":false},"currency":{"type":"string","description":"Currency code in [ISO 4217-1](http:\/\/en.wikipedia.org\/wiki\/ISO_4217) three-character format","x-example":"USD"}},"required":["ip","countryCode","country","continentCode","continent","eu","currency"]},"file":{"description":"File","type":"object","properties":{"$id":{"type":"string","description":"File ID.","x-example":"5e5ea5c16897e"},"$permissions":{"type":"object","description":"File permissions.","x-example":{},"items":{"type":"object","$ref":"#\/definitions\/permissions"}},"name":{"type":"string","description":"File name.","x-example":"Pink.png"},"dateCreated":{"type":"integer","description":"File creation date in Unix timestamp.","x-example":1592981250,"format":"int32"},"signature":{"type":"string","description":"File MD5 signature.","x-example":"5d529fd02b544198ae075bd57c1762bb"},"mimeType":{"type":"string","description":"File mime type.","x-example":"image\/png"},"sizeOriginal":{"type":"integer","description":"File original size in bytes.","x-example":17890,"format":"int32"}},"required":["$id","$permissions","name","dateCreated","signature","mimeType","sizeOriginal"]},"team":{"description":"Team","type":"object","properties":{"$id":{"type":"string","description":"Team ID.","x-example":"5e5ea5c16897e"},"name":{"type":"string","description":"Team name.","x-example":"VIP"},"dateCreated":{"type":"integer","description":"Team creation date in Unix timestamp.","x-example":1592981250,"format":"int32"},"sum":{"type":"integer","description":"Total sum of team members.","x-example":7,"format":"int32"}},"required":["$id","name","dateCreated","sum"]},"membership":{"description":"Membership","type":"object","properties":{"$id":{"type":"string","description":"Membership ID.","x-example":"5e5ea5c16897e"},"userId":{"type":"string","description":"User ID.","x-example":"5e5ea5c16897e"},"teamId":{"type":"string","description":"Team ID.","x-example":"5e5ea5c16897e"},"name":{"type":"string","description":"User name.","x-example":"VIP"},"email":{"type":"string","description":"User email address.","x-example":"john@appwrite.io"},"invited":{"type":"integer","description":"Date, the user has been invited to join the team in Unix timestamp.","x-example":1592981250,"format":"int32"},"joined":{"type":"integer","description":"Date, the user has accepted the invitation to join the team in Unix timestamp.","x-example":1592981250,"format":"int32"},"confirm":{"type":"boolean","description":"User confirmation status, true if the user has joined the team or false otherwise.","x-example":false},"roles":{"type":"array","description":"User list of roles","items":{"type":"string"},"x-example":"admin"}},"required":["$id","userId","teamId","name","email","invited","joined","confirm","roles"]},"function":{"description":"Function","type":"object","properties":{"$id":{"type":"string","description":"Function ID.","x-example":"5e5ea5c16897e"},"$permissions":{"type":"object","description":"Function permissions.","x-example":{},"items":{"type":"object","$ref":"#\/definitions\/permissions"}},"name":{"type":"string","description":"Function name.","x-example":"My Function"},"dateCreated":{"type":"integer","description":"Function creation date in Unix timestamp.","x-example":1592981250,"format":"int32"},"dateUpdated":{"type":"integer","description":"Function update date in Unix timestamp.","x-example":1592981257,"format":"int32"},"status":{"type":"string","description":"Function status. Possible values: disabled, enabled","x-example":"enabled"},"runtime":{"type":"string","description":"Function execution runtime.","x-example":"python-3.8"},"tag":{"type":"string","description":"Function active tag ID.","x-example":"5e5ea5c16897e"},"vars":{"type":"string","description":"Function environment variables.","x-example":{"key":"value"}},"events":{"type":"array","description":"Function trigger events.","items":{"type":"string"},"x-example":"account.create"},"schedule":{"type":"string","description":"Function execution schedult in CRON format.","x-example":"5 4 * * *"},"scheduleNext":{"type":"integer","description":"Function next scheduled execution date in Unix timestamp.","x-example":1592981292,"format":"int32"},"schedulePrevious":{"type":"integer","description":"Function next scheduled execution date in Unix timestamp.","x-example":1592981237,"format":"int32"},"timeout":{"type":"integer","description":"Function execution timeout in seconds.","x-example":1592981237,"format":"int32"}},"required":["$id","$permissions","name","dateCreated","dateUpdated","status","runtime","tag","vars","events","schedule","scheduleNext","schedulePrevious","timeout"]},"tag":{"description":"Tag","type":"object","properties":{"$id":{"type":"string","description":"Tag ID.","x-example":"5e5ea5c16897e"},"functionId":{"type":"string","description":"Function ID.","x-example":"5e5ea6g16897e"},"dateCreated":{"type":"integer","description":"The tag creation date in Unix timestamp.","x-example":1592981250,"format":"int32"},"command":{"type":"string","description":"The entrypoint command in use to execute the tag code.","x-example":"enabled"},"size":{"type":"string","description":"The code size in bytes.","x-example":"python-3.8"}},"required":["$id","functionId","dateCreated","command","size"]},"execution":{"description":"Execution","type":"object","properties":{"$id":{"type":"string","description":"Execution ID.","x-example":"5e5ea5c16897e"},"$permissions":{"type":"object","description":"Execution permissions.","x-example":{},"items":{"type":"object","$ref":"#\/definitions\/permissions"}},"functionId":{"type":"string","description":"Function ID.","x-example":"5e5ea6g16897e"},"dateCreated":{"type":"integer","description":"The execution creation date in Unix timestamp.","x-example":1592981250,"format":"int32"},"trigger":{"type":"string","description":"The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.","x-example":"http"},"status":{"type":"string","description":"The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.","x-example":"processing"},"exitCode":{"type":"integer","description":"The script exit code.","x-example":0,"format":"int32"},"stdout":{"type":"string","description":"The script stdout output string. Logs the last 4,000 characters of the execution stdout output.","x-example":""},"stderr":{"type":"string","description":"The script stderr output string. Logs the last 4,000 characters of the execution stderr output","x-example":""},"time":{"type":"number","description":"The script execution time in seconds.","x-example":0.4,"format":"float"}},"required":["$id","$permissions","functionId","dateCreated","trigger","status","exitCode","stdout","stderr","time"]},"country":{"description":"Country","type":"object","properties":{"name":{"type":"string","description":"Country name.","x-example":"United States"},"code":{"type":"string","description":"Country two-character ISO 3166-1 alpha code.","x-example":"US"}},"required":["name","code"]},"continent":{"description":"Continent","type":"object","properties":{"name":{"type":"string","description":"Continent name.","x-example":"Europe"},"code":{"type":"string","description":"Continent two letter code.","x-example":"EU"}},"required":["name","code"]},"language":{"description":"Language","type":"object","properties":{"name":{"type":"string","description":"Language name.","x-example":"Italian"},"code":{"type":"string","description":"Language two-character ISO 639-1 codes.","x-example":"it"},"nativeName":{"type":"string","description":"Language native name.","x-example":"Italiano"}},"required":["name","code","nativeName"]},"currency":{"description":"Currency","type":"object","properties":{"symbol":{"type":"string","description":"Currency symbol.","x-example":"$"},"name":{"type":"string","description":"Currency name.","x-example":"US dollar"},"symbolNative":{"type":"string","description":"Currency native symbol.","x-example":"$"},"decimalDigits":{"type":"integer","description":"Number of decimal digits.","x-example":2,"format":"int32"},"rounding":{"type":"number","description":"Currency digit rounding.","x-example":0,"format":"float"},"code":{"type":"string","description":"Currency code in [ISO 4217-1](http:\/\/en.wikipedia.org\/wiki\/ISO_4217) three-character format.","x-example":"USD"},"namePlural":{"type":"string","description":"Currency plural name","x-example":"US dollars"}},"required":["symbol","name","symbolNative","decimalDigits","rounding","code","namePlural"]},"phone":{"description":"Phone","type":"object","properties":{"code":{"type":"string","description":"Phone code.","x-example":"+1"},"countryCode":{"type":"string","description":"Country two-character ISO 3166-1 alpha code.","x-example":"US"},"countryName":{"type":"string","description":"Country name.","x-example":"United States"}},"required":["code","countryCode","countryName"]}},"externalDocs":{"description":"Full API docs, specs and tutorials","url":"https:\/\/appwrite.io\/docs"}} \ No newline at end of file diff --git a/app/config/storage/mimes.php b/app/config/storage/mimes.php index 242a990b8d..7995ef368a 100644 --- a/app/config/storage/mimes.php +++ b/app/config/storage/mimes.php @@ -16,6 +16,20 @@ return [ 'video/quicktime', 'video/x-msvideo', 'video/x-ms-wmv', + + // Audio Files + + 'audio/basic', // au snd RFC 2046 + 'auido/L24', // Linear PCM RFC 3190 + 'audio/mid', // mid rmi + 'audio/mpeg', // mp3 RFC 3003 + 'audio/mp4', // mp4 audio + 'audio/x-aiff', // aif aifc aiff + 'audio/x-mpegurl', // m3u + 'audio/vnd.rn-realaudio', // ra ram + 'audio/ogg', // Ogg Vorbis RFC 5334 + 'audio/vorbis', // Vorbis RFC 5215 + 'audio/vnd.wav', // wav RFC 2361 // Microsoft Word 'application/msword', diff --git a/app/controllers/api/health.php b/app/controllers/api/health.php index cbccb8f59c..0b8e91b3b5 100644 --- a/app/controllers/api/health.php +++ b/app/controllers/api/health.php @@ -46,9 +46,20 @@ App::get('/v1/health/db') ->action(function ($response, $utopia) { /** @var Appwrite\Utopia\Response $response */ /** @var Utopia\App $utopia */ - $utopia->getResource('db'); + try { + $db = $utopia->getResource('db'); /* @var $db PDO */ - $response->json(['status' => 'OK']); + // Run a small test to check the connection + $statement = $db->prepare("SELECT 1;"); + + $statement->closeCursor(); + + $statement->execute(); + } catch (Exception $_e) { + throw new Exception('Database is not available', 500); + } + + return $response->json(['status' => 'OK']); }); App::get('/v1/health/cache') @@ -64,9 +75,14 @@ App::get('/v1/health/cache') ->action(function ($response, $utopia) { /** @var Appwrite\Utopia\Response $response */ /** @var Utopia\App $utopia */ - $utopia->getResource('cache'); + /** @var Redis */ + $redis = $utopia->getResource('cache'); - $response->json(['status' => 'OK']); + if ($redis->ping(true)) { + return $response->json(['status' => 'OK']); + } else { + throw new Exception('Cache is not available', 500); + } }); App::get('/v1/health/time') @@ -179,7 +195,7 @@ App::get('/v1/health/queue/usage') }, ['response']); App::get('/v1/health/queue/certificates') - ->desc('Get Certificate Queue') + ->desc('Get Certificates Queue') ->groups(['api', 'health']) ->label('scope', 'health.read') ->label('sdk.auth', [APP_AUTH_TYPE_KEY]) diff --git a/app/controllers/api/projects.php b/app/controllers/api/projects.php index 2677ae3cfe..ba21081031 100644 --- a/app/controllers/api/projects.php +++ b/app/controllers/api/projects.php @@ -1314,9 +1314,9 @@ App::post('/v1/projects/:projectId/platforms') ->label('sdk.response.type', Response::CONTENT_TYPE_JSON) ->label('sdk.response.model', Response::MODEL_PLATFORM) ->param('projectId', null, new UID(), 'Project unique ID.') - ->param('type', null, new WhiteList(['web', 'flutter-ios', 'flutter-android', 'flutter-linux', 'flutter-macos', 'flutter-windows', 'ios', 'android', 'unity'], true), 'Platform type.') + ->param('type', null, new WhiteList(['web', 'flutter-ios', 'flutter-android', 'flutter-linux', 'flutter-macos', 'flutter-windows', 'apple-ios', 'apple-macos', 'apple-watchos', 'apple-tvos', 'android', 'unity'], true), 'Platform type.') ->param('name', null, new Text(128), 'Platform name. Max length: 128 chars.') - ->param('key', '', new Text(256), 'Package name for android or bundle ID for iOS. Max length: 256 chars.', true) + ->param('key', '', new Text(256), 'Package name for Android or bundle ID for iOS or macOS. Max length: 256 chars.', true) ->param('store', '', new Text(256), 'App store or Google Play store ID. Max length: 256 chars.', true) ->param('hostname', '', new Text(256), 'Platform client hostname. Max length: 256 chars.', true) ->inject('response') diff --git a/app/controllers/api/teams.php b/app/controllers/api/teams.php index f7f7e2cb7e..128a03c2eb 100644 --- a/app/controllers/api/teams.php +++ b/app/controllers/api/teams.php @@ -262,9 +262,9 @@ App::post('/v1/teams/:teamId/memberships') ->label('abuse-limit', 10) ->param('teamId', '', new UID(), 'Team unique ID.') ->param('email', '', new Email(), 'New team member email.') - ->param('name', '', new Text(128), 'New team member name. Max length: 128 chars.', true) ->param('roles', [], new ArrayList(new Key()), '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](/docs/permissions). Max length for each role is 32 chars.') ->param('url', '', function ($clients) { return new Host($clients); }, 'URL to redirect the user back to your app from the invitation email. Only URLs from hostnames in your project platform list are allowed. This requirement helps to prevent an [open redirect](https://cheatsheetseries.owasp.org/cheatsheets/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.html) attack against your project API.', false, ['clients']) // TODO add our own built-in confirm page + ->param('name', '', new Text(128), 'New team member name. Max length: 128 chars.', true) ->inject('response') ->inject('project') ->inject('user') @@ -272,7 +272,7 @@ App::post('/v1/teams/:teamId/memberships') ->inject('locale') ->inject('audits') ->inject('mails') - ->action(function ($teamId, $email, $name, $roles, $url, $response, $project, $user, $projectDB, $locale, $audits, $mails) { + ->action(function ($teamId, $email, $roles, $url, $name, $response, $project, $user, $projectDB, $locale, $audits, $mails) { /** @var Appwrite\Utopia\Response $response */ /** @var Appwrite\Database\Document $project */ /** @var Appwrite\Database\Document $user */ diff --git a/app/controllers/mock.php b/app/controllers/mock.php index d4076547e0..ffffff1ad6 100644 --- a/app/controllers/mock.php +++ b/app/controllers/mock.php @@ -234,29 +234,74 @@ App::post('/v1/mock/tests/general/upload') ->param('z', null, new ArrayList(new Text(256)), 'Sample array param') ->param('file', [], new File(), 'Sample file param', false) ->inject('request') - ->action(function ($x, $y, $z, $file, $request) { + ->inject('response') + ->action(function ($x, $y, $z, $file, $request, $response) { /** @var Utopia\Swoole\Request $request */ + /** @var Utopia\Swoole\Response $response */ $file = $request->getFiles('file'); - $file['tmp_name'] = (\is_array($file['tmp_name'])) ? $file['tmp_name'] : [$file['tmp_name']]; - $file['name'] = (\is_array($file['name'])) ? $file['name'] : [$file['name']]; - $file['size'] = (\is_array($file['size'])) ? $file['size'] : [$file['size']]; + + $contentRange = $request->getHeader('content-range'); + if(!empty($contentRange)) { + $start = $request->getContentRangeStart(); + $end = $request->getContentRangeEnd(); + $size = $request->getContentRangeSize(); + $id = $request->getHeader('x-appwrite-id', ''); + $file['size'] = (\is_array($file['size'])) ? $file['size'] : [$file['size']]; - foreach ($file['name'] as $i => $name) { - if ($name !== 'file.png') { - throw new Exception('Wrong file name', 400); + if(is_null($start) || is_null($end) || is_null($size)) { + throw new Exception('Invalid content-range header', 400); } - } - foreach ($file['size'] as $i => $size) { - if ($size !== 38756) { - throw new Exception('Wrong file size', 400); + if($start > $end || $end > $size) { + throw new Exception('Invalid content-range header', 400); } - } - foreach ($file['tmp_name'] as $i => $tmpName) { - if (\md5(\file_get_contents($tmpName)) !== 'd80e7e6999a3eb2ae0d631a96fe135a4') { - throw new Exception('Wrong file uploaded', 400); + if($start === 0 && !empty($id)) { + throw new Exception('First chunked request cannot have id header', 400); + } + + if($start !== 0 && $id !== 'newfileid') { + throw new Exception('All chunked request must have id header (except first)', 400); + } + + if($end !== $size && $end-$start+1 !== 5*1024*1024) { + throw new Exception('Chunk size must be 5MB (except last chunk)', 400); + } + + foreach ($file['size'] as $i => $sz) { + if ($end !== $size && $sz !== 5*1024*1024) { + throw new Exception('Wrong chunk size', 400); + } + + if($sz > 5*1024*1024) { + throw new Exception('Chunk size must be 5MB or less', 400); + } + } + if($end !== $size) { + $response->json(['$id'=> 'newfileid']); + } + } else { + $file['tmp_name'] = (\is_array($file['tmp_name'])) ? $file['tmp_name'] : [$file['tmp_name']]; + $file['name'] = (\is_array($file['name'])) ? $file['name'] : [$file['name']]; + $file['size'] = (\is_array($file['size'])) ? $file['size'] : [$file['size']]; + + foreach ($file['name'] as $i => $name) { + if ($name !== 'file.png') { + throw new Exception('Wrong file name', 400); + } + } + + foreach ($file['size'] as $i => $size) { + if ($size !== 38756) { + throw new Exception('Wrong file size', 400); + } + } + + foreach ($file['tmp_name'] as $i => $tmpName) { + if (\md5(\file_get_contents($tmpName)) !== 'd80e7e6999a3eb2ae0d631a96fe135a4') { + throw new Exception('Wrong file uploaded', 400); + } } } }); diff --git a/app/db/DBIP/dbip-country-lite-2021-06.mmdb b/app/db/DBIP/dbip-country-lite-2021-06.mmdb deleted file mode 100644 index 984d200d19..0000000000 Binary files a/app/db/DBIP/dbip-country-lite-2021-06.mmdb and /dev/null differ diff --git a/app/db/DBIP/dbip-country-lite-2021-10.mmdb b/app/db/DBIP/dbip-country-lite-2021-10.mmdb new file mode 100644 index 0000000000..6ef9a3c453 Binary files /dev/null and b/app/db/DBIP/dbip-country-lite-2021-10.mmdb differ diff --git a/app/init.php b/app/init.php index 8c1d6cb455..52cb48093d 100644 --- a/app/init.php +++ b/app/init.php @@ -26,7 +26,6 @@ use Appwrite\Database\Adapter\Redis as RedisAdapter; use Appwrite\Database\Document; use Appwrite\Database\Validator\Authorization; use Appwrite\Event\Event; -use Appwrite\Event\Realtime; use Appwrite\OpenSSL\OpenSSL; use Utopia\App; use Utopia\View; @@ -48,8 +47,8 @@ const APP_USERAGENT = APP_NAME.'-Server v%s. Please report abuse at %s'; const APP_MODE_DEFAULT = 'default'; const APP_MODE_ADMIN = 'admin'; const APP_PAGING_LIMIT = 12; -const APP_CACHE_BUSTER = 160; -const APP_VERSION_STABLE = '0.10.4'; +const APP_CACHE_BUSTER = 170; +const APP_VERSION_STABLE = '0.11.0'; const APP_STORAGE_UPLOADS = '/storage/uploads'; const APP_STORAGE_FUNCTIONS = '/storage/functions'; const APP_STORAGE_CACHE = '/storage/cache'; @@ -65,6 +64,8 @@ const APP_SOCIAL_DISCORD = 'https://appwrite.io/discord'; const APP_SOCIAL_DISCORD_CHANNEL = '564160730845151244'; const APP_SOCIAL_DEV = 'https://dev.to/appwrite'; const APP_SOCIAL_STACKSHARE = 'https://stackshare.io/appwrite'; +const APP_SOCIAL_YOUTUBE = 'https://www.youtube.com/c/appwrite'; + // Deletion Types const DELETE_TYPE_DOCUMENT = 'document'; const DELETE_TYPE_EXECUTIONS = 'executions'; @@ -254,7 +255,7 @@ $register->set('smtp', function () { return $mail; }); $register->set('geodb', function () { - return new Reader(__DIR__.'/db/DBIP/dbip-country-lite-2021-06.mmdb'); + return new Reader(__DIR__.'/db/DBIP/dbip-country-lite-2021-10.mmdb'); }); /* @@ -263,23 +264,30 @@ $register->set('geodb', function () { Locale::$exceptions = false; Locale::setLanguageFromJSON('af', __DIR__.'/config/locale/translations/af.json'); Locale::setLanguageFromJSON('ar', __DIR__.'/config/locale/translations/ar.json'); +Locale::setLanguageFromJSON('as', __DIR__.'/config/locale/translations/as.json'); +Locale::setLanguageFromJSON('az', __DIR__.'/config/locale/translations/az.json'); Locale::setLanguageFromJSON('be', __DIR__.'/config/locale/translations/be.json'); Locale::setLanguageFromJSON('bg', __DIR__.'/config/locale/translations/bg.json'); +Locale::setLanguageFromJSON('bh', __DIR__.'/config/locale/translations/bh.json'); Locale::setLanguageFromJSON('bn', __DIR__.'/config/locale/translations/bn.json'); Locale::setLanguageFromJSON('bs', __DIR__.'/config/locale/translations/bs.json'); Locale::setLanguageFromJSON('ca', __DIR__.'/config/locale/translations/ca.json'); Locale::setLanguageFromJSON('cs', __DIR__.'/config/locale/translations/cs.json'); +Locale::setLanguageFromJSON('da', __DIR__.'/config/locale/translations/da.json'); Locale::setLanguageFromJSON('de', __DIR__.'/config/locale/translations/de.json'); Locale::setLanguageFromJSON('el', __DIR__.'/config/locale/translations/el.json'); Locale::setLanguageFromJSON('en', __DIR__.'/config/locale/translations/en.json'); +Locale::setLanguageFromJSON('eo', __DIR__.'/config/locale/translations/eo.json'); Locale::setLanguageFromJSON('es', __DIR__.'/config/locale/translations/es.json'); Locale::setLanguageFromJSON('fa', __DIR__.'/config/locale/translations/fa.json'); Locale::setLanguageFromJSON('fi', __DIR__.'/config/locale/translations/fi.json'); Locale::setLanguageFromJSON('fo', __DIR__.'/config/locale/translations/fo.json'); Locale::setLanguageFromJSON('fr', __DIR__.'/config/locale/translations/fr.json'); +Locale::setLanguageFromJSON('ga', __DIR__.'/config/locale/translations/ga.json'); Locale::setLanguageFromJSON('gu', __DIR__.'/config/locale/translations/gu.json'); Locale::setLanguageFromJSON('he', __DIR__.'/config/locale/translations/he.json'); Locale::setLanguageFromJSON('hi', __DIR__.'/config/locale/translations/hi.json'); +Locale::setLanguageFromJSON('hr', __DIR__.'/config/locale/translations/hr.json'); Locale::setLanguageFromJSON('hu', __DIR__.'/config/locale/translations/hu.json'); Locale::setLanguageFromJSON('hy', __DIR__.'/config/locale/translations/hy.json'); Locale::setLanguageFromJSON('id', __DIR__.'/config/locale/translations/id.json'); @@ -290,12 +298,16 @@ Locale::setLanguageFromJSON('jv', __DIR__.'/config/locale/translations/jv.json') Locale::setLanguageFromJSON('kn', __DIR__.'/config/locale/translations/kn.json'); Locale::setLanguageFromJSON('km', __DIR__.'/config/locale/translations/km.json'); Locale::setLanguageFromJSON('ko', __DIR__.'/config/locale/translations/ko.json'); +Locale::setLanguageFromJSON('lb', __DIR__.'/config/locale/translations/lb.json'); Locale::setLanguageFromJSON('lt', __DIR__.'/config/locale/translations/lt.json'); +Locale::setLanguageFromJSON('lv', __DIR__.'/config/locale/translations/lv.json'); Locale::setLanguageFromJSON('ml', __DIR__.'/config/locale/translations/ml.json'); Locale::setLanguageFromJSON('mr', __DIR__.'/config/locale/translations/mr.json'); Locale::setLanguageFromJSON('ms', __DIR__.'/config/locale/translations/ms.json'); +Locale::setLanguageFromJSON('nb', __DIR__.'/config/locale/translations/nb.json'); Locale::setLanguageFromJSON('ne', __DIR__.'/config/locale/translations/ne.json'); Locale::setLanguageFromJSON('nl', __DIR__.'/config/locale/translations/nl.json'); +Locale::setLanguageFromJSON('nn', __DIR__.'/config/locale/translations/nn.json'); Locale::setLanguageFromJSON('no', __DIR__.'/config/locale/translations/no.json'); Locale::setLanguageFromJSON('or', __DIR__.'/config/locale/translations/or.json'); Locale::setLanguageFromJSON('pa', __DIR__.'/config/locale/translations/pa.json'); @@ -304,7 +316,10 @@ Locale::setLanguageFromJSON('pt-br', __DIR__.'/config/locale/translations/pt-br. Locale::setLanguageFromJSON('pt-pt', __DIR__.'/config/locale/translations/pt-pt.json'); Locale::setLanguageFromJSON('ro', __DIR__.'/config/locale/translations/ro.json'); Locale::setLanguageFromJSON('ru', __DIR__ . '/config/locale/translations/ru.json'); +Locale::setLanguageFromJSON('sa', __DIR__ . '/config/locale/translations/sa.json'); +Locale::setLanguageFromJSON('sd', __DIR__ . '/config/locale/translations/sd.json'); Locale::setLanguageFromJSON('si', __DIR__ . '/config/locale/translations/si.json'); +Locale::setLanguageFromJSON('sk', __DIR__ . '/config/locale/translations/sk.json'); Locale::setLanguageFromJSON('sl', __DIR__ . '/config/locale/translations/sl.json'); Locale::setLanguageFromJSON('sq', __DIR__ . '/config/locale/translations/sq.json'); Locale::setLanguageFromJSON('sv', __DIR__ . '/config/locale/translations/sv.json'); diff --git a/app/tasks/sdks.php b/app/tasks/sdks.php index 6659c9ead3..fa17c25855 100644 --- a/app/tasks/sdks.php +++ b/app/tasks/sdks.php @@ -18,6 +18,7 @@ use Appwrite\SDK\Language\Go; use Appwrite\SDK\Language\Kotlin; use Appwrite\SDK\Language\Android; use Appwrite\SDK\Language\Swift; +use Appwrite\SDK\Language\SwiftClient; $cli ->task('sdks') @@ -29,7 +30,7 @@ $cli $production = ($git) ? (Console::confirm('Type "Appwrite" to push code to production git repos') == 'Appwrite') : false; $message = ($git) ? Console::confirm('Please enter your commit message:') : ''; - if(!in_array($version, ['0.6.x', '0.7.x', '0.8.x', '0.9.x', '0.10.x'])) { + if(!in_array($version, ['0.6.x', '0.7.x', '0.8.x', '0.9.x', '0.10.x', '0.11.x'])) { throw new Exception('Unknown version given'); } @@ -137,6 +138,10 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND break; case 'swift': $config = new Swift(); + $warning = $warning."\n\n > This is the Swift SDK for integrating with Appwrite from your Swift server-side code. If you're looking for the Apple SDK you should check [appwrite/sdk-for-apple](https://github.com/appwrite/sdk-for-apple)"; + break; + case 'apple': + $config = new SwiftClient(); break; case 'dotnet': $cover = ''; @@ -184,7 +189,7 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ->setTwitter(APP_SOCIAL_TWITTER_HANDLE) ->setDiscord(APP_SOCIAL_DISCORD_CHANNEL, APP_SOCIAL_DISCORD) ->setDefaultHeaders([ - 'X-Appwrite-Response-Format' => '0.10.0', + 'X-Appwrite-Response-Format' => '0.11.0', ]) ; @@ -197,6 +202,8 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND } $gitUrl = $language['gitUrl']; + $gitBranch = $language['gitBranch']; + if(!$production) { $gitUrl = 'git@github.com:aw-tests/'.$language['gitRepoName'].'.git'; @@ -206,7 +213,7 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND \exec('rm -rf '.$target.' && \ mkdir -p '.$target.' && \ cd '.$target.' && \ - git init --initial-branch=master && \ + git init --initial-branch='.$gitBranch.' && \ git remote add origin '.$gitUrl.' && \ git fetch && \ git pull '.$gitUrl.' && \ @@ -214,7 +221,7 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND cp -r '.$result.'/ '.$target.'/ && \ git add . && \ git commit -m "'.$message.'" && \ - git push -u origin master + git push -u origin '.$gitBranch.' '); Console::success("Pushed {$language['name']} SDK to {$gitUrl}"); diff --git a/app/views/console/home/index.phtml b/app/views/console/home/index.phtml index 3e86573c3a..1b7fd76099 100644 --- a/app/views/console/home/index.phtml +++ b/app/views/console/home/index.phtml @@ -201,6 +201,22 @@ $usageStatsEnabled = $this->getParam('usageStatsEnabled',true);
Windows Logo
+ +
+ iOS Logo +
+ +
+ macOS Logo +
+ +
+ watchOS Logo +
+ +
+ tvOS Logo +
@@ -237,14 +253,14 @@ $usageStatsEnabled = $this->getParam('usageStatsEnabled',true);
  • - + +
  • +
  • +
  • -
  • - -
  • @@ -539,13 +555,155 @@ $usageStatsEnabled = $this->getParam('usageStatsEnabled',true); + + + + + + + + @@ -612,4 +866,12 @@ $usageStatsEnabled = $this->getParam('usageStatsEnabled',true); \ No newline at end of file + + + + + diff --git a/app/views/layouts/default.phtml b/app/views/layouts/default.phtml index aa4dfc3f5d..2818e4d923 100644 --- a/app/views/layouts/default.phtml +++ b/app/views/layouts/default.phtml @@ -10,6 +10,7 @@ $litespeed = $this->getParam('litespeed', true); $analytics = $this->getParam('analytics', 'UA-26264668-9'); $mode = $this->getParam('mode', ''); $canonical = $this->getParam('canonical', ''); +$image = $this->getParam('image', '/images/logo.png'); $locale = $this->getParam('locale', null); $runtimes = $this->getParam('runtimes', null); @@ -57,7 +58,7 @@ if(!empty($platforms)) { - +