Compare commits

..
Author SHA1 Message Date
ArnabChatterjee20k 5baa2ad113 refactor: Rename triggerQueuesForBulkDocuments to triggerBulk for consistency across document actions 2025-08-05 13:29:38 +05:30
ArnabChatterjee20k a144d41020 feat: Enhance RealtimeCustomClientTest with permission updates and timeout assertions for clients 2025-08-05 11:53:17 +05:30
ArnabChatterjee20k 7334efbf3a feat: Initialize event and payload properties in Event class and optimize bulk document queue triggering 2025-08-05 11:52:58 +05:30
ArnabChatterjee20k 59026a17dc feat: Enhance database operations with event queues and improve test coverage for bulk operations
- Added event queue injections in Bulk Update and Create classes for better event handling.
- Modified getUser method in Scope class to allow for user retrieval with an override option.
- Expanded RealtimeCustomClientTest to include comprehensive tests for bulk create, update, and delete operations, ensuring proper event emissions for multiple clients.
- Improved assertions in tests to validate event data and permissions for created, updated, and deleted documents.
2025-08-04 19:01:48 +05:30
Jake BarnbyandGitHub e6f0804272 Merge pull request #10244 from appwrite/dat-588
Allow modifying createdAt and updatedAt with server side sdk and api key
2025-08-01 21:37:09 +12:00
ArnabChatterjee20k f6c4457398 changed the error message for client side 2025-08-01 14:54:15 +05:30
ArnabChatterjee20k 67582b103c updated composer 2025-08-01 13:57:38 +05:30
ArnabChatterjee20k 27684ef38c Merge remote-tracking branch 'upstream/1.8.x' into dat-588 2025-08-01 13:54:13 +05:30
ArnabChatterjee20k 82fbc524f8 Add comprehensive tests for date and time operations in database rows
- Implemented `testDateTimeRow` to validate the behavior of datetime columns, including creation, retrieval, and modification of rows with custom createdAt and updatedAt timestamps.
- Added `testSingleRowDateOperations` to cover various scenarios for single row operations with custom date handling.
- Created `testBulkRowDateOperations` to test bulk creation and updates of rows with date fields.
- Introduced `testUpsertRowDateOperations` to verify upsert functionality with custom date fields.
- Cleaned up legacy test file by removing unnecessary blank lines.
2025-08-01 13:53:04 +05:30
ArnabChatterjee20k 983d102ff2 Restrict createdAt and updatedAt attributes for non-API key and non-privileged users in Create, Update, and Upsert actions 2025-08-01 12:31:29 +05:30
Jake Barnby 29973e4182 Update db + migrations 2025-08-01 03:09:36 +12:00
ArnabChatterjee20k de69692ff2 added modify createdAt/updatedAt support 2025-07-31 20:32:14 +05:30
Jake Barnby de6ee12daf Update db 2025-08-01 01:42:57 +12:00
Jake BarnbyandGitHub 7f27589c96 Merge pull request #10226 from appwrite/skip-teams-query
Skip empty queries
2025-08-01 00:25:55 +12:00
fogelito 6ead087e91 fix nesting if 2025-07-31 14:26:36 +03:00
fogelito ae34df3608 Merge branch '1.8.x' of https://github.com/appwrite/appwrite into skip-teams-query 2025-07-31 13:20:30 +03:00
fogelito e76aba3fd4 Revert composer 2025-07-31 13:19:55 +03:00
Jake BarnbyandGitHub d72aaf42bd Merge pull request #10234 from appwrite/bump-composer
Bump deps
2025-07-30 21:08:58 +12:00
Darshan 0023d5afc2 update: sdk-gen. 2025-07-30 14:35:25 +05:30
Jake BarnbyandGitHub c5b0d15340 Merge pull request #10232 from appwrite/1.8-docs
1.8.x docs, examples, specs.
2025-07-30 17:20:20 +12:00
Darshan cd5844b8e3 update: regen examples, references. 2025-07-30 10:39:28 +05:30
Darshan 451e590c49 remove: tables examples. 2025-07-30 10:24:37 +05:30
Jake Barnby 6347d7da3f Merge remote-tracking branch 'origin/1.7.x' into 1.8.x
# Conflicts:
#	composer.lock
2025-07-29 22:52:06 +12:00
fogelito eddc782c6e formatting 2025-07-29 11:24:41 +03:00
Jake Barnby bdf9dd5192 Update migrations 2025-07-29 20:12:27 +12:00
fogelito 19bd04e8c9 Skip empty queries 2025-07-29 11:10:25 +03:00
Jake BarnbyandGitHub e57364c831 Merge pull request #10214 from appwrite/fix-nulls
Fix document nulls
2025-07-29 18:16:01 +12:00
fogelito a520e9fcc9 Update 0.73.2 2025-07-29 08:34:44 +03:00
fogelito ff171853b4 use 0.73.1 2025-07-28 17:14:41 +03:00
fogelito bbf3164cac Run tests 2025-07-28 13:40:27 +03:00
fogelito 78887b9df6 fallbacks 2025-07-28 11:18:03 +03:00
fogelito 66fa7ad659 Use null default with fallback 2025-07-28 11:08:32 +03:00
fogelito 9a3687ae3b Run tests 2025-07-28 10:43:35 +03:00
Jake BarnbyandGitHub 767f575984 Merge pull request #10212 from appwrite/grids-api
Move to grids API
2025-07-28 19:15:44 +12:00
Jake Barnby 503d7e13f8 Update generator 2025-07-28 18:45:01 +12:00
Jake Barnby cb8b13e27e Merge remote-tracking branch 'origin/1.8.x' into grids-api
# Conflicts:
#	composer.lock
2025-07-28 18:40:58 +12:00
Jake Barnby c359c34917 Downgrade db 2025-07-28 18:38:00 +12:00
Jake Barnby e18c8942fd Revert migrations, update db 2025-07-28 18:23:50 +12:00
Darshan 0f7d06b4d5 reset: docs for easier review. 2025-07-28 11:50:08 +05:30
Darshan c9d9c4ab76 reset: docs for easier review. 2025-07-28 11:49:49 +05:30
Darshan 00290bdb65 reset: docs for easier review. 2025-07-28 11:46:43 +05:30
Jake Barnby 11136f4215 Merge branch '1.8.x' of github.com:appwrite/appwrite into 1.8.x 2025-07-28 15:02:16 +12:00
Jake Barnby 4adff28540 Update migration 2025-07-28 15:02:01 +12:00
Darshan be3d91d541 regen: specs. 2025-07-27 19:20:21 +05:30
Darshan c71ff3542f fix: deprecation inheritance on other methods with different namespace. 2025-07-27 19:19:14 +05:30
Darshan dccf64ae2e update: regen specs with updated deprecations. 2025-07-27 18:16:13 +05:30
Darshan 7a5a3706b6 fix: tests. 2025-07-27 18:13:30 +05:30
Darshan 4146671ff8 address comments. 2025-07-27 17:55:07 +05:30
Darshan d17e7e853b update: deprecation methods. 2025-07-27 17:39:43 +05:30
Darshan e41ee30ed9 remove: local setup. 2025-07-27 17:28:37 +05:30
Darshan d253329870 remove: local setup. 2025-07-27 17:28:24 +05:30
Darshan bc8d5963ae update: regen examples for grids. 2025-07-27 17:15:17 +05:30
Darshan 5ceaf66cc9 update: regen examples. 2025-07-27 17:14:23 +05:30
Darshan 0df9d51b01 update: regen specs. 2025-07-27 17:09:44 +05:30
Darshan 24614225a8 fix: no params on multiple methods. 2025-07-27 16:58:04 +05:30
Darshan e4a02b0d74 delete: tables examples. 2025-07-27 16:40:55 +05:30
Darshan 5b1a750dd1 regen: specs and fix file name. 2025-07-27 16:40:36 +05:30
Darshan ba79c5d9df update: docs. 2025-07-27 16:31:10 +05:30
Darshan 1ed45def9d update: graphql tests. 2025-07-27 15:23:07 +05:30
Darshan 1f31b75582 fix: tests. 2025-07-27 14:48:19 +05:30
Darshan d7136e77ea fix: tests. 2025-07-27 13:50:34 +05:30
Darshan f19ef05a98 fix: response modals and sdk-gen for multiple namespaces. 2025-07-27 13:47:44 +05:30
Darshan 557493d091 update: move to grids api. 2025-07-27 12:05:40 +05:30
Jake BarnbyandGitHub 0c85f1e032 Merge branch 'main' into 1.8.x 2025-07-27 17:50:38 +12:00
Jake Barnby d491a6db2d Fix consumers 2025-07-27 17:12:33 +12:00
Jake Barnby 6637cc0ed7 Fix merge 2025-07-27 17:09:50 +12:00
Jake Barnby 07d5d71fba Update database 2025-07-27 16:13:41 +12:00
Jake Barnby cdbd89b3f3 Merge remote-tracking branch 'origin/1.7.x' into 1.8.x
# Conflicts:
#	app/config/specs/open-api3-1.8.x-client.json
#	app/config/specs/open-api3-1.8.x-console.json
#	app/config/specs/open-api3-1.8.x-server.json
#	app/config/specs/open-api3-latest-client.json
#	app/config/specs/open-api3-latest-console.json
#	app/config/specs/open-api3-latest-server.json
#	app/config/specs/swagger2-1.8.x-client.json
#	app/config/specs/swagger2-1.8.x-console.json
#	app/config/specs/swagger2-1.8.x-server.json
#	app/config/specs/swagger2-latest-client.json
#	app/config/specs/swagger2-latest-console.json
#	app/config/specs/swagger2-latest-server.json
#	app/controllers/api/databases.php
#	composer.lock
#	tests/e2e/Services/Databases/Legacy/DatabasesBase.php
2025-07-27 16:07:04 +12:00
Steven NguyenandGitHub d939415c3a Merge pull request #10200 from appwrite/docs-contributing-how-to-start
docs: update CONTRIBUTING.md to clarify how to start
2025-07-23 18:14:30 -07:00
Steven NguyenandGitHub 73da590d65 docs: update CONTRIBUTING.md to clarify how to start 2025-07-23 12:31:28 -07:00
Jake BarnbyandGitHub 722c1ddf99 Merge pull request #10193 from appwrite/fix-stuff
Fix: route didn't include the params needed
2025-07-23 21:57:31 +12:00
Darshan 8ac0486e73 fix: route didn't include the params needed. 2025-07-23 15:10:27 +05:30
Jake Barnby 201c18051f Update lock 2025-07-23 20:09:14 +12:00
Jake Barnby 1f60bb1aa6 Fix index models 2025-07-23 19:48:29 +12:00
Steven NguyenandGitHub 898365a922 Merge pull request #10170 from appwrite/fix-templates
Fix default email templates
2025-07-22 18:25:57 -07:00
Jake BarnbyandGitHub e88b66c358 Merge pull request #10047 from appwrite/deprecate-old-methods
chore: deprecate old database methods
2025-07-23 00:14:11 +12:00
Chirag Aggarwal e10f1eb10f handle case when there are multiple sdk methods 2025-07-22 17:27:09 +05:30
Chirag Aggarwal 3128a7b837 chore: update to return object 2025-07-22 16:59:05 +05:30
Chirag Aggarwal 2aaaf90044 chore: client spec changes 2025-07-22 16:51:29 +05:30
Chirag Aggarwal fde03fc61b chore: regen specs 2025-07-22 16:50:19 +05:30
Chirag Aggarwal 2a81075830 chore: use class 2025-07-22 16:43:02 +05:30
Chirag Aggarwal 51614105df chore: uncomment 2025-07-22 15:54:42 +05:30
Chirag Aggarwal 8018e7dd80 chore: review comments 2025-07-22 15:54:24 +05:30
Chirag Aggarwal 51064b0154 chore: regen specs 2025-07-22 15:44:57 +05:30
Chirag Aggarwal 929c7a3d36 Merge branch '1.8.x' into deprecate-old-methods 2025-07-22 15:42:32 +05:30
Jake Barnby d0682b4b67 Revert "Downgrade migrations"
This reverts commit 5227ce267e.
2025-07-22 21:56:07 +12:00
Jake Barnby 5227ce267e Downgrade migrations 2025-07-22 21:47:08 +12:00
Jake Barnby 959e101c88 Fix merge 2025-07-22 21:23:32 +12:00
Jake BarnbyandGitHub b02fc55ea2 Merge pull request #10184 from ArnabChatterjee20k/upsert-fix-1.8.x
Upsert fix 1.8.x
2025-07-22 21:20:03 +12:00
ArnabChatterjee20k c398e08f90 Add user injection and permission handling in Upsert actions 2025-07-22 14:10:58 +05:30
Jake Barnby f5ef8b5b7e Trigger CI 2025-07-22 20:36:01 +12:00
Jake Barnby 5a06fab2a3 Update specs 2025-07-22 20:09:50 +12:00
Jake Barnby 2e783865b9 Update service defs 2025-07-22 19:38:12 +12:00
Jake Barnby 07dfa58eba Update specs 2025-07-22 19:32:36 +12:00
Jake Barnby d6d78ff218 Update database 2025-07-22 19:25:44 +12:00
Jake Barnby 63a24c82f8 Merge branch '1.8.x' of github.com:appwrite/appwrite into 1.8.x 2025-07-22 16:35:43 +12:00
Jake Barnby 7355711f24 Fix index tests 2025-07-22 16:35:35 +12:00
Jake BarnbyandGitHub 8898d4c55b Merge pull request #10182 from appwrite/bump-response-format
Bump response format, Fix backwards compat
2025-07-22 16:27:48 +12:00
DarshanandGitHub 3c4bd67de6 Merge branch '1.8.x' into bump-response-format 2025-07-22 09:51:49 +05:30
Darshan 97c54aeaac fix: add wildcards on getDocument response model as well. 2025-07-22 09:31:09 +05:30
Jake Barnby 8056a9d675 Update database 2025-07-22 15:47:38 +12:00
Jake Barnby 724ee41eff Fix index tests 2025-07-22 14:48:48 +12:00
Jake Barnby afd6730a81 FIx name mismatch 2025-07-22 14:43:32 +12:00
Jake Barnby f33ed64f6a Fix index tests 2025-07-22 14:14:08 +12:00
Jake BarnbyandGitHub 6da637b8b5 Merge pull request #10180 from appwrite/fix-database-tests
Fix database tests
2025-07-22 13:48:30 +12:00
Jake Barnby 8ef8f8c2d9 Merge remote-tracking branch 'origin/1.8.x' into fix-database-tests
# Conflicts:
#	composer.json
#	composer.lock
2025-07-22 13:47:56 +12:00
Jake Barnby 9a6032c804 Update libs 2025-07-22 12:11:03 +12:00
fogelito ee5ce895f7 Remove var_dump 2025-07-21 18:26:53 +03:00
fogelito e82003873a formatting 2025-07-21 18:17:12 +03:00
fogelito 64d1d78d84 lock 2025-07-21 18:15:48 +03:00
fogelito 959c165a00 Merge branch '1.8.x' of https://github.com/appwrite/appwrite into fix-database-tests
# Conflicts:
#	composer.lock
2025-07-21 18:12:39 +03:00
fogelito 51f518ae03 Remove var_dump 2025-07-21 18:11:13 +03:00
fogelito b2cd1413ce Fallback index length 0 2025-07-21 17:45:34 +03:00
Darshan 59fce99ef6 bump: response format for preview sdk. 2025-07-21 19:15:29 +05:30
fogelito 1ff1b55298 Check tests 2025-07-21 14:12:10 +03:00
fogelito ffb3a522b0 Check tests 2025-07-21 14:06:39 +03:00
Jake Barnby 58aaee1c4a Downgrade migrations 2025-07-21 22:56:19 +12:00
Jake Barnby 75bd0dc55b Update tables test 2025-07-21 21:26:08 +12:00
Jake Barnby 1aea95c6a9 Revert DB 2025-07-21 21:09:07 +12:00
Jake Barnby 51c95347a0 Merge remote-tracking branch 'origin/main' into 1.8.x
# Conflicts:
#	app/config/specs/open-api3-latest-client.json
#	app/config/specs/open-api3-latest-console.json
#	app/config/specs/open-api3-latest-server.json
#	app/config/specs/swagger2-latest-client.json
#	app/config/specs/swagger2-latest-console.json
#	app/config/specs/swagger2-latest-server.json
#	app/controllers/api/databases.php
2025-07-21 20:42:16 +12:00
Jake Barnby f0f7381b97 Update libs 2025-07-21 19:13:34 +12:00
Jake Barnby 25074ca2b1 Update console 2025-07-21 18:53:54 +12:00
Jake Barnby 3e8cd9d748 Merge remote-tracking branch 'origin/1.7.x' into 1.8.x 2025-07-21 18:53:02 +12:00
Darshan e7315e23c7 fix: address comment. 2025-07-20 17:28:44 +05:30
Darshan 373ceecebb fix: add a default client name for session alerts 2025-07-20 16:40:29 +05:30
Darshan 0926250f17 fix: session alerts template. 2025-07-20 16:39:08 +05:30
Darshan 5243af937f fix: the default templates. 2025-07-20 14:40:30 +05:30
Jake Barnby 97a4e5f355 Bump version 2025-07-18 21:38:35 +12:00
Jake BarnbyandGitHub ec2ef72876 Merge pull request #10030 from appwrite/update-documentation
Update documentation
2025-07-18 20:19:37 +12:00
Jake BarnbyandGitHub 0b7f62c75c Merge branch '1.8.x' into update-documentation 2025-07-18 19:51:57 +12:00
Jake BarnbyandGitHub 6861a7bc22 Merge pull request #10160 from appwrite/bump-migrations
Bump migrations
2025-07-18 19:35:26 +12:00
5b60eb8b94 update: code quality.
Co-authored-by: Jake Barnby <jakeb994@gmail.com>
2025-07-18 12:44:51 +05:30
Darshan d6ec18bda7 update: maintain tests consistency. 2025-07-18 12:14:02 +05:30
Darshan 5a44f6bcea update: maintain consistency for permissions with a null check. 2025-07-18 12:03:46 +05:30
Darshan 2c28fa5cac bump: specs. 2025-07-18 11:48:19 +05:30
Darshan d4de3a722d Merge branch '1.8.x' into 'update-documentation'. 2025-07-18 11:46:27 +05:30
Darshan d3726f9a55 fix: null permissions on tables api as well. 2025-07-18 11:37:47 +05:30
Darshan dca9a17e7a fix: null permissions. 2025-07-18 11:36:47 +05:30
Darshan 79bdf705d6 Merge branch '1.8.x' into 'bump-migrations'. 2025-07-18 10:57:29 +05:30
Darshan 9b1f5eb905 update: tests. 2025-07-18 10:55:48 +05:30
Darshan 40a6190844 update: log message with fallbacks. 2025-07-18 10:55:30 +05:30
Jake Barnby 9ceeb76ad0 Merge branch '1.7.x' into 1.8.x
# Conflicts:
#	app/controllers/api/databases.php
#	composer.lock
#	src/Appwrite/GraphQL/Types/Mapper.php
2025-07-18 17:24:12 +12:00
Jake BarnbyandGitHub 0a3d206d76 Merge pull request #10115 from appwrite/dat-571
Removed $sequence from response through response filters
2025-07-18 17:16:02 +12:00
Darshan 12f8374378 update: response modal. 2025-07-18 10:32:35 +05:30
Darshan 46c755336c bump: dependencies. 2025-07-18 10:28:29 +05:30
ArnabChatterjee20k e97d10061f Merge branch '1.8.x' into dat-571 2025-07-18 10:28:27 +05:30
ArnabChatterjee20k 16c3f2c55a Merge branch '1.8.x' into dat-571 2025-07-18 10:26:01 +05:30
Jake BarnbyandGitHub ebdc6c9016 Merge pull request #10019 from appwrite/lazy-load-relationships
Lazy load relationships
2025-07-18 12:52:01 +12:00
Darshan 944f5ed7c1 update: mirror tests to Tables api. 2025-07-17 18:58:56 +05:30
Darshan 5b8751d270 add: changes to module structure. 2025-07-17 18:23:33 +05:30
Darshan ee317b0b8d Merge branch '1.8.x' into 'lazy-load-relationships'. 2025-07-17 18:15:16 +05:30
ArnabChatterjee20k a2b6ed3513 added response filters for version older than 1.8.x 2025-07-07 14:11:35 +05:30
Jake Barnby b2fa28754d Merge remote-tracking branch 'origin/1.7.x' into 1.8.x
# Conflicts:
#	.github/workflows/benchmark.yml
#	composer.lock
#	src/Appwrite/Event/Database.php
2025-07-04 10:00:45 -04:00
Chirag Aggarwal 8cc254a56f fix: replacewith methods 2025-07-03 11:29:41 +05:30
Chirag AggarwalandGitHub 0076340f7f Merge branch 'update-documentation' into deprecate-old-methods 2025-07-02 13:33:29 +05:30
Chirag Aggarwal 634a160d41 chore: move deprecated 2025-07-02 13:23:00 +05:30
Chirag Aggarwal 85250ba7bb chore: update format 2025-07-02 11:53:26 +05:30
Chirag Aggarwal 9c413fd020 chore: remove deprecatedMessage 2025-07-02 11:41:21 +05:30
Darshan 73b0b9d0dd Merge branch '1.8.x' into 'update-documentation'. 2025-07-01 14:43:32 +05:30
Darshan e66201bad5 Merge branch '1.7.x' into '1.8.x'. 2025-07-01 14:41:20 +05:30
Chirag Aggarwal 3d4e146942 chore: update ordering 2025-07-01 10:06:12 +05:30
Chirag Aggarwal 0ea66121b1 chore: add deprecated version 2025-07-01 09:54:57 +05:30
Darshan 86dfed8f7c Merge branch '1.8.x' into 'update-documentation'. 2025-07-01 09:04:46 +05:30
Jake BarnbyandGitHub a24c941e07 Merge pull request #9693 from appwrite/database-aliases
Database aliases, new terminologies and a migration to modules
2025-07-01 03:18:43 +00:00
Jake BarnbyandGitHub 38719dcb4a Merge branch '1.8.x' into database-aliases 2025-07-01 02:15:07 +00:00
Chirag AggarwalandGitHub 591cc32bfc Merge branch 'update-documentation' into deprecate-old-methods 2025-06-27 16:24:02 +05:30
Jake BarnbyandGitHub 7aed35a588 Merge pull request #10065 from appwrite/dat-565
Updated utopia database
2025-06-26 19:26:28 +00:00
ArnabChatterjee20k b36431d45c empty commit 2025-06-26 21:26:25 +05:30
ArnabChatterjee20k c76fa53f55 updated the db version 2025-06-26 21:13:12 +05:30
Darshan 91d3b43d2e bump: dependencies. 2025-06-25 19:56:59 +05:30
Darshan 6118d5b46d remove: wrong examples. 2025-06-25 19:10:40 +05:30
Darshan eb201fe2ae update: examples. 2025-06-25 19:07:26 +05:30
Darshan 562f5c2a1e update: docs, misc. 2025-06-25 19:06:17 +05:30
Darshan d44b43373a update: docs, misc. 2025-06-25 18:14:35 +05:30
DarshanandGitHub 922eba865d Merge branch 'database-aliases' into update-documentation 2025-06-25 17:51:34 +05:30
Darshan 67e546faa8 fix: namespace for table logs. 2025-06-25 17:50:54 +05:30
DarshanandGitHub 6ca856c5b8 Merge branch 'database-aliases' into update-documentation 2025-06-25 17:02:36 +05:30
Darshan bce666e81b add: scopes on migrations and update tests. 2025-06-25 17:02:21 +05:30
Darshan b39325e23e add: scopes on migrations. 2025-06-25 16:54:45 +05:30
Darshan 8632f3360f bump: sdk examples. 2025-06-25 12:43:51 +05:30
Darshan 6a5ffb2e82 bump: specs for sdks. 2025-06-25 11:58:47 +05:30
Darshan 68bff78dfb Merge branch 'database-aliases' into update-documentation 2025-06-25 11:55:38 +05:30
Darshan d7d8dbdbd4 fix: name. 2025-06-25 11:53:21 +05:30
Darshan fb81b13389 update: doc links. 2025-06-25 11:49:59 +05:30
Darshan 839015419c Merge branch 'database-aliases' into update-documentation 2025-06-25 11:30:21 +05:30
Darshan 789064e295 add: new scopes to the api. 2025-06-25 11:29:45 +05:30
Darshan 7f4d6233a2 add: validators to swagger2. 2025-06-25 11:00:09 +05:30
Chirag Aggarwal 6d9b3aef0e chore: fix table replacewith methods 2025-06-24 17:32:23 +05:30
Chirag Aggarwal 7d15d25773 chore: add more deprecations 2025-06-24 16:42:28 +05:30
Chirag Aggarwal c7c198fa2e chore: add more deprecations, add warning headers 2025-06-24 14:54:15 +05:30
Chirag Aggarwal ccbd699ee7 chore: add namespace to replacements 2025-06-24 14:24:18 +05:30
Chirag Aggarwal ac395452bc chore: deprecate old database methods 2025-06-24 14:03:19 +05:30
Darshan ffccdef68c fix: oha as per latest updates. 2025-06-23 12:58:46 +05:30
Darshan 0f6e77d85e Merge remote-tracking branch 'origin/update-documentation' into update-documentation
# Conflicts:
#	.github/workflows/benchmark.yml
2025-06-23 12:58:06 +05:30
Darshan 38a39d1168 fix: oha as per latest updates. 2025-06-23 12:57:40 +05:30
Darshan 6a74273564 fix: oha as per latest updates. 2025-06-23 12:45:34 +05:30
DarshanandGitHub 80c2fca110 Merge branch 'database-aliases' into update-documentation 2025-06-23 12:29:58 +05:30
Darshan b52c49389c fix: oha as per latest updates. 2025-06-23 12:28:14 +05:30
Darshan 9b51b1bf9c fix: oha as per latest updates. 2025-06-23 12:27:00 +05:30
Darshan 597230006f fix: oha as per latest updates. 2025-06-23 12:23:26 +05:30
Darshan 7969e57134 ci: empty commit 2025-06-23 12:11:00 +05:30
Darshan 7f8fcb1b0b fix: missing range on tables api. 2025-06-23 12:03:45 +05:30
Darshan ebfa6eba8b update: formatter, specs, docs, sdk method names. 2025-06-23 11:49:43 +05:30
DarshanandGitHub 7e026b11b4 Merge branch '1.8.x' into lazy-load-relationships 2025-06-23 10:45:55 +05:30
Darshan d338007d68 update: re-add filters since the PR is in draft and will be merged in the end. 2025-06-23 10:44:25 +05:30
Darshan 88f9377226 Merge branch 'database-aliases' into update-documentation 2025-06-19 18:49:00 +05:30
Darshan 4521302cb8 fix: graphql test for complex queries. 2025-06-19 18:36:32 +05:30
Darshan 974037ee38 update: generate docs examples as per latest 1.8.x source. 2025-06-19 18:13:27 +05:30
Darshan c7a3ffdb71 update: generate latest specs. 2025-06-19 18:07:53 +05:30
Darshan 36dfd217b6 Merge branch 'database-aliases' into update-documentation 2025-06-19 18:01:19 +05:30
Darshan 531f50a2c7 fix: sdk namespacing and graphql tests. 2025-06-19 17:59:29 +05:30
Darshan 7ebe8f6c9e revert: legacy tests namespacing to old. 2025-06-19 17:34:16 +05:30
DarshanandGitHub c08db975d6 Merge branch '1.8.x' into database-aliases 2025-06-19 14:52:13 +05:30
Darshan 5287a3d619 address comment. 2025-06-19 14:52:01 +05:30
Darshan caf2308300 address comment. 2025-06-19 14:50:15 +05:30
Darshan 3d6acaa19c address comments. 2025-06-19 14:49:42 +05:30
Darshan 60ab787894 address comments. 2025-06-19 14:33:58 +05:30
Darshan 03b4026233 remove: leftover. 2025-06-19 14:33:23 +05:30
Darshan 1d23e2ec12 remove: use HTTP. update: inline context logic. 2025-06-19 14:31:54 +05:30
Darshan e5caa85629 update: init with module structure. 2025-06-19 11:02:31 +05:30
Darshan c41d37c982 change: namespace. 2025-06-19 10:54:56 +05:30
Darshan c93d92abef rename: tests from collections to legacy. 2025-06-19 10:52:15 +05:30
Darshan 83968a62f2 update: docs. 2025-06-19 10:42:48 +05:30
Jake BarnbyandGitHub 53a00deb0a Merge pull request #10010 from ArnabChatterjee20k/dat-522
Added auth option to allow invalidating existing sessions
2025-06-18 17:41:41 -04:00
ArnabChatterjee20k d053282bcb linting 2025-06-19 02:29:21 +05:30
ArnabChatterjee20k 225b6e8413 updated tests and project invaldate session 2025-06-19 02:26:58 +05:30
Jake BarnbyandGitHub da83470f4d Merge pull request #10020 from appwrite/optimize-process-documents
Improve `processDocuments`
2025-06-18 13:06:18 -04:00
DarshanandGitHub 5e9cabf115 Merge branch '1.8.x' into lazy-load-relationships 2025-06-18 18:36:47 +05:30
ArnabChatterjee20k 56494ca427 updated invalidation session during the change password in the account endpoint 2025-06-18 13:30:24 +05:30
Darshan 6214c2d104 update: disable 1.8.x request/response filters for lazy-loading-relationships. 2025-06-18 12:07:00 +05:30
Darshan d69189bd55 ci: empty commit 2025-06-18 12:02:08 +05:30
Darshan d6bf748a07 address comments. 2025-06-18 12:00:19 +05:30
ArnabChatterjee20k 8d62ada545 updated example of the authInvalidateSession 2025-06-18 10:54:26 +05:30
Darshan 16a8753509 update: comment. 2025-06-17 15:03:11 +05:30
Darshan 1fbbbee310 update: add cached logic to processDocument. 2025-06-17 15:01:13 +05:30
Darshan 1e39d8d6ee revert: sanity check tests! 2025-06-17 12:01:50 +05:30
Darshan bfb383e28a test: backwards compat for request/response filters on latest 1.6.x. 2025-06-17 11:47:40 +05:30
Darshan 57d8185b16 test: backwards compat for request/response filters. 2025-06-17 11:26:22 +05:30
Darshan deb8b3a789 revert: stuff that is not supposed to be in this branch. 2025-06-17 11:11:47 +05:30
Darshan 16a3275c81 Merge branch '1.8.x' into 'lazy-load-relationships'. 2025-06-17 10:36:16 +05:30
Darshan 8c57672032 Merge commit 'e704e96290' into lazy-load-relationships 2025-06-17 10:34:54 +05:30
DarshanandGitHub 1337b759de fix: remove event for bulk api support. 2025-06-17 10:15:45 +05:30
DarshanandGitHub 34e4299e10 Merge branch '1.8.x' into database-aliases 2025-06-17 10:13:38 +05:30
Darshan e236aac0ea fix: events logic 😮‍💨 2025-06-17 09:57:35 +05:30
ArnabChatterjee20k 28fbd64864 updated session invalidation tests , models and descriptions 2025-06-17 00:40:32 +05:30
ArnabChatterjee20k 9bf4361761 updated indentation 2025-06-16 23:48:08 +05:30
ArnabChatterjee20k 7a0ba95231 updated onPasswordChange to invalidate session 2025-06-16 23:05:52 +05:30
ArnabChatterjee20k 774291b5d8 added onPasswordChange property to the console project 2025-06-14 18:15:41 +05:30
ArnabChatterjee20k 74614e8d58 updated description of on password change 2025-06-14 18:09:20 +05:30
ArnabChatterjee20k fde2f278e8 added invalidating sessions for the project users 2025-06-14 18:07:42 +05:30
Darshan 8d74083da3 remove: filter queries. 2025-06-13 15:18:21 +05:30
Darshan 8cbd06173d update: realtime channels checks for tables api. 2025-06-13 15:11:18 +05:30
Darshan 9cfff792fd add: graphql tests for bulk apis to server tests. 2025-06-13 14:13:26 +05:30
Darshan 6e1fa0526d add: graphql tests for bulk apis to server tests. 2025-06-13 14:07:33 +05:30
Darshan 2e05844ca2 add: graphql tests for bulk apis. 2025-06-13 14:04:23 +05:30
Darshan a13a6a6913 update: naming convention for table tests. 2025-06-13 11:06:51 +05:30
Darshan 6f16895e8b Merge branch '1.8.x' into 'database-aliases'. 2025-06-13 10:44:44 +05:30
Darshan 44870b9810 fix: pending tests. 2025-06-13 10:26:05 +05:30
Darshan 5f8c811f15 fix: missing context. 2025-06-13 10:08:07 +05:30
Darshan 018aad5339 fix: one more test... 2025-06-12 20:03:41 +05:30
Darshan 58e878653e fix: one more test before I sign out 👋 2025-06-12 20:00:53 +05:30
Darshan b248c9b640 fix: a bunch of tests 🚧 2025-06-12 19:58:28 +05:30
Darshan 1f31998092 fix: route name 😒 2025-06-12 19:48:28 +05:30
Darshan 90d18a9bd5 add: increment, decrement document/row attribute/column; fixes: misc. 2025-06-12 18:24:54 +05:30
Darshan 3426847b17 add: update documents/rows. 2025-06-12 17:31:37 +05:30
Darshan 2994cdf874 update: model. 2025-06-12 17:14:50 +05:30
Darshan 1c87e765de add: delete documents/rows 2025-06-12 17:12:43 +05:30
Darshan 919f358f3f fix: audit event. 2025-06-12 16:58:18 +05:30
Darshan a6ae715e3a update: descriptions. 2025-06-12 16:55:31 +05:30
Darshan 44b8054ed7 add: upsert documents/rows. 2025-06-12 16:55:15 +05:30
Darshan ad34cf3a62 add: lengths to column indexes. 2025-06-12 16:17:27 +05:30
Darshan ffec769f4a fix: index lengths. 2025-06-12 16:16:55 +05:30
Darshan b1f7f08b9a remove: duplicate events. 2025-06-12 16:06:15 +05:30
Darshan d502869c3d fix: index lengths. 2025-06-12 15:21:06 +05:30
Darshan d6b55730eb fix: string encryption attribute in model. 2025-06-12 15:10:28 +05:30
Darshan 9334b98308 fix: duplicate call to collection creation. 2025-06-12 14:40:33 +05:30
Darshan db128d1fb4 update: better syntax for callbacks. 2025-06-12 14:39:47 +05:30
Darshan 95bc85f18d add: upsert for collections and tables. 2025-06-12 14:31:28 +05:30
Darshan 7beae21535 fix: missing context! 2025-06-12 14:20:22 +05:30
Darshan 30eb206dc8 Merge branch '1.8.x' into database-aliases 2025-06-12 11:41:11 +05:30
Darshan 7169e67245 add/update: createDocuments on module structure. 2025-06-11 20:05:09 +05:30
Darshan 8e2eff7894 rollback: auth exception as per 1.8.x source. 2025-06-11 16:53:14 +05:30
Darshan 3e1adc6004 remove: $isTablesAPI var. 2025-06-11 16:51:27 +05:30
Darshan 86a9598a51 update: remove not-found and index dependency exceptions from global handler. 2025-06-11 16:51:09 +05:30
Darshan dc439d1a16 update: remove authorization from global handler. 2025-06-11 16:46:21 +05:30
Darshan 6b53337a23 update: remove duplicate exceptions from global handler. 2025-06-11 16:44:32 +05:30
Darshan 3a88c74109 update: remove structure exceptions from global handler. 2025-06-11 16:18:06 +05:30
Darshan e6268fe5a6 update: remove query exceptions from global handler. 2025-06-11 15:58:22 +05:30
Darshan e07a1817ab update: remove conflict, restrict and relationship exceptions from global handler. 2025-06-11 13:42:55 +05:30
Darshan 3f81847267 update: getInternalId() -> getSequence() 2025-06-11 12:51:31 +05:30
Darshan 1ac22c0ae0 Merge branch '1.8.x' into 'database-aliases'. 2025-06-11 12:36:33 +05:30
Darshan fcdddf7bf0 address comments. 2025-06-11 12:21:48 +05:30
Darshan 087ccfe347 remove: todo. 2025-05-10 12:06:17 +05:30
Darshan b0d9215ea5 fix: abuse tests! 2025-05-10 11:57:32 +05:30
Darshan 63d591e766 fix: method name. 2025-05-10 11:39:46 +05:30
Darshan e50d7df56c fix: audits event. 2025-05-10 11:38:28 +05:30
Darshan 9ba29d4779 update: var name. 2025-05-10 11:36:55 +05:30
Darshan 15e0385723 update: exception name. 2025-05-10 11:36:13 +05:30
Darshan 6bdfe3b895 address naming comments. 2025-05-10 11:34:20 +05:30
Darshan afa8341f95 add: table apis to webhook custom server tests. 2025-05-10 11:01:36 +05:30
Darshan 45370f91c3 add: table apis to webhook tests. 2025-05-10 10:52:43 +05:30
Darshan ba26eae2c3 Merge remote-tracking branch 'origin/database-aliases' into database-aliases 2025-05-10 10:36:26 +05:30
Darshan 5dca1ff0d6 update: fix test variable. 2025-05-10 10:36:16 +05:30
Darshan fbe2609f7b update: simplify setting events context param. 2025-05-10 10:34:44 +05:30
Darshan 5022a052ce update: test coverage for databases. 2025-05-10 10:20:23 +05:30
Darshan 68994f2634 fix: graphql tests. 2025-05-10 10:19:01 +05:30
Darshan 594f8595ae update: database server test for graphql <> tables api. 2025-05-10 10:10:23 +05:30
Darshan 02af05b409 fix: endpoint in abuse test. 2025-05-10 10:10:03 +05:30
Darshan d1ae06550f update: realtime events logic. 2025-05-10 10:09:43 +05:30
DarshanandGitHub e1c5b3f59e Merge branch '1.7.x' into database-aliases 2025-05-10 09:38:17 +05:30
Darshan a067b77e90 update: model; add|update: graphql tests [wip]. 2025-05-09 20:04:02 +05:30
Darshan c542ba033f patch: graphql tests <> collections. 2025-05-09 18:15:17 +05:30
Darshan d5e94a57be revert: graphql tests for collections api. 2025-05-09 17:38:02 +05:30
Darshan 241779e046 add: table api tests to abuse. 2025-05-09 17:34:41 +05:30
Darshan f16ba8dee3 add: table api tests. 2025-05-09 17:25:36 +05:30
Darshan 1756acd89c fix: realtime channel count. 2025-05-09 15:16:10 +05:30
Darshan 94fbf19e54 fix|add: tables api tests to realtime. 2025-05-09 15:11:14 +05:30
Darshan d3f1c4f852 revert: tests to collections API. 2025-05-09 15:10:44 +05:30
Darshan f10be55f92 update: short the callbacks. 2025-05-09 14:49:44 +05:30
Darshan a807dd97d9 fix: realtime events. 2025-05-09 14:47:01 +05:30
Darshan a8dc5c3797 add: table tests to usage. 2025-05-09 11:10:53 +05:30
Darshan 65dbebd103 misc: fix error types. 2025-05-09 11:09:58 +05:30
Darshan 938b376f3c fix: var ref. 2025-05-09 10:02:14 +05:30
Darshan ef30e827c7 misc: changes to the databases worker. 2025-05-09 09:52:04 +05:30
Darshan 0ecd97d027 fix: wrong param. 2025-05-09 09:33:52 +05:30
Darshan 2d74765ba0 update: fix exception. 2025-05-08 20:00:01 +05:30
Darshan c5074fd52f update: move around tests. 2025-05-08 19:53:31 +05:30
Darshan 5c0717458f update: the usage model. 2025-05-08 19:51:16 +05:30
Darshan 36e6617090 update: the usage modals. 2025-05-08 19:47:35 +05:30
Darshan 8006c9d60b misc: fixes. 2025-05-08 19:36:59 +05:30
Darshan 44a5fef345 misc: name fixes. 2025-05-08 19:17:06 +05:30
Darshan 4e83fc856a update: split service registrations into smaller registries. 2025-05-08 15:38:07 +05:30
Darshan c4a26fbb95 fix: another pesky sdk namespace 🤨. 2025-05-08 15:37:00 +05:30
Darshan eafa9bb393 fix: namespaces, again. 2025-05-08 15:33:41 +05:30
Darshan d7023b5a69 fix: namespaces. 2025-05-08 15:33:00 +05:30
Darshan 97d1a535df fix: missing path :\ 2025-05-08 15:30:52 +05:30
Darshan 6fba4a5f08 update: sdk namespaces. 2025-05-08 14:20:11 +05:30
Darshan fe693a9469 add: indexes api to tables. 2025-05-08 14:15:00 +05:30
Darshan da70da985b update: use nested directory structure. 2025-05-08 12:55:54 +05:30
Darshan 96b89693fc update: use abstract for getResponseModel. 2025-05-08 12:47:21 +05:30
Darshan cb64484c44 update: abstraction over document and row apis. 2025-05-08 11:59:55 +05:30
Darshan fc456b4cca update: abstraction over attribute and column apis. 2025-05-08 10:40:35 +05:30
Darshan b55521e3de update: address minor comments by coderabbitai. 2025-05-08 09:36:13 +05:30
Darshan 6493759536 Merge remote-tracking branch 'origin/database-aliases' into database-aliases
# Conflicts:
#	app/init/constants.php
2025-05-07 20:02:23 +05:30
Darshan bc8a38ba55 update: abstraction over attribute and column apis [WIP]. 2025-05-07 20:01:46 +05:30
Darshan 69cc4f0bb6 update: handle the context logic, use defaults. 2025-05-07 17:32:54 +05:30
DarshanandGitHub b534d3843e Merge branch '1.7.x' into database-aliases 2025-05-07 17:03:17 +05:30
Darshan 0f94b800a5 update: abstraction over table and collection apis. 2025-05-07 17:02:24 +05:30
Darshan 6d1afea436 misc. 2025-05-07 14:14:12 +05:30
Darshan f2f23be648 update: events, errors, realtime. 2025-05-07 14:11:28 +05:30
DarshanandGitHub 04386eea7c Merge pull request #9720 from appwrite/response-filters-for-databases
Request, Response filters for databases
2025-05-07 13:38:19 +05:30
Darshan 8610687b87 update: events schema, response models for database usages. 2025-05-07 13:23:27 +05:30
DarshanandGitHub 28a74e664d Merge pull request #9728 from appwrite/update-exceptions
Update Exceptions
2025-05-07 11:31:49 +05:30
DarshanandGitHub 0266376315 Merge branch 'response-filters-for-databases' into update-exceptions 2025-05-07 11:30:48 +05:30
Darshan 7f023f29c5 update: keep both tables and collections api errors. 2025-05-07 11:30:31 +05:30
Darshan 46ccf6f537 update: re-add legacy models; remove: filters. 2025-05-07 11:13:15 +05:30
DarshanandGitHub 026150971f Merge pull request #9722 from appwrite/events-compatibility
Events compat based on version
2025-05-07 10:34:36 +05:30
Darshan ee117b816a manage: events and channels. 2025-05-07 10:33:54 +05:30
DarshanandGitHub 80915fc5e9 Merge branch 'events-compatibility' into update-exceptions 2025-05-06 17:03:52 +05:30
DarshanandGitHub 9a45a0fc7b Merge branch 'response-filters-for-databases' into events-compatibility 2025-05-06 17:02:58 +05:30
Darshan ed9306ef8d update: change filter name for attributes <> columns. 2025-05-06 17:00:57 +05:30
Darshan 3e813f6cba update: change filter name for collections <> tables. 2025-05-06 17:00:12 +05:30
Darshan 6eb1c3ae68 update: rename remaining variables. 2025-05-06 16:58:56 +05:30
Darshan 7a52ace9b2 update: attributes <> columns errors. 2025-05-06 16:53:20 +05:30
Darshan 6e8dbfc674 update: documents <> rows errors. 2025-05-06 16:48:20 +05:30
Darshan 59e5ce0664 update: collections <> tables errors. 2025-05-06 16:44:19 +05:30
Darshan d70d001f5a add: backported channels. 2025-05-06 12:52:05 +05:30
Darshan a0ffcd54dc Merge branch 'response-filters-for-databases' into events-compatibility 2025-05-06 12:17:02 +05:30
Darshan b1735ef945 remove: aliasing filter. 2025-05-06 12:14:54 +05:30
Darshan 9ec897f7d6 fix: filtering 2025-05-06 12:05:06 +05:30
Darshan 86d195c1c0 update: request, response filters. 2025-05-06 11:31:35 +05:30
Darshan 3a8f097c17 fix: realtime channels; update: row model. 2025-05-06 11:31:05 +05:30
Darshan 253c428ca2 remove: filter. 2025-05-06 11:30:15 +05:30
Darshan 9e1105b61f update: tests. 2025-05-06 11:29:56 +05:30
Darshan 56077d59f7 fix: graphql tests. 2025-05-06 10:51:11 +05:30
Darshan 565e6b2ad8 fix: migrations test <> csv imports. 2025-05-05 17:03:17 +05:30
Darshan 67a8f522e5 fix: project and general usage tests. 2025-05-05 14:45:55 +05:30
Darshan b905af91af fix: project usage documents to rows. 2025-05-05 14:43:09 +05:30
Darshan 37fb34ae12 wip: events compat based on version. 2025-05-05 14:33:27 +05:30
Darshan 75c9db8031 update: tests to use the 1.7.x changes on databases. 2025-05-05 14:07:34 +05:30
Darshan e2202e9ffa remove: old attributes anyway. 2025-05-05 14:05:24 +05:30
Darshan d30fd56573 patch: index module to use/specify columns instead of attributes. 2025-05-05 14:04:39 +05:30
Darshan 71ad9c203e fix: response modals, mappings, filters. 2025-05-05 13:53:57 +05:30
Darshan bdfab30fd4 Merge branch 'database-aliases' into response-filters-for-databases 2025-05-05 10:58:08 +05:30
Darshan 6cb44399c1 update: services. 2025-05-05 10:57:54 +05:30
Darshan cabf32559a update: return keys. 2025-05-05 09:50:57 +05:30
Darshan 7a53680786 update: document response model to row; refactor: old collection to table models on response types. 2025-05-05 09:42:33 +05:30
Darshan 675d404b9b update: attribute* response model to column*. 2025-05-05 09:30:27 +05:30
Darshan 8504fbc0b9 update: collection response model to table. 2025-05-05 09:14:20 +05:30
Darshan d184d1c7b1 fix: lint! 2025-05-04 18:50:24 +05:30
Darshan e0a4c698bc fix: float column creation! 2025-05-04 18:43:32 +05:30
Darshan 2554adb41e update: error messages. 2025-05-04 18:29:11 +05:30
DarshanandGitHub c3d3665383 Merge branch '1.7.x' into database-aliases 2025-05-04 18:18:53 +05:30
Darshan 6fac164d46 update: keep message same. 2025-05-04 18:18:28 +05:30
Darshan ad16bd281e add: database module to platform registry. 2025-05-04 18:16:08 +05:30
Darshan 57a9218649 remove: database controller 👋 2025-05-04 18:10:09 +05:30
Darshan 4cd8f49f82 add: usage. 2025-05-04 18:09:39 +05:30
Darshan 286c695b47 add: move and register row modules. 2025-05-04 17:52:29 +05:30
Darshan fd7801fe26 add: register index and table modules. 2025-05-04 17:24:38 +05:30
Darshan 76785d58c6 fix: imports, lint. 2025-05-04 17:16:52 +05:30
Darshan 3271ef5769 update: move Index ops to module. 2025-05-04 17:16:37 +05:30
Darshan 8efc1543e9 update: move Table ops to module. 2025-05-04 17:05:14 +05:30
Darshan 1945a64083 update: move DB ops to module. 2025-05-04 14:08:10 +05:30
Darshan 9c1ec6fe02 update: move the init hook. 2025-05-04 13:37:25 +05:30
Darshan b3b9961860 init: move to module structure for database; start with columns. 2025-05-04 13:22:26 +05:30
Darshan 7ffd5cfde6 fix: graphql tests, again. 2025-04-27 14:47:59 +05:30
Darshan 9bf1fdc2ff fix: graphql tests. 2025-04-27 14:27:07 +05:30
Darshan 9cccd89439 fix: graphql tests. 2025-04-27 14:08:26 +05:30
Darshan f94ecc885a fix: tests as per new events system. 2025-04-27 10:36:21 +05:30
Darshan 949f58522d change: events system. 2025-04-27 10:33:44 +05:30
Darshan 89ce5a6e10 add: todo. 2025-04-26 16:07:46 +05:30
Darshan 21715448ac fix|update: database tests for new error messages. 2025-04-26 16:07:32 +05:30
Darshan 4f1f9bb4a2 add: filter for latest changes. 2025-04-26 16:06:53 +05:30
Darshan 814be66b98 update: use new terminologies on path params and local variables. 2025-04-26 16:05:07 +05:30
6799 changed files with 363636 additions and 23780 deletions
-2
View File
@@ -21,7 +21,6 @@ _APP_OPTIONS_ROUTER_PROTECTION=disabled
_APP_OPTIONS_FORCE_HTTPS=disabled
_APP_OPTIONS_ROUTER_FORCE_HTTPS=disabled
_APP_OPENSSL_KEY_V1=your-secret-key
_APP_DNS=8.8.8.8
_APP_DOMAIN=traefik
_APP_CONSOLE_DOMAIN=localhost
_APP_DOMAIN_FUNCTIONS=functions.localhost
@@ -29,7 +28,6 @@ _APP_DOMAIN_SITES=sites.localhost
_APP_DOMAIN_TARGET_CNAME=test.localhost
_APP_DOMAIN_TARGET_A=127.0.0.1
_APP_DOMAIN_TARGET_AAAA=::1
_APP_DOMAIN_TARGET_CAA=digicert.com
_APP_RULES_FORMAT=md5
_APP_REDIS_HOST=redis
_APP_REDIS_PORT=6379
+1 -6
View File
@@ -13,9 +13,4 @@ jobs:
- name: Run CodeQL
run: |
docker run --rm -v $PWD:/app composer:2.6 sh -c \
"composer install --profile --ignore-platform-reqs && composer check"
- name: Run Locale check
run: |
docker run --rm -v $PWD:/app node:24-alpine sh -c \
"cd /app/.github/workflows/static-analysis/locale && node index.js"
"composer install --profile --ignore-platform-reqs && composer check"
@@ -1,115 +0,0 @@
/*
* Look into all local files, and collect unique keys.
* Ensure fallback locale (English) has translation for all keys.
* If configured as `const strict = true`, all locales will be checked to include all keys.
*/
import { readdir, readFile } from "fs/promises";
import { join, dirname } from "path";
import { fileURLToPath } from "url";
const config = {
strict: false,
fallbackLocale: "en.json",
};
(async () => {
try {
// Prepare current directory equivalent in ES modules
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
const translationsPath = join(
__dirname,
"../../../../app/config/locale/translations",
);
const files = (await readdir(translationsPath)).filter((file) =>
file.endsWith(".json"),
);
if (files.length === 0) {
console.error("No translation files found in ", translationsPath);
process.exit(1);
}
// Check if fallback locale exists
if (!files.includes(config.fallbackLocale)) {
console.error(`Fallback locale file ${config.fallbackLocale} not found`);
process.exit(1);
}
console.log(
`Found ${files.length} translation files in ${translationsPath}`,
);
// Collect all unique keys from all translation files
const allKeys = new Set();
for (const file of files) {
const filePath = join(translationsPath, file);
const content = await readFile(filePath, "utf8");
const translations = JSON.parse(content);
// Add all keys from this file
Object.keys(translations).forEach((key) => allKeys.add(key));
}
console.log(`Total unique keys found across all locales: ${allKeys.size}`);
const localesToCheck = [];
if (config.strict) {
localesToCheck.push(...files);
} else {
localesToCheck.push(config.fallbackLocale);
}
let errorsCount = 0;
let missingLocaleCount = 0;
for (const localeToCheck of localesToCheck) {
// Read locale
const path = join(translationsPath, localeToCheck);
const content = await readFile(path, "utf8");
const translations = JSON.parse(content);
// Check for missing keys in the locale
const keys = new Set(Object.keys(translations));
console.log(`Keys in locale (${localeToCheck}): ${keys.size}`);
const missingKeys = [];
for (const key of allKeys) {
if (!keys.has(key)) {
missingKeys.push(key);
}
}
if (missingKeys.length > 0) {
console.error(
`\nERROR: Fallback locale (${localeToCheck}) is missing ${missingKeys.length} key(s):`,
);
missingKeys.sort().forEach((key) => {
console.error(` - ${key}`);
});
console.error(
`\nTo fix this issue, add the missing keys to ${translationsPath}/${localeToCheck}`,
);
errorsCount++;
missingLocaleCount += missingKeys.length;
} else {
console.log(
`\nSUCCESS: Fallback locale (${localeToCheck}) contains all ${allKeys.size} keys.`,
);
}
}
if (errorsCount > 0) {
console.log(`\n${missingLocaleCount} locales missing found across ${errorsCount} locales.`);
process.exit(1);
}
} catch (error) {
console.error("Unexpected error.");
console.error(error);
process.exit(1);
}
})();
@@ -1,13 +0,0 @@
{
"name": "static-analysis-locale",
"version": "1.0.0",
"type": "module",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC",
"description": ""
}
+4 -58
View File
@@ -134,14 +134,6 @@ jobs:
- name: Run General Tests
run: docker compose exec -T appwrite test /usr/src/code/tests/e2e/General --debug
- name: Failure Logs
if: failure()
run: |
echo "=== Appwrite Worker Builds Logs ==="
docker compose logs appwrite-worker-builds
echo "=== OpenRuntimes Executor Logs ==="
docker compose logs openruntimes-executor
e2e_service_test:
name: E2E Service Test
runs-on: ubuntu-latest
@@ -153,7 +145,8 @@ jobs:
Account,
Avatars,
Console,
Databases,
Databases/Legacy,
Databases/Grids,
Functions,
FunctionsSchedule,
GraphQL,
@@ -209,14 +202,6 @@ jobs:
-e _APP_DATABASE_SHARED_TABLES_V1 \
appwrite test /usr/src/code/tests/e2e/Services/${{ matrix.service }} --debug --exclude-group devKeys,screenshots
- name: Failure Logs
if: failure()
run: |
echo "=== Appwrite Worker Builds Logs ==="
docker compose logs appwrite-worker-builds
echo "=== OpenRuntimes Executor Logs ==="
docker compose logs openruntimes-executor
e2e_shared_mode_test:
name: E2E Shared Mode Service Test
runs-on: ubuntu-latest
@@ -230,7 +215,8 @@ jobs:
Account,
Avatars,
Console,
Databases,
Databases/Legacy,
Databases/Grids,
Functions,
FunctionsSchedule,
GraphQL,
@@ -296,14 +282,6 @@ jobs:
-e _APP_DATABASE_SHARED_TABLES_V1 \
appwrite test /usr/src/code/tests/e2e/Services/${{ matrix.service }} --debug --exclude-group devKeys,screenshots
- name: Failure Logs
if: failure()
run: |
echo "=== Appwrite Worker Builds Logs ==="
docker compose logs appwrite-worker-builds
echo "=== OpenRuntimes Executor Logs ==="
docker compose logs openruntimes-executor
e2e_dev_keys:
name: E2E Service Test (Dev Keys)
runs-on: ubuntu-latest
@@ -337,14 +315,6 @@ jobs:
-e _APP_DATABASE_SHARED_TABLES_V1 \
appwrite test /usr/src/code/tests/e2e/Services/Projects --debug --group=devKeys
- name: Failure Logs
if: failure()
run: |
echo "=== Appwrite Worker Builds Logs ==="
docker compose logs appwrite-worker-builds
echo "=== OpenRuntimes Executor Logs ==="
docker compose logs openruntimes-executor
e2e_dev_keys_shared_mode:
name: E2E Shared Mode Service Test (Dev Keys)
runs-on: ubuntu-latest
@@ -392,14 +362,6 @@ jobs:
-e _APP_DATABASE_SHARED_TABLES_V1 \
appwrite test /usr/src/code/tests/e2e/Services/Projects --debug --group=devKeys
- name: Failure Logs
if: failure()
run: |
echo "=== Appwrite Worker Builds Logs ==="
docker compose logs appwrite-worker-builds
echo "=== OpenRuntimes Executor Logs ==="
docker compose logs openruntimes-executor
e2e_screenshots_keys:
name: E2E Service Test (Site Screenshots)
runs-on: ubuntu-latest
@@ -434,14 +396,6 @@ jobs:
-e _APP_DATABASE_SHARED_TABLES_V1 \
appwrite test /usr/src/code/tests/e2e/Services/Sites --debug --group=screenshots
- name: Failure Logs
if: failure()
run: |
echo "=== Appwrite Worker Builds Logs ==="
docker compose logs appwrite-worker-builds
echo "=== OpenRuntimes Executor Logs ==="
docker compose logs openruntimes-executor
e2e_screenshots_shared_mode:
name: E2E Shared Mode Service Test (Site Screenshots)
runs-on: ubuntu-latest
@@ -489,11 +443,3 @@ jobs:
-e _APP_DATABASE_SHARED_TABLES \
-e _APP_DATABASE_SHARED_TABLES_V1 \
appwrite test /usr/src/code/tests/e2e/Services/Sites --debug --group=screenshots
- name: Failure Logs
if: failure()
run: |
echo "=== Appwrite Worker Builds Logs ==="
docker compose logs appwrite-worker-builds
echo "=== OpenRuntimes Executor Logs ==="
docker compose logs openruntimes-executor
+3 -3
View File
@@ -72,7 +72,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:1.7.4
appwrite/appwrite:1.8.0
```
### Windows
@@ -84,7 +84,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:1.7.4
appwrite/appwrite:1.8.0
```
#### PowerShell
@@ -94,7 +94,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:1.7.4
appwrite/appwrite:1.8.0
```
运行后,可以在浏览器上访问 http://localhost 找到 Appwrite 控制台。在非 Linux 的本机主机上完成安装后,服务器可能需要几分钟才能启动。
+3 -3
View File
@@ -81,7 +81,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:1.7.4
appwrite/appwrite:1.8.0
```
### Windows
@@ -93,7 +93,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:1.7.4
appwrite/appwrite:1.8.0
```
#### PowerShell
@@ -103,7 +103,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:1.7.4
appwrite/appwrite:1.8.0
```
Once the Docker installation is complete, 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 completing the installation.
-3
View File
@@ -194,9 +194,6 @@ CLI::setResource('publisher', function (Group $pools) {
CLI::setResource('publisherDatabases', function (BrokerPool $publisher) {
return $publisher;
}, ['publisher']);
CLI::setResource('publisherFunctions', function (BrokerPool $publisher) {
return $publisher;
}, ['publisher']);
CLI::setResource('publisherMigrations', function (BrokerPool $publisher) {
return $publisher;
}, ['publisher']);
+2 -1
View File
@@ -39,7 +39,8 @@ $console = [
'invites' => System::getEnv('_APP_CONSOLE_INVITES', 'enabled') === 'enabled',
'limit' => (System::getEnv('_APP_CONSOLE_WHITELIST_ROOT', 'enabled') === 'enabled') ? 1 : 0, // limit signup to 1 user
'duration' => Auth::TOKEN_EXPIRATION_LOGIN_LONG, // 1 Year in seconds
'sessionAlerts' => System::getEnv('_APP_CONSOLE_SESSION_ALERTS', 'disabled') === 'enabled'
'sessionAlerts' => System::getEnv('_APP_CONSOLE_SESSION_ALERTS', 'disabled') === 'enabled',
'invalidateSessions' => true
],
'authWhitelistEmails' => (!empty(System::getEnv('_APP_CONSOLE_WHITELIST_EMAILS', null))) ? \explode(',', System::getEnv('_APP_CONSOLE_WHITELIST_EMAILS', null)) : [],
'authWhitelistIPs' => (!empty(System::getEnv('_APP_CONSOLE_WHITELIST_IPS', null))) ? \explode(',', System::getEnv('_APP_CONSOLE_WHITELIST_IPS', null)) : [],
+146 -6
View File
@@ -69,9 +69,14 @@ return [
'description' => 'The request contains one or more invalid arguments. Please refer to the endpoint documentation.',
'code' => 400,
],
Exception::GENERAL_QUERY_LIMIT_EXCEEDED => [
'name' => Exception::GENERAL_QUERY_LIMIT_EXCEEDED,
'description' => 'Query limit exceeded for the current attribute. Usage of more than 100 query values on a single attribute is prohibited.',
Exception::GENERAL_ATTRIBUTE_QUERY_LIMIT_EXCEEDED => [
'name' => Exception::GENERAL_ATTRIBUTE_QUERY_LIMIT_EXCEEDED,
'description' => 'Query limit exceeded for the current attribute.',
'code' => 400,
],
Exception::GENERAL_COLUMN_QUERY_LIMIT_EXCEEDED => [
'name' => Exception::GENERAL_COLUMN_QUERY_LIMIT_EXCEEDED,
'description' => 'Query limit exceeded for the current column.',
'code' => 400,
],
Exception::GENERAL_QUERY_INVALID => [
@@ -668,7 +673,7 @@ return [
],
Exception::DATABASE_QUERY_ORDER_NULL => [
'name' => Exception::DATABASE_QUERY_ORDER_NULL,
'description' => 'The order attribute had a null value. Cursor pagination requires all documents order attribute values are non-null.',
'description' => 'The order attribute/column had a null value. Cursor pagination requires all documents/rows order attribute/column values are non-null.',
'code' => 400,
],
@@ -689,6 +694,23 @@ return [
'code' => 400,
],
/** Tables */
Exception::TABLE_NOT_FOUND => [
'name' => Exception::TABLE_NOT_FOUND,
'description' => 'Table with the requested ID could not be found.',
'code' => 404,
],
Exception::TABLE_ALREADY_EXISTS => [
'name' => Exception::TABLE_ALREADY_EXISTS,
'description' => 'A table with the requested ID already exists. Try again with a different ID or use ID.unique() to generate a unique ID.',
'code' => 409,
],
Exception::TABLE_LIMIT_EXCEEDED => [
'name' => Exception::TABLE_LIMIT_EXCEEDED,
'description' => 'The maximum number of tables has been reached.',
'code' => 400,
],
/** Documents */
Exception::DOCUMENT_NOT_FOUND => [
'name' => Exception::DOCUMENT_NOT_FOUND,
@@ -726,6 +748,43 @@ return [
'code' => 403,
],
/** Rows */
Exception::ROW_NOT_FOUND => [
'name' => Exception::ROW_NOT_FOUND,
'description' => 'Row with the requested ID could not be found.',
'code' => 404,
],
Exception::ROW_INVALID_STRUCTURE => [
'name' => Exception::ROW_INVALID_STRUCTURE,
'description' => 'The row structure is invalid. Please ensure the columns match the table definition.',
'code' => 400,
],
Exception::ROW_MISSING_DATA => [
'name' => Exception::ROW_MISSING_DATA,
'description' => 'The row data is missing. Try again with row data populated',
'code' => 400,
],
Exception::ROW_MISSING_PAYLOAD => [
'name' => Exception::ROW_MISSING_PAYLOAD,
'description' => 'The row data and permissions are missing. You must provide either row data or permissions to be updated.',
'code' => 400,
],
Exception::ROW_ALREADY_EXISTS => [
'name' => Exception::ROW_ALREADY_EXISTS,
'description' => 'Row with the requested ID already exists. Try again with a different ID or use ID.unique() to generate a unique ID.',
'code' => 409,
],
Exception::ROW_UPDATE_CONFLICT => [
'name' => Exception::ROW_UPDATE_CONFLICT,
'description' => 'Remote row is newer than local.',
'code' => 409,
],
Exception::ROW_DELETE_RESTRICTED => [
'name' => Exception::ROW_DELETE_RESTRICTED,
'description' => 'Row cannot be deleted because it is referenced by another row.',
'code' => 403,
],
/** Attributes */
Exception::ATTRIBUTE_NOT_FOUND => [
'name' => Exception::ATTRIBUTE_NOT_FOUND,
@@ -772,13 +831,67 @@ return [
'description' => 'The attribute type is invalid.',
'code' => 400,
],
Exception::ATTRIBUTE_INVALID_RESIZE => [
'name' => Exception::ATTRIBUTE_INVALID_RESIZE,
'description' => 'Existing data is too large for new size, truncate your existing data then try again.',
'code' => 400,
],
/** Exists for both Attributes & Columns */
Exception::RELATIONSHIP_VALUE_INVALID => [
'name' => Exception::RELATIONSHIP_VALUE_INVALID,
'description' => 'The relationship value is invalid.',
'code' => 400,
],
Exception::ATTRIBUTE_INVALID_RESIZE => [
'name' => Exception::ATTRIBUTE_INVALID_RESIZE,
/** Columns */
Exception::COLUMN_NOT_FOUND => [
'name' => Exception::COLUMN_NOT_FOUND,
'description' => 'Column with the requested ID could not be found.',
'code' => 404,
],
Exception::COLUMN_UNKNOWN => [
'name' => Exception::COLUMN_UNKNOWN,
'description' => 'The column required for the index could not be found. Please confirm all your columns are in the available state.',
'code' => 400,
],
Exception::COLUMN_NOT_AVAILABLE => [
'name' => Exception::COLUMN_NOT_AVAILABLE,
'description' => 'The requested column is not yet available. Please try again later.',
'code' => 400,
],
Exception::COLUMN_FORMAT_UNSUPPORTED => [
'name' => Exception::COLUMN_FORMAT_UNSUPPORTED,
'description' => 'The requested column format is not supported.',
'code' => 400,
],
Exception::COLUMN_DEFAULT_UNSUPPORTED => [
'name' => Exception::COLUMN_DEFAULT_UNSUPPORTED,
'description' => 'Default values cannot be set for array or required columns.',
'code' => 400,
],
Exception::COLUMN_ALREADY_EXISTS => [
'name' => Exception::COLUMN_ALREADY_EXISTS,
'description' => 'Column with the requested key already exists. Column keys must be unique, try again with a different key.',
'code' => 409,
],
Exception::COLUMN_LIMIT_EXCEEDED => [
'name' => Exception::COLUMN_LIMIT_EXCEEDED,
'description' => 'The maximum number or size of columns for this table has been reached.',
'code' => 400,
],
Exception::COLUMN_VALUE_INVALID => [
'name' => Exception::COLUMN_VALUE_INVALID,
'description' => 'The column value is invalid. Please check the type, range and value of the column.',
'code' => 400,
],
Exception::COLUMN_TYPE_INVALID => [
'name' => Exception::COLUMN_TYPE_INVALID,
'description' => 'The column type is invalid.',
'code' => 400,
],
Exception::COLUMN_INVALID_RESIZE => [
'name' => Exception::COLUMN_INVALID_RESIZE,
'description' => "Existing data is too large for new size, truncate your existing data then try again.",
'code' => 400,
],
@@ -810,6 +923,33 @@ return [
'code' => 409,
],
/** Column Indexes, same as Indexes but with different type */
Exception::COLUMN_INDEX_NOT_FOUND => [
'name' => Exception::COLUMN_INDEX_NOT_FOUND,
'description' => 'Index with the requested ID could not be found.',
'code' => 404,
],
Exception::COLUMN_INDEX_LIMIT_EXCEEDED => [
'name' => Exception::COLUMN_INDEX_LIMIT_EXCEEDED,
'description' => 'The maximum number of indexes has been reached.',
'code' => 400,
],
Exception::COLUMN_INDEX_ALREADY_EXISTS => [
'name' => Exception::COLUMN_INDEX_ALREADY_EXISTS,
'description' => 'Index with the requested key already exists. Try again with a different key.',
'code' => 409,
],
Exception::COLUMN_INDEX_INVALID => [
'name' => Exception::COLUMN_INDEX_INVALID,
'description' => 'Index invalid.',
'code' => 400,
],
Exception::COLUMN_INDEX_DEPENDENCY => [
'name' => Exception::COLUMN_INDEX_DEPENDENCY,
'description' => 'Column cannot be renamed or deleted. Please remove the associated index first.',
'code' => 409,
],
/** Project Errors */
Exception::PROJECT_NOT_FOUND => [
'name' => Exception::PROJECT_NOT_FOUND,
+53 -6
View File
@@ -95,6 +95,56 @@ return [
'$model' => Response::MODEL_DATABASE,
'$resource' => true,
'$description' => 'This event triggers on any database event.',
'tables' => [
'$model' => Response::MODEL_TABLE,
'$resource' => true,
'$description' => 'This event triggers on any table event.',
'rows' => [
'$model' => Response::MODEL_ROW,
'$resource' => true,
'$description' => 'This event triggers on any rows event.',
'create' => [
'$description' => 'This event triggers when a row is created.',
],
'delete' => [
'$description' => 'This event triggers when a row is deleted.'
],
'update' => [
'$description' => 'This event triggers when a row is updated.'
],
],
'indexes' => [
'$model' => Response::MODEL_COLUMN_INDEX,
'$resource' => true,
'$description' => 'This event triggers on any indexes event.',
'create' => [
'$description' => 'This event triggers when an index is created.',
],
'delete' => [
'$description' => 'This event triggers when an index is deleted.'
]
],
'columns' => [
'$model' => Response::MODEL_COLUMN,
'$resource' => true,
'$description' => 'This event triggers on any columns event.',
'create' => [
'$description' => 'This event triggers when a column is created.',
],
'delete' => [
'$description' => 'This event triggers when an column is deleted.'
]
],
'create' => [
'$description' => 'This event triggers when a table is created.'
],
'delete' => [
'$description' => 'This event triggers when a table is deleted.',
],
'update' => [
'$description' => 'This event triggers when a table is updated.',
]
],
'collections' => [
'$model' => Response::MODEL_COLLECTION,
'$resource' => true,
@@ -106,15 +156,12 @@ return [
'create' => [
'$description' => 'This event triggers when a document is created.',
],
'update' => [
'$description' => 'This event triggers when a document is updated.'
],
'upsert' => [
'$description' => 'This event triggers when a document is upserted.',
],
'delete' => [
'$description' => 'This event triggers when a document is deleted.'
],
'update' => [
'$description' => 'This event triggers when a document is updated.'
],
],
'indexes' => [
'$model' => Response::MODEL_INDEX,
+2
View File
@@ -12,6 +12,8 @@
"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",
@@ -12,6 +12,8 @@
"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": "تبدال كلمة السر",
+2
View File
@@ -12,6 +12,8 @@
"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": "تغيير كلمة السر",
+2
View File
@@ -12,6 +12,8 @@
"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": "পাছৱাৰ্ড ৰিছেট",
+2
View File
@@ -12,6 +12,8 @@
"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ı",
+2
View File
@@ -12,6 +12,8 @@
"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": "Скід пароля",
+2
View File
@@ -11,6 +11,8 @@
"emails.verification.signature": "",
"emails.magicSession.subject": "",
"emails.magicSession.hello": ",",
"emails.magicSession.body": "",
"emails.magicSession.footer": "",
"emails.magicSession.thanks": ",",
"emails.magicSession.signature": "",
"emails.recovery.subject": "",
+2
View File
@@ -12,6 +12,8 @@
"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": "पासवर्ड बदल क लेल|",
+2
View File
@@ -12,6 +12,8 @@
"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": "পাসওয়ার্ড রিসেট",
+2
View File
@@ -11,6 +11,8 @@
"emails.verification.signature": "",
"emails.magicSession.subject": "",
"emails.magicSession.hello": ",",
"emails.magicSession.body": "",
"emails.magicSession.footer": "",
"emails.magicSession.thanks": ",",
"emails.magicSession.signature": "",
"emails.recovery.subject": "",
+2
View File
@@ -12,6 +12,8 @@
"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",
+2
View File
@@ -11,6 +11,8 @@
"emails.verification.signature": "",
"emails.magicSession.subject": "",
"emails.magicSession.hello": ",",
"emails.magicSession.body": "",
"emails.magicSession.footer": "",
"emails.magicSession.thanks": ",",
"emails.magicSession.signature": "",
"emails.recovery.subject": "",
+2
View File
@@ -12,6 +12,8 @@
"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",
+3 -2
View File
@@ -12,6 +12,8 @@
"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",
@@ -245,6 +247,5 @@
"emails.otpSession.clientInfo": "Diese Anmeldung wurde über {{agentClient}} auf {{agentDevice}} {{agentOs}} angefordert. Wenn Sie die Anmeldung nicht angefordert haben, können Sie diese E-Mail getrost ignorieren.",
"emails.otpSession.securityPhrase": "Die Sicherheitsphrase für diese E-Mail lautet {{phrase}}. Sie können dieser E-Mail vertrauen, wenn diese Phrase mit der Phrase übereinstimmt, die beim Anmelden angezeigt wird.",
"emails.otpSession.thanks": "Danke,",
"emails.otpSession.signature": "{{project}} Team",
"mock": "Eine Beispielübersetzung für Testzwecke."
"emails.otpSession.signature": "{{project}} Team"
}
+2
View File
@@ -12,6 +12,8 @@
"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": "Αλλαγή κωδικού πρόσβασης",
+2 -3
View File
@@ -57,7 +57,7 @@
"emails.invitation.subject": "Invitation to %s Team at %s",
"emails.invitation.preview": "{{owner}} invited you to join {{team}} at {{project}}",
"emails.invitation.hello": "Hello {{user}},",
"emails.invitation.body": "This mail was sent to you because {{b}}{{owner}}{{/b}} invited you to become a member of the {{b}}{{team}}{{/b}} team at {{b}}{{project}}{{/b}}.",
"emails.invitation.body": "This mail was sent to you because {{b}}{{owner}}{{/b}} wanted to invite you to become a member of the {{b}}{{team}}{{/b}} team at {{b}}{{project}}{{/b}}.",
"emails.invitation.footer": "If you are not interested, you can ignore this message.",
"emails.invitation.thanks": "Thanks,",
"emails.invitation.buttonText": "Accept invite to {{team}}",
@@ -274,6 +274,5 @@
"continents.eu": "Europe",
"continents.na": "North America",
"continents.oc": "Oceania",
"continents.sa": "South America",
"mock": "A mock translation for testing purposes."
"continents.sa": "South America"
}
+2
View File
@@ -11,6 +11,8 @@
"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",
+2
View File
@@ -12,6 +12,8 @@
"emails.verification.signature": "El 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 iniciar sesión usando este correo, puedes ignorar este mensaje.",
"emails.magicSession.thanks": "Gracias.,",
"emails.magicSession.signature": "El equipo de {{project}}",
"emails.recovery.subject": "Restablecer contraseña",
+2
View File
@@ -12,6 +12,8 @@
"emails.verification.signature": "تیم {{user}}",
"emails.magicSession.subject": "ورود به حساب کاربری",
"emails.magicSession.hello": "سلام،",
"emails.magicSession.body": "برای ورود به حساب‌تان پیوند زیر را دنبال کنید.",
"emails.magicSession.footer": "اگر شما درخواست ورود به حساب کاربری با استفاده از این ایمیل را نداد‌ه‌اید، می‌توانید این پیام را نادیده بگیرید.",
"emails.magicSession.thanks": "سپاس فراوان،",
"emails.magicSession.signature": "تیم {{user}}",
"emails.recovery.subject": "بازیابی گذرواژه",
+2
View File
@@ -11,6 +11,8 @@
"emails.verification.signature": "",
"emails.magicSession.subject": "",
"emails.magicSession.hello": ",",
"emails.magicSession.body": "",
"emails.magicSession.footer": "",
"emails.magicSession.thanks": ",",
"emails.magicSession.signature": "",
"emails.recovery.subject": "",
+2
View File
@@ -11,6 +11,8 @@
"emails.verification.signature": "",
"emails.magicSession.subject": "",
"emails.magicSession.hello": ",",
"emails.magicSession.body": "",
"emails.magicSession.footer": "",
"emails.magicSession.thanks": ",",
"emails.magicSession.signature": "",
"emails.recovery.subject": "",
+2
View File
@@ -12,6 +12,8 @@
"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": "L'équipe {{project}}",
"emails.recovery.subject": "Réinitialisation du mot de passe",
+2
View File
@@ -12,6 +12,8 @@
"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",
+2
View File
@@ -12,6 +12,8 @@
"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": "પાસવર્ડ ફરીથી સેટ કરો",
+2
View File
@@ -12,6 +12,8 @@
"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": "איפוס סיסמא",
+2
View File
@@ -12,6 +12,8 @@
"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": "पासवर्ड रीसेट",
+2
View File
@@ -12,6 +12,8 @@
"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",
+2
View File
@@ -12,6 +12,8 @@
"emails.verification.signature": "a {{project}} csapat",
"emails.magicSession.subject": "Bejelentkezés",
"emails.magicSession.hello": "Szia,",
"emails.magicSession.body": "Kattints a linkre a bejelentkezéshez.",
"emails.magicSession.footer": "Ha nem te szerettél volna bejelentkezni ezzel az email címmel, akkor nyugodtan hagyd figyelmen kívül ezt az üzenetet.",
"emails.magicSession.thanks": "Köszönettel,",
"emails.magicSession.signature": "a {{project}} csapat",
"emails.recovery.subject": "Jelszó Visszaállítása",
+2
View File
@@ -11,6 +11,8 @@
"emails.verification.signature": "",
"emails.magicSession.subject": "",
"emails.magicSession.hello": ",",
"emails.magicSession.body": "",
"emails.magicSession.footer": "",
"emails.magicSession.thanks": ",",
"emails.magicSession.signature": "",
"emails.recovery.subject": "",
+2
View File
@@ -12,6 +12,8 @@
"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",
+2
View File
@@ -11,6 +11,8 @@
"emails.verification.signature": "",
"emails.magicSession.subject": "",
"emails.magicSession.hello": ",",
"emails.magicSession.body": "",
"emails.magicSession.footer": "",
"emails.magicSession.thanks": ",",
"emails.magicSession.signature": "",
"emails.recovery.subject": "",
+2
View File
@@ -12,6 +12,8 @@
"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 laccesso, puoi ignorare questo messaggio.",
"emails.magicSession.thanks": "Grazie,",
"emails.magicSession.signature": "Il team {{project}}",
"emails.recovery.subject": "Reimpostazione password",
+2
View File
@@ -12,6 +12,8 @@
"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": "パスワードリセット",
+2
View File
@@ -12,6 +12,8 @@
"emails.verification.signature": "Tim {{project}}",
"emails.magicSession.subject": "Masuk",
"emails.magicSession.hello": "Hai,",
"emails.magicSession.body": "Klik link iki kanggo masuk.",
"emails.magicSession.footer": "Yen sampeyan ora njaluk masuk nggunakake alamat email iki, sampeyan iso nglirwakake pesen iki.",
"emails.magicSession.thanks": "Matur nuwun,",
"emails.magicSession.signature": "Tim {{project}}",
"emails.recovery.subject": "Setel ulang sandi",
+2
View File
@@ -11,6 +11,8 @@
"emails.verification.signature": "",
"emails.magicSession.subject": "",
"emails.magicSession.hello": "",
"emails.magicSession.body": "",
"emails.magicSession.footer": "",
"emails.magicSession.thanks": "",
"emails.magicSession.signature": "",
"emails.recovery.subject": "",
+2
View File
@@ -12,6 +12,8 @@
"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": "ಗುಪ್ತಪದ ಮರುಹೊಂದಿಸಿ",
+2
View File
@@ -12,6 +12,8 @@
"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": "비밀번호 재설정",
+2
View File
@@ -12,6 +12,8 @@
"emails.verification.signature": "{{project}} Team",
"emails.magicSession.subject": "Log in",
"emails.magicSession.hello": "Salve ibi,",
"emails.magicSession.body": "Hanc nexum cum login",
"emails.magicSession.footer": "Si verificationem huius inscriptionis non postulasti, nuntium hunc ignorare potes.",
"emails.magicSession.thanks": "Gratias,",
"emails.magicSession.signature": "{{project}} team",
"emails.recovery.subject": "Recuperet password",
+2
View File
@@ -12,6 +12,8 @@
"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",
+2
View File
@@ -12,6 +12,8 @@
"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",
+2
View File
@@ -12,6 +12,8 @@
"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",
+2
View File
@@ -12,6 +12,8 @@
"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": "രഹസ്യവാക്ക് പുനക്രമീകരണം",
+2
View File
@@ -12,6 +12,8 @@
"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": "पासवर्ड रीसेट",
+2
View File
@@ -12,6 +12,8 @@
"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",
+2
View File
@@ -12,6 +12,8 @@
"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",
+2
View File
@@ -12,6 +12,8 @@
"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": "पासवर्ड रिसेट",
+2
View File
@@ -12,6 +12,8 @@
"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",
+2
View File
@@ -12,6 +12,8 @@
"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",
+2
View File
@@ -12,6 +12,8 @@
"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": "ପାସୱାର୍ଡ ପୁନଃ ସେଟ୍ କରନ୍ତୁ |",
+2
View File
@@ -11,6 +11,8 @@
"emails.verification.signature": "",
"emails.magicSession.subject": "",
"emails.magicSession.hello": ",",
"emails.magicSession.body": "",
"emails.magicSession.footer": "",
"emails.magicSession.thanks": ",",
"emails.magicSession.signature": "",
"emails.recovery.subject": "",
+2
View File
@@ -12,6 +12,8 @@
"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",
@@ -12,6 +12,8 @@
"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",
@@ -12,6 +12,8 @@
"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",
+2
View File
@@ -12,6 +12,8 @@
"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ă",
+2
View File
@@ -12,6 +12,8 @@
"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": "Сброс пароля",
+2
View File
@@ -12,6 +12,8 @@
"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": "कूटशब्दपुनयाेजनम्‌",
+2
View File
@@ -12,6 +12,8 @@
"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": "پاسورڊ ري سيٽ",
+2
View File
@@ -12,6 +12,8 @@
"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": "මුරපද යළි පිහිටුවීම",
+2
View File
@@ -12,6 +12,8 @@
"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",
+2
View File
@@ -11,6 +11,8 @@
"emails.verification.signature": "",
"emails.magicSession.subject": "",
"emails.magicSession.hello": ",",
"emails.magicSession.body": "",
"emails.magicSession.footer": "",
"emails.magicSession.thanks": ",",
"emails.magicSession.signature": "",
"emails.recovery.subject": "",
+2
View File
@@ -12,6 +12,8 @@
"emails.verification.signature": "Chikwata che{{project}}",
"emails.magicSession.subject": "Pinda",
"emails.magicSession.hello": "Hesi,",
"emails.magicSession.body": "Baya chinongedzo ichi kuti upinde muakaundi yako.",
"emails.magicSession.footer": "Kana usina kukumbira kupinda muakaundi yako uchishandisa email iyi, unogona kufuratira meseji iyi.",
"emails.magicSession.thanks": "Ndatenda,",
"emails.magicSession.signature": "Chikwata che{{project}}",
"emails.recovery.subject": "Kuchinja pasiwedhi",
+2
View File
@@ -11,6 +11,8 @@
"emails.verification.signature": "",
"emails.magicSession.subject": "",
"emails.magicSession.hello": ",",
"emails.magicSession.body": "",
"emails.magicSession.footer": "",
"emails.magicSession.thanks": ",",
"emails.magicSession.signature": "",
"emails.recovery.subject": "",
+2
View File
@@ -12,6 +12,8 @@
"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",
+2
View File
@@ -12,6 +12,8 @@
"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": "கடவுச்சொல் மீட்டமைப்பு",
+2
View File
@@ -12,6 +12,8 @@
"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": "పాస్వర్డ్ రీసెట్",
+2
View File
@@ -12,6 +12,8 @@
"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": "รีเซ็ตรหัสผ่าน",
+2
View File
@@ -12,6 +12,8 @@
"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",
+2
View File
@@ -12,6 +12,8 @@
"emails.verification.signature": "{{project}} takımı",
"emails.magicSession.subject": "Giriş",
"emails.magicSession.hello": "Merhaba,",
"emails.magicSession.body": "Giriş yapmak için tıklayın.",
"emails.magicSession.footer": "Eğer bu eposta adresini kullanarak giriş yapmak istemediyseniz devam etmeyin.",
"emails.magicSession.thanks": "Teşekkürler,",
"emails.magicSession.signature": "{{project}} takımı",
"emails.recovery.subject": "Şifremi Sıfırla",
+2
View File
@@ -12,6 +12,8 @@
"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": "Скидання пароля",
+2
View File
@@ -12,6 +12,8 @@
"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": "پاس ورڈ ری سیٹ۔",
+2
View File
@@ -12,6 +12,8 @@
"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",
@@ -12,6 +12,8 @@
"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": "重设密码",
@@ -12,6 +12,8 @@
"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": "重設密碼",
+8 -30
View File
@@ -25,7 +25,6 @@ return [
'gitRepoName' => 'sdk-for-web',
'gitUserName' => 'appwrite',
'gitBranch' => 'dev',
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/web/CHANGELOG.md'),
'demos' => [
[
'icon' => 'react.svg',
@@ -74,7 +73,6 @@ return [
'gitRepoName' => 'sdk-for-flutter',
'gitUserName' => 'appwrite',
'gitBranch' => 'dev',
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/flutter/CHANGELOG.md'),
],
[
'key' => 'apple',
@@ -93,7 +91,6 @@ return [
'gitRepoName' => 'sdk-for-apple',
'gitUserName' => 'appwrite',
'gitBranch' => 'dev',
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/apple/CHANGELOG.md'),
],
[
'key' => 'objective-c',
@@ -111,12 +108,11 @@ return [
'gitRepoName' => 'sdk-for-objective-c',
'gitUserName' => 'appwrite',
'gitBranch' => 'dev',
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/objective-c/CHANGELOG.md'),
],
[
'key' => 'android',
'name' => 'Android',
'version' => '8.2.2',
'version' => '8.2.0',
'url' => 'https://github.com/appwrite/sdk-for-android',
'package' => 'https://search.maven.org/artifact/io.appwrite/sdk-for-android',
'enabled' => true,
@@ -134,7 +130,6 @@ return [
'Kotlin' => 'kotlin',
'Java' => 'java',
],
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/android/CHANGELOG.md'),
],
[
'key' => 'react-native',
@@ -153,7 +148,6 @@ return [
'gitRepoName' => 'sdk-for-react-native',
'gitUserName' => 'appwrite',
'gitBranch' => 'dev',
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/react-native/CHANGELOG.md'),
],
[
'key' => 'graphql',
@@ -173,7 +167,6 @@ return [
'gitUserName' => '',
'gitBranch' => '',
'isSDK' => false,
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/graphql/CHANGELOG.md'),
],
[
'key' => 'rest',
@@ -193,7 +186,6 @@ return [
'gitUserName' => '',
'gitBranch' => '',
'isSDK' => false,
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/rest/CHANGELOG.md'),
],
],
],
@@ -207,8 +199,8 @@ return [
[
'key' => 'web',
'name' => 'Console',
'version' => '0.1.0',
'url' => '',
'version' => '1.9.0',
'url' => 'https://github.com/appwrite/sdk-for-console',
'package' => '',
'enabled' => true,
'beta' => false,
@@ -217,11 +209,10 @@ return [
'family' => APP_PLATFORM_CONSOLE,
'prism' => 'javascript',
'source' => \realpath(__DIR__ . '/../sdks/console-web'),
'gitUrl' => '',
'gitUrl' => 'git@github.com:appwrite/sdk-for-console.git',
'gitBranch' => 'dev',
'gitRepoName' => '',
'gitUserName' => '',
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/console/CHANGELOG.md'),
'gitRepoName' => 'sdk-for-console',
'gitUserName' => 'appwrite',
],
[
'key' => 'cli',
@@ -241,7 +232,6 @@ return [
'gitUserName' => 'appwrite',
'gitBranch' => 'dev',
'repoBranch' => 'master',
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/cli/CHANGELOG.md'),
'exclude' => [
'services' => [
['name' => 'assistant'],
@@ -275,7 +265,6 @@ return [
'gitRepoName' => 'sdk-for-node',
'gitUserName' => 'appwrite',
'gitBranch' => 'dev',
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/nodejs/CHANGELOG.md'),
],
[
'key' => 'deno',
@@ -294,7 +283,6 @@ return [
'gitRepoName' => 'sdk-for-deno',
'gitUserName' => 'appwrite',
'gitBranch' => 'dev',
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/deno/CHANGELOG.md'),
],
[
'key' => 'php',
@@ -313,7 +301,6 @@ return [
'gitRepoName' => 'sdk-for-php',
'gitUserName' => 'appwrite',
'gitBranch' => 'dev',
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/php/CHANGELOG.md'),
],
[
'key' => 'python',
@@ -332,7 +319,6 @@ return [
'gitRepoName' => 'sdk-for-python',
'gitUserName' => 'appwrite',
'gitBranch' => 'dev',
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/python/CHANGELOG.md'),
],
[
'key' => 'ruby',
@@ -351,7 +337,6 @@ return [
'gitRepoName' => 'sdk-for-ruby',
'gitUserName' => 'appwrite',
'gitBranch' => 'dev',
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/ruby/CHANGELOG.md'),
],
[
'key' => 'go',
@@ -370,12 +355,11 @@ return [
'gitRepoName' => 'sdk-for-go',
'gitUserName' => 'appwrite',
'gitBranch' => 'dev',
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/go/CHANGELOG.md'),
],
[
'key' => 'dotnet',
'name' => '.NET',
'version' => '0.15.0',
'version' => '0.14.1',
'url' => 'https://github.com/appwrite/sdk-for-dotnet',
'package' => 'https://www.nuget.org/packages/Appwrite',
'enabled' => true,
@@ -389,7 +373,6 @@ return [
'gitRepoName' => 'sdk-for-dotnet',
'gitUserName' => 'appwrite',
'gitBranch' => 'dev',
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/dotnet/CHANGELOG.md'),
],
[
'key' => 'dart',
@@ -408,12 +391,11 @@ return [
'gitRepoName' => 'sdk-for-dart',
'gitUserName' => 'appwrite',
'gitBranch' => 'dev',
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/dart/CHANGELOG.md'),
],
[
'key' => 'kotlin',
'name' => 'Kotlin',
'version' => '9.1.2',
'version' => '9.1.0',
'url' => 'https://github.com/appwrite/sdk-for-kotlin',
'package' => 'https://search.maven.org/artifact/io.appwrite/sdk-for-kotlin',
'enabled' => true,
@@ -431,7 +413,6 @@ return [
'Kotlin' => 'kotlin',
'Java' => 'java',
],
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/kotlin/CHANGELOG.md'),
],
[
'key' => 'swift',
@@ -450,7 +431,6 @@ return [
'gitRepoName' => 'sdk-for-swift',
'gitUserName' => 'appwrite',
'gitBranch' => 'dev',
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/swift/CHANGELOG.md'),
],
[
'key' => 'graphql',
@@ -470,7 +450,6 @@ return [
'gitUserName' => '',
'gitBranch' => '',
'isSDK' => false,
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/graphql/CHANGELOG.md'),
],
[
'key' => 'rest',
@@ -490,7 +469,6 @@ return [
'gitUserName' => '',
'gitBranch' => '',
'isSDK' => false,
'changelog' => \realpath(__DIR__ . '/../../docs/sdks/rest/CHANGELOG.md'),
],
],
],
+8
View File
@@ -14,6 +14,8 @@ $member = [
'teams.write',
'documents.read',
'documents.write',
'rows.read',
'rows.write',
'files.read',
'files.write',
'projects.read',
@@ -37,6 +39,8 @@ $admins = [
'teams.write',
'documents.read',
'documents.write',
'rows.read',
'rows.write',
'files.read',
'files.write',
'buckets.read',
@@ -47,6 +51,8 @@ $admins = [
'databases.write',
'collections.read',
'collections.write',
'tables.read',
'tables.write',
'platforms.read',
'platforms.write',
'projects.write',
@@ -97,6 +103,8 @@ return [
'sessions.write',
'documents.read',
'documents.write',
'rows.read',
'rows.write',
'files.read',
'files.write',
'locale.read',
+18
View File
@@ -28,12 +28,24 @@ return [ // List of publicly visible scopes
'collections.write' => [
'description' => 'Access to create, update, and delete your project\'s database collections',
],
'tables.read' => [
'description' => 'Access to read your project\'s database tables',
],
'tables.write' => [
'description' => 'Access to create, update, and delete your project\'s database tables',
],
'attributes.read' => [
'description' => 'Access to read your project\'s database collection\'s attributes',
],
'attributes.write' => [
'description' => 'Access to create, update, and delete your project\'s database collection\'s attributes',
],
'columns.read' => [
'description' => 'Access to read your project\'s database table\'s columns',
],
'columns.write' => [
'description' => 'Access to create, update, and delete your project\'s database table\'s columns',
],
'indexes.read' => [
'description' => 'Access to read your project\'s database collection\'s indexes',
],
@@ -46,6 +58,12 @@ return [ // List of publicly visible scopes
'documents.write' => [
'description' => 'Access to create, update, and delete your project\'s database documents',
],
'rows.read' => [
'description' => 'Access to read your project\'s database rows',
],
'rows.write' => [
'description' => 'Access to create, update, and delete your project\'s database rows',
],
'files.read' => [
'description' => 'Access to read your project\'s storage files and preview images',
],
+15 -2
View File
@@ -55,10 +55,10 @@ return [
],
'databases' => [
'key' => 'databases',
'name' => 'Databases',
'name' => 'Databases (legacy)',
'subtitle' => 'The Databases service allows you to create structured collections of documents, query and filter lists of documents',
'description' => '/docs/services/databases.md',
'controller' => 'api/databases.php',
'controller' => '', // Uses modules
'sdk' => true,
'docs' => true,
'docsUrl' => 'https://appwrite.io/docs/client/databases',
@@ -66,6 +66,19 @@ return [
'optional' => true,
'icon' => '/images/services/databases.png',
],
'tables' => [
'key' => 'tables',
'name' => 'Tables',
'subtitle' => 'The Tables service allows you to create structured tables of rows, query and filter lists of rows',
'description' => '/docs/services/tables.md',
'controller' => '', // Uses modules
'sdk' => true,
'docs' => true,
'docsUrl' => 'https://appwrite.io/docs/client/tables',
'tests' => false,
'optional' => true,
'icon' => '/images/services/databases.png',
],
'locale' => [
'key' => 'locale',
'name' => 'Locale',
+62 -456
View File
@@ -4466,7 +4466,6 @@
"methods": [
{
"name": "createDocument",
"desc": "Create document",
"auth": {
"Project": []
},
@@ -4489,8 +4488,7 @@
"model": "#\/components\/schemas\/document"
}
],
"description": "Create a new Document. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection) API or directly from your database console.",
"demo": "databases\/create-document.md"
"description": "Create a new Document. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection) API or directly from your database console."
}
],
"auth": {
@@ -4667,7 +4665,7 @@
"tags": [
"databases"
],
"description": "Create or update a Document. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection) API or directly from your database console.",
"description": "**WARNING: Experimental Feature** - This endpoint is experimental and not yet officially supported. It may be subject to breaking changes or removal in future versions.\n\nCreate or update a Document. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection) API or directly from your database console.",
"responses": {
"200": {
"description": "Document",
@@ -5205,7 +5203,7 @@
"x-appwrite": {
"method": "listExecutions",
"group": "executions",
"weight": 394,
"weight": 393,
"cookies": false,
"type": "",
"deprecated": false,
@@ -5280,7 +5278,7 @@
"x-appwrite": {
"method": "createExecution",
"group": "executions",
"weight": 392,
"weight": 391,
"cookies": false,
"type": "",
"deprecated": false,
@@ -5363,7 +5361,7 @@
"scheduledAt": {
"type": "string",
"description": "Scheduled execution time in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future with precision in minutes.",
"x-example": "<SCHEDULED_AT>"
"x-example": null
}
}
}
@@ -5395,7 +5393,7 @@
"x-appwrite": {
"method": "getExecution",
"group": "executions",
"weight": 393,
"weight": 392,
"cookies": false,
"type": "",
"deprecated": false,
@@ -5469,7 +5467,7 @@
"x-appwrite": {
"method": "query",
"group": "graphql",
"weight": 308,
"weight": 307,
"cookies": false,
"type": "graphql",
"deprecated": false,
@@ -5521,7 +5519,7 @@
"x-appwrite": {
"method": "mutation",
"group": "graphql",
"weight": 307,
"weight": 306,
"cookies": false,
"type": "graphql",
"deprecated": false,
@@ -5989,7 +5987,7 @@
"x-appwrite": {
"method": "createSubscriber",
"group": "subscribers",
"weight": 354,
"weight": 353,
"cookies": false,
"type": "",
"deprecated": false,
@@ -6072,7 +6070,7 @@
"x-appwrite": {
"method": "deleteSubscriber",
"group": "subscribers",
"weight": 358,
"weight": 357,
"cookies": false,
"type": "",
"deprecated": false,
@@ -8035,8 +8033,7 @@
"any": {
"description": "Any",
"type": "object",
"additionalProperties": true,
"example": []
"additionalProperties": true
},
"error": {
"description": "Error",
@@ -8068,13 +8065,7 @@
"code",
"type",
"version"
],
"example": {
"message": "Not found",
"code": "404",
"type": "not_found",
"version": "1.0"
}
]
},
"documentList": {
"description": "Documents List",
@@ -8098,11 +8089,7 @@
"required": [
"total",
"documents"
],
"example": {
"total": 5,
"documents": ""
}
]
},
"sessionList": {
"description": "Sessions List",
@@ -8126,11 +8113,7 @@
"required": [
"total",
"sessions"
],
"example": {
"total": 5,
"sessions": ""
}
]
},
"identityList": {
"description": "Identities List",
@@ -8154,11 +8137,7 @@
"required": [
"total",
"identities"
],
"example": {
"total": 5,
"identities": ""
}
]
},
"logList": {
"description": "Logs List",
@@ -8182,11 +8161,7 @@
"required": [
"total",
"logs"
],
"example": {
"total": 5,
"logs": ""
}
]
},
"fileList": {
"description": "Files List",
@@ -8210,11 +8185,7 @@
"required": [
"total",
"files"
],
"example": {
"total": 5,
"files": ""
}
]
},
"teamList": {
"description": "Teams List",
@@ -8238,11 +8209,7 @@
"required": [
"total",
"teams"
],
"example": {
"total": 5,
"teams": ""
}
]
},
"membershipList": {
"description": "Memberships List",
@@ -8266,11 +8233,7 @@
"required": [
"total",
"memberships"
],
"example": {
"total": 5,
"memberships": ""
}
]
},
"executionList": {
"description": "Executions List",
@@ -8294,11 +8257,7 @@
"required": [
"total",
"executions"
],
"example": {
"total": 5,
"executions": ""
}
]
},
"countryList": {
"description": "Countries List",
@@ -8322,11 +8281,7 @@
"required": [
"total",
"countries"
],
"example": {
"total": 5,
"countries": ""
}
]
},
"continentList": {
"description": "Continents List",
@@ -8350,11 +8305,7 @@
"required": [
"total",
"continents"
],
"example": {
"total": 5,
"continents": ""
}
]
},
"languageList": {
"description": "Languages List",
@@ -8378,11 +8329,7 @@
"required": [
"total",
"languages"
],
"example": {
"total": 5,
"languages": ""
}
]
},
"currencyList": {
"description": "Currencies List",
@@ -8406,11 +8353,7 @@
"required": [
"total",
"currencies"
],
"example": {
"total": 5,
"currencies": ""
}
]
},
"phoneList": {
"description": "Phones List",
@@ -8434,11 +8377,7 @@
"required": [
"total",
"phones"
],
"example": {
"total": 5,
"phones": ""
}
]
},
"localeCodeList": {
"description": "Locale codes list",
@@ -8462,11 +8401,7 @@
"required": [
"total",
"localeCodes"
],
"example": {
"total": 5,
"localeCodes": ""
}
]
},
"document": {
"description": "Document",
@@ -8481,20 +8416,17 @@
"type": "integer",
"description": "Document automatically incrementing ID.",
"x-example": 1,
"format": "int32",
"readOnly": true
"format": "int32"
},
"$collectionId": {
"type": "string",
"description": "Collection ID.",
"x-example": "5e5ea5c15117e",
"readOnly": true
"x-example": "5e5ea5c15117e"
},
"$databaseId": {
"type": "string",
"description": "Database ID.",
"x-example": "5e5ea5c15117e",
"readOnly": true
"x-example": "5e5ea5c15117e"
},
"$createdAt": {
"type": "string",
@@ -8526,23 +8458,7 @@
"$createdAt",
"$updatedAt",
"$permissions"
],
"example": {
"$id": "5e5ea5c16897e",
"$sequence": 1,
"$collectionId": "5e5ea5c15117e",
"$databaseId": "5e5ea5c15117e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"$permissions": [
"read(\"any\")"
],
"username": "john.doe",
"email": "john.doe@example.com",
"fullName": "John Doe",
"age": 30,
"isAdmin": false
}
]
},
"log": {
"description": "Log",
@@ -8676,30 +8592,7 @@
"deviceModel",
"countryCode",
"countryName"
],
"example": {
"event": "account.sessions.create",
"userId": "610fc2f985ee0",
"userEmail": "john@appwrite.io",
"userName": "John Doe",
"mode": "admin",
"ip": "127.0.0.1",
"time": "2020-10-15T06:38:00.000+00:00",
"osCode": "Mac",
"osName": "Mac",
"osVersion": "Mac",
"clientType": "browser",
"clientCode": "CM",
"clientName": "Chrome Mobile iOS",
"clientVersion": "84.0",
"clientEngine": "WebKit",
"clientEngineVersion": "605.1.15",
"deviceName": "smartphone",
"deviceBrand": "Google",
"deviceModel": "Nexus 5",
"countryCode": "US",
"countryName": "United States"
}
]
},
"user": {
"description": "User",
@@ -8860,33 +8753,7 @@
"prefs",
"targets",
"accessedAt"
],
"example": {
"$id": "5e5ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"name": "John Doe",
"password": "$argon2id$v=19$m=2048,t=4,p=3$aUZjLnliVWRINmFNTWMudg$5S+x+7uA31xFnrHFT47yFwcJeaP0w92L\/4LdgrVRXxE",
"hash": "argon2",
"hashOptions": {},
"registration": "2020-10-15T06:38:00.000+00:00",
"status": true,
"labels": [
"vip"
],
"passwordUpdate": "2020-10-15T06:38:00.000+00:00",
"email": "john@appwrite.io",
"phone": "+4930901820",
"emailVerification": true,
"phoneVerification": true,
"mfa": true,
"prefs": {
"theme": "pink",
"timezone": "UTC"
},
"targets": [],
"accessedAt": "2020-10-15T06:38:00.000+00:00"
}
]
},
"algoMd5": {
"description": "AlgoMD5",
@@ -8900,10 +8767,7 @@
},
"required": [
"type"
],
"example": {
"type": "md5"
}
]
},
"algoSha": {
"description": "AlgoSHA",
@@ -8917,10 +8781,7 @@
},
"required": [
"type"
],
"example": {
"type": "sha"
}
]
},
"algoPhpass": {
"description": "AlgoPHPass",
@@ -8934,10 +8795,7 @@
},
"required": [
"type"
],
"example": {
"type": "phpass"
}
]
},
"algoBcrypt": {
"description": "AlgoBcrypt",
@@ -8951,10 +8809,7 @@
},
"required": [
"type"
],
"example": {
"type": "bcrypt"
}
]
},
"algoScrypt": {
"description": "AlgoScrypt",
@@ -8996,14 +8851,7 @@
"costMemory",
"costParallel",
"length"
],
"example": {
"type": "scrypt",
"costCpu": 8,
"costMemory": 14,
"costParallel": 1,
"length": 64
}
]
},
"algoScryptModified": {
"description": "AlgoScryptModified",
@@ -9035,13 +8883,7 @@
"salt",
"saltSeparator",
"signerKey"
],
"example": {
"type": "scryptMod",
"salt": "UxLMreBr6tYyjQ==",
"saltSeparator": "Bw==",
"signerKey": "XyEKE9RcTDeLEsL\/RjwPDBv\/RqDl8fb3gpYEOQaPihbxf1ZAtSOHCjuAAa7Q3oHpCYhXSN9tizHgVOwn6krflQ=="
}
]
},
"algoArgon2": {
"description": "AlgoArgon2",
@@ -9076,23 +8918,12 @@
"memoryCost",
"timeCost",
"threads"
],
"example": {
"type": "argon2",
"memoryCost": 65536,
"timeCost": 4,
"threads": 3
}
]
},
"preferences": {
"description": "Preferences",
"type": "object",
"additionalProperties": true,
"example": {
"language": "en",
"timezone": "UTC",
"darkTheme": true
}
"additionalProperties": true
},
"session": {
"description": "Session",
@@ -9279,40 +9110,7 @@
"factors",
"secret",
"mfaUpdatedAt"
],
"example": {
"$id": "5e5ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"userId": "5e5bb8c16897e",
"expire": "2020-10-15T06:38:00.000+00:00",
"provider": "email",
"providerUid": "user@example.com",
"providerAccessToken": "MTQ0NjJkZmQ5OTM2NDE1ZTZjNGZmZjI3",
"providerAccessTokenExpiry": "2020-10-15T06:38:00.000+00:00",
"providerRefreshToken": "MTQ0NjJkZmQ5OTM2NDE1ZTZjNGZmZjI3",
"ip": "127.0.0.1",
"osCode": "Mac",
"osName": "Mac",
"osVersion": "Mac",
"clientType": "browser",
"clientCode": "CM",
"clientName": "Chrome Mobile iOS",
"clientVersion": "84.0",
"clientEngine": "WebKit",
"clientEngineVersion": "605.1.15",
"deviceName": "smartphone",
"deviceBrand": "Google",
"deviceModel": "Nexus 5",
"countryCode": "US",
"countryName": "United States",
"current": true,
"factors": [
"email"
],
"secret": "5e5bb8c16897e",
"mfaUpdatedAt": "2020-10-15T06:38:00.000+00:00"
}
]
},
"identity": {
"description": "Identity",
@@ -9380,19 +9178,7 @@
"providerAccessToken",
"providerAccessTokenExpiry",
"providerRefreshToken"
],
"example": {
"$id": "5e5ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"userId": "5e5bb8c16897e",
"provider": "email",
"providerUid": "5e5bb8c16897e",
"providerEmail": "user@example.com",
"providerAccessToken": "MTQ0NjJkZmQ5OTM2NDE1ZTZjNGZmZjI3",
"providerAccessTokenExpiry": "2020-10-15T06:38:00.000+00:00",
"providerRefreshToken": "MTQ0NjJkZmQ5OTM2NDE1ZTZjNGZmZjI3"
}
]
},
"token": {
"description": "Token",
@@ -9436,15 +9222,7 @@
"secret",
"expire",
"phrase"
],
"example": {
"$id": "bb8ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"userId": "5e5ea5c168bb8",
"secret": "",
"expire": "2020-10-15T06:38:00.000+00:00",
"phrase": "Golden Fox"
}
]
},
"jwt": {
"description": "JWT",
@@ -9458,10 +9236,7 @@
},
"required": [
"jwt"
],
"example": {
"jwt": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"
}
]
},
"locale": {
"description": "Locale",
@@ -9511,16 +9286,7 @@
"continent",
"eu",
"currency"
],
"example": {
"ip": "127.0.0.1",
"countryCode": "US",
"country": "United States",
"continentCode": "NA",
"continent": "North America",
"eu": false,
"currency": "USD"
}
]
},
"localeCode": {
"description": "LocaleCode",
@@ -9540,11 +9306,7 @@
"required": [
"code",
"name"
],
"example": {
"code": "en-us",
"name": "US"
}
]
},
"file": {
"description": "File",
@@ -9626,22 +9388,7 @@
"sizeOriginal",
"chunksTotal",
"chunksUploaded"
],
"example": {
"$id": "5e5ea5c16897e",
"bucketId": "5e5ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"$permissions": [
"read(\"any\")"
],
"name": "Pink.png",
"signature": "5d529fd02b544198ae075bd57c1762bb",
"mimeType": "image\/png",
"sizeOriginal": 17890,
"chunksTotal": 17890,
"chunksUploaded": 17890
}
]
},
"team": {
"description": "Team",
@@ -9692,18 +9439,7 @@
"name",
"total",
"prefs"
],
"example": {
"$id": "5e5ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"name": "VIP",
"total": 7,
"prefs": {
"theme": "pink",
"timezone": "UTC"
}
}
]
},
"membership": {
"description": "Membership",
@@ -9794,24 +9530,7 @@
"confirm",
"mfa",
"roles"
],
"example": {
"$id": "5e5ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"userId": "5e5ea5c16897e",
"userName": "John Doe",
"userEmail": "john@appwrite.io",
"teamId": "5e5ea5c16897e",
"teamName": "VIP",
"invited": "2020-10-15T06:38:00.000+00:00",
"joined": "2020-10-15T06:38:00.000+00:00",
"confirm": false,
"mfa": false,
"roles": [
"owner"
]
}
]
},
"execution": {
"description": "Execution",
@@ -9942,36 +9661,7 @@
"logs",
"errors",
"duration"
],
"example": {
"$id": "5e5ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"$permissions": [
"any"
],
"functionId": "5e5ea6g16897e",
"trigger": "http",
"status": "processing",
"requestMethod": "GET",
"requestPath": "\/articles?id=5",
"requestHeaders": [
{
"Content-Type": "application\/json"
}
],
"responseStatusCode": 200,
"responseBody": "",
"responseHeaders": [
{
"Content-Type": "application\/json"
}
],
"logs": "",
"errors": "",
"duration": 0.4,
"scheduledAt": "2020-10-15T06:38:00.000+00:00"
}
]
},
"country": {
"description": "Country",
@@ -9991,11 +9681,7 @@
"required": [
"name",
"code"
],
"example": {
"name": "United States",
"code": "US"
}
]
},
"continent": {
"description": "Continent",
@@ -10015,11 +9701,7 @@
"required": [
"name",
"code"
],
"example": {
"name": "Europe",
"code": "EU"
}
]
},
"language": {
"description": "Language",
@@ -10045,12 +9727,7 @@
"name",
"code",
"nativeName"
],
"example": {
"name": "Italian",
"code": "it",
"nativeName": "Italiano"
}
]
},
"currency": {
"description": "Currency",
@@ -10102,16 +9779,7 @@
"rounding",
"code",
"namePlural"
],
"example": {
"symbol": "$",
"name": "US dollar",
"symbolNative": "$",
"decimalDigits": 2,
"rounding": 0,
"code": "USD",
"namePlural": "US dollars"
}
]
},
"phone": {
"description": "Phone",
@@ -10137,12 +9805,7 @@
"code",
"countryCode",
"countryName"
],
"example": {
"code": "+1",
"countryCode": "US",
"countryName": "United States"
}
]
},
"headers": {
"description": "Headers",
@@ -10162,11 +9825,7 @@
"required": [
"name",
"value"
],
"example": {
"name": "Content-Type",
"value": "application\/json"
}
]
},
"mfaChallenge": {
"description": "MFA Challenge",
@@ -10198,13 +9857,7 @@
"$createdAt",
"userId",
"expire"
],
"example": {
"$id": "bb8ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"userId": "5e5ea5c168bb8",
"expire": "2020-10-15T06:38:00.000+00:00"
}
]
},
"mfaRecoveryCodes": {
"description": "MFA Recovery Codes",
@@ -10224,13 +9877,7 @@
},
"required": [
"recoveryCodes"
],
"example": {
"recoveryCodes": [
"a3kf0-s0cl2",
"s0co1-as98s"
]
}
]
},
"mfaType": {
"description": "MFAType",
@@ -10250,11 +9897,7 @@
"required": [
"secret",
"uri"
],
"example": {
"secret": true,
"uri": true
}
]
},
"mfaFactors": {
"description": "MFAFactors",
@@ -10286,13 +9929,7 @@
"phone",
"email",
"recoveryCode"
],
"example": {
"totp": true,
"phone": true,
"email": true,
"recoveryCode": true
}
]
},
"subscriber": {
"description": "Subscriber",
@@ -10366,27 +10003,7 @@
"userName",
"topicId",
"providerType"
],
"example": {
"$id": "259125845563242502",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"targetId": "259125845563242502",
"target": {
"$id": "259125845563242502",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"providerType": "email",
"providerId": "259125845563242502",
"name": "ageon-app-email",
"identifier": "random-mail@email.org",
"userId": "5e5ea5c16897e"
},
"userId": "5e5ea5c16897e",
"userName": "Aegon Targaryen",
"topicId": "259125845563242502",
"providerType": "email"
}
]
},
"target": {
"description": "Target",
@@ -10448,18 +10065,7 @@
"providerType",
"identifier",
"expired"
],
"example": {
"$id": "259125845563242502",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"name": "Apple iPhone 12",
"userId": "259125845563242502",
"providerId": "259125845563242502",
"providerType": "email",
"identifier": "token",
"expired": false
}
]
}
},
"securitySchemes": {
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+60 -446
View File
@@ -4798,7 +4798,7 @@
"tags": [
"databases"
],
"description": "Create or update a Document. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection) API or directly from your database console.",
"description": "**WARNING: Experimental Feature** - This endpoint is experimental and not yet officially supported. It may be subject to breaking changes or removal in future versions.\n\nCreate or update a Document. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection) API or directly from your database console.",
"responses": {
"200": {
"description": "Document",
@@ -5303,7 +5303,7 @@
"x-appwrite": {
"method": "listExecutions",
"group": "executions",
"weight": 394,
"weight": 393,
"cookies": false,
"type": "",
"deprecated": false,
@@ -5376,7 +5376,7 @@
"x-appwrite": {
"method": "createExecution",
"group": "executions",
"weight": 392,
"weight": 391,
"cookies": false,
"type": "",
"deprecated": false,
@@ -5461,7 +5461,7 @@
"type": "string",
"description": "Scheduled execution time in [ISO 8601](https:\/\/www.iso.org\/iso-8601-date-and-time-format.html) format. DateTime value must be in future with precision in minutes.",
"default": null,
"x-example": "<SCHEDULED_AT>"
"x-example": null
}
}
}
@@ -5492,7 +5492,7 @@
"x-appwrite": {
"method": "getExecution",
"group": "executions",
"weight": 393,
"weight": 392,
"cookies": false,
"type": "",
"deprecated": false,
@@ -5563,7 +5563,7 @@
"x-appwrite": {
"method": "query",
"group": "graphql",
"weight": 308,
"weight": 307,
"cookies": false,
"type": "graphql",
"deprecated": false,
@@ -5636,7 +5636,7 @@
"x-appwrite": {
"method": "mutation",
"group": "graphql",
"weight": 307,
"weight": 306,
"cookies": false,
"type": "graphql",
"deprecated": false,
@@ -6117,7 +6117,7 @@
"x-appwrite": {
"method": "createSubscriber",
"group": "subscribers",
"weight": 354,
"weight": 353,
"cookies": false,
"type": "",
"deprecated": false,
@@ -6201,7 +6201,7 @@
"x-appwrite": {
"method": "deleteSubscriber",
"group": "subscribers",
"weight": 358,
"weight": 357,
"cookies": false,
"type": "",
"deprecated": false,
@@ -8094,8 +8094,7 @@
"any": {
"description": "Any",
"type": "object",
"additionalProperties": true,
"example": []
"additionalProperties": true
},
"documentList": {
"description": "Documents List",
@@ -8120,11 +8119,7 @@
"required": [
"total",
"documents"
],
"example": {
"total": 5,
"documents": ""
}
]
},
"sessionList": {
"description": "Sessions List",
@@ -8149,11 +8144,7 @@
"required": [
"total",
"sessions"
],
"example": {
"total": 5,
"sessions": ""
}
]
},
"identityList": {
"description": "Identities List",
@@ -8178,11 +8169,7 @@
"required": [
"total",
"identities"
],
"example": {
"total": 5,
"identities": ""
}
]
},
"logList": {
"description": "Logs List",
@@ -8207,11 +8194,7 @@
"required": [
"total",
"logs"
],
"example": {
"total": 5,
"logs": ""
}
]
},
"fileList": {
"description": "Files List",
@@ -8236,11 +8219,7 @@
"required": [
"total",
"files"
],
"example": {
"total": 5,
"files": ""
}
]
},
"teamList": {
"description": "Teams List",
@@ -8265,11 +8244,7 @@
"required": [
"total",
"teams"
],
"example": {
"total": 5,
"teams": ""
}
]
},
"membershipList": {
"description": "Memberships List",
@@ -8294,11 +8269,7 @@
"required": [
"total",
"memberships"
],
"example": {
"total": 5,
"memberships": ""
}
]
},
"executionList": {
"description": "Executions List",
@@ -8323,11 +8294,7 @@
"required": [
"total",
"executions"
],
"example": {
"total": 5,
"executions": ""
}
]
},
"countryList": {
"description": "Countries List",
@@ -8352,11 +8319,7 @@
"required": [
"total",
"countries"
],
"example": {
"total": 5,
"countries": ""
}
]
},
"continentList": {
"description": "Continents List",
@@ -8381,11 +8344,7 @@
"required": [
"total",
"continents"
],
"example": {
"total": 5,
"continents": ""
}
]
},
"languageList": {
"description": "Languages List",
@@ -8410,11 +8369,7 @@
"required": [
"total",
"languages"
],
"example": {
"total": 5,
"languages": ""
}
]
},
"currencyList": {
"description": "Currencies List",
@@ -8439,11 +8394,7 @@
"required": [
"total",
"currencies"
],
"example": {
"total": 5,
"currencies": ""
}
]
},
"phoneList": {
"description": "Phones List",
@@ -8468,11 +8419,7 @@
"required": [
"total",
"phones"
],
"example": {
"total": 5,
"phones": ""
}
]
},
"localeCodeList": {
"description": "Locale codes list",
@@ -8497,11 +8444,7 @@
"required": [
"total",
"localeCodes"
],
"example": {
"total": 5,
"localeCodes": ""
}
]
},
"document": {
"description": "Document",
@@ -8516,20 +8459,17 @@
"type": "integer",
"description": "Document automatically incrementing ID.",
"x-example": 1,
"format": "int32",
"readOnly": true
"format": "int32"
},
"$collectionId": {
"type": "string",
"description": "Collection ID.",
"x-example": "5e5ea5c15117e",
"readOnly": true
"x-example": "5e5ea5c15117e"
},
"$databaseId": {
"type": "string",
"description": "Database ID.",
"x-example": "5e5ea5c15117e",
"readOnly": true
"x-example": "5e5ea5c15117e"
},
"$createdAt": {
"type": "string",
@@ -8561,23 +8501,7 @@
"$createdAt",
"$updatedAt",
"$permissions"
],
"example": {
"$id": "5e5ea5c16897e",
"$sequence": 1,
"$collectionId": "5e5ea5c15117e",
"$databaseId": "5e5ea5c15117e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"$permissions": [
"read(\"any\")"
],
"username": "john.doe",
"email": "john.doe@example.com",
"fullName": "John Doe",
"age": 30,
"isAdmin": false
}
]
},
"log": {
"description": "Log",
@@ -8711,30 +8635,7 @@
"deviceModel",
"countryCode",
"countryName"
],
"example": {
"event": "account.sessions.create",
"userId": "610fc2f985ee0",
"userEmail": "john@appwrite.io",
"userName": "John Doe",
"mode": "admin",
"ip": "127.0.0.1",
"time": "2020-10-15T06:38:00.000+00:00",
"osCode": "Mac",
"osName": "Mac",
"osVersion": "Mac",
"clientType": "browser",
"clientCode": "CM",
"clientName": "Chrome Mobile iOS",
"clientVersion": "84.0",
"clientEngine": "WebKit",
"clientEngineVersion": "605.1.15",
"deviceName": "smartphone",
"deviceBrand": "Google",
"deviceModel": "Nexus 5",
"countryCode": "US",
"countryName": "United States"
}
]
},
"user": {
"description": "User",
@@ -8897,33 +8798,7 @@
"prefs",
"targets",
"accessedAt"
],
"example": {
"$id": "5e5ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"name": "John Doe",
"password": "$argon2id$v=19$m=2048,t=4,p=3$aUZjLnliVWRINmFNTWMudg$5S+x+7uA31xFnrHFT47yFwcJeaP0w92L\/4LdgrVRXxE",
"hash": "argon2",
"hashOptions": {},
"registration": "2020-10-15T06:38:00.000+00:00",
"status": true,
"labels": [
"vip"
],
"passwordUpdate": "2020-10-15T06:38:00.000+00:00",
"email": "john@appwrite.io",
"phone": "+4930901820",
"emailVerification": true,
"phoneVerification": true,
"mfa": true,
"prefs": {
"theme": "pink",
"timezone": "UTC"
},
"targets": [],
"accessedAt": "2020-10-15T06:38:00.000+00:00"
}
]
},
"algoMd5": {
"description": "AlgoMD5",
@@ -8937,10 +8812,7 @@
},
"required": [
"type"
],
"example": {
"type": "md5"
}
]
},
"algoSha": {
"description": "AlgoSHA",
@@ -8954,10 +8826,7 @@
},
"required": [
"type"
],
"example": {
"type": "sha"
}
]
},
"algoPhpass": {
"description": "AlgoPHPass",
@@ -8971,10 +8840,7 @@
},
"required": [
"type"
],
"example": {
"type": "phpass"
}
]
},
"algoBcrypt": {
"description": "AlgoBcrypt",
@@ -8988,10 +8854,7 @@
},
"required": [
"type"
],
"example": {
"type": "bcrypt"
}
]
},
"algoScrypt": {
"description": "AlgoScrypt",
@@ -9033,14 +8896,7 @@
"costMemory",
"costParallel",
"length"
],
"example": {
"type": "scrypt",
"costCpu": 8,
"costMemory": 14,
"costParallel": 1,
"length": 64
}
]
},
"algoScryptModified": {
"description": "AlgoScryptModified",
@@ -9072,13 +8928,7 @@
"salt",
"saltSeparator",
"signerKey"
],
"example": {
"type": "scryptMod",
"salt": "UxLMreBr6tYyjQ==",
"saltSeparator": "Bw==",
"signerKey": "XyEKE9RcTDeLEsL\/RjwPDBv\/RqDl8fb3gpYEOQaPihbxf1ZAtSOHCjuAAa7Q3oHpCYhXSN9tizHgVOwn6krflQ=="
}
]
},
"algoArgon2": {
"description": "AlgoArgon2",
@@ -9113,23 +8963,12 @@
"memoryCost",
"timeCost",
"threads"
],
"example": {
"type": "argon2",
"memoryCost": 65536,
"timeCost": 4,
"threads": 3
}
]
},
"preferences": {
"description": "Preferences",
"type": "object",
"additionalProperties": true,
"example": {
"language": "en",
"timezone": "UTC",
"darkTheme": true
}
"additionalProperties": true
},
"session": {
"description": "Session",
@@ -9316,40 +9155,7 @@
"factors",
"secret",
"mfaUpdatedAt"
],
"example": {
"$id": "5e5ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"userId": "5e5bb8c16897e",
"expire": "2020-10-15T06:38:00.000+00:00",
"provider": "email",
"providerUid": "user@example.com",
"providerAccessToken": "MTQ0NjJkZmQ5OTM2NDE1ZTZjNGZmZjI3",
"providerAccessTokenExpiry": "2020-10-15T06:38:00.000+00:00",
"providerRefreshToken": "MTQ0NjJkZmQ5OTM2NDE1ZTZjNGZmZjI3",
"ip": "127.0.0.1",
"osCode": "Mac",
"osName": "Mac",
"osVersion": "Mac",
"clientType": "browser",
"clientCode": "CM",
"clientName": "Chrome Mobile iOS",
"clientVersion": "84.0",
"clientEngine": "WebKit",
"clientEngineVersion": "605.1.15",
"deviceName": "smartphone",
"deviceBrand": "Google",
"deviceModel": "Nexus 5",
"countryCode": "US",
"countryName": "United States",
"current": true,
"factors": [
"email"
],
"secret": "5e5bb8c16897e",
"mfaUpdatedAt": "2020-10-15T06:38:00.000+00:00"
}
]
},
"identity": {
"description": "Identity",
@@ -9417,19 +9223,7 @@
"providerAccessToken",
"providerAccessTokenExpiry",
"providerRefreshToken"
],
"example": {
"$id": "5e5ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"userId": "5e5bb8c16897e",
"provider": "email",
"providerUid": "5e5bb8c16897e",
"providerEmail": "user@example.com",
"providerAccessToken": "MTQ0NjJkZmQ5OTM2NDE1ZTZjNGZmZjI3",
"providerAccessTokenExpiry": "2020-10-15T06:38:00.000+00:00",
"providerRefreshToken": "MTQ0NjJkZmQ5OTM2NDE1ZTZjNGZmZjI3"
}
]
},
"token": {
"description": "Token",
@@ -9473,15 +9267,7 @@
"secret",
"expire",
"phrase"
],
"example": {
"$id": "bb8ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"userId": "5e5ea5c168bb8",
"secret": "",
"expire": "2020-10-15T06:38:00.000+00:00",
"phrase": "Golden Fox"
}
]
},
"jwt": {
"description": "JWT",
@@ -9495,10 +9281,7 @@
},
"required": [
"jwt"
],
"example": {
"jwt": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"
}
]
},
"locale": {
"description": "Locale",
@@ -9548,16 +9331,7 @@
"continent",
"eu",
"currency"
],
"example": {
"ip": "127.0.0.1",
"countryCode": "US",
"country": "United States",
"continentCode": "NA",
"continent": "North America",
"eu": false,
"currency": "USD"
}
]
},
"localeCode": {
"description": "LocaleCode",
@@ -9577,11 +9351,7 @@
"required": [
"code",
"name"
],
"example": {
"code": "en-us",
"name": "US"
}
]
},
"file": {
"description": "File",
@@ -9663,22 +9433,7 @@
"sizeOriginal",
"chunksTotal",
"chunksUploaded"
],
"example": {
"$id": "5e5ea5c16897e",
"bucketId": "5e5ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"$permissions": [
"read(\"any\")"
],
"name": "Pink.png",
"signature": "5d529fd02b544198ae075bd57c1762bb",
"mimeType": "image\/png",
"sizeOriginal": 17890,
"chunksTotal": 17890,
"chunksUploaded": 17890
}
]
},
"team": {
"description": "Team",
@@ -9730,18 +9485,7 @@
"name",
"total",
"prefs"
],
"example": {
"$id": "5e5ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"name": "VIP",
"total": 7,
"prefs": {
"theme": "pink",
"timezone": "UTC"
}
}
]
},
"membership": {
"description": "Membership",
@@ -9832,24 +9576,7 @@
"confirm",
"mfa",
"roles"
],
"example": {
"$id": "5e5ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"userId": "5e5ea5c16897e",
"userName": "John Doe",
"userEmail": "john@appwrite.io",
"teamId": "5e5ea5c16897e",
"teamName": "VIP",
"invited": "2020-10-15T06:38:00.000+00:00",
"joined": "2020-10-15T06:38:00.000+00:00",
"confirm": false,
"mfa": false,
"roles": [
"owner"
]
}
]
},
"execution": {
"description": "Execution",
@@ -9982,36 +9709,7 @@
"logs",
"errors",
"duration"
],
"example": {
"$id": "5e5ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"$permissions": [
"any"
],
"functionId": "5e5ea6g16897e",
"trigger": "http",
"status": "processing",
"requestMethod": "GET",
"requestPath": "\/articles?id=5",
"requestHeaders": [
{
"Content-Type": "application\/json"
}
],
"responseStatusCode": 200,
"responseBody": "",
"responseHeaders": [
{
"Content-Type": "application\/json"
}
],
"logs": "",
"errors": "",
"duration": 0.4,
"scheduledAt": "2020-10-15T06:38:00.000+00:00"
}
]
},
"country": {
"description": "Country",
@@ -10031,11 +9729,7 @@
"required": [
"name",
"code"
],
"example": {
"name": "United States",
"code": "US"
}
]
},
"continent": {
"description": "Continent",
@@ -10055,11 +9749,7 @@
"required": [
"name",
"code"
],
"example": {
"name": "Europe",
"code": "EU"
}
]
},
"language": {
"description": "Language",
@@ -10085,12 +9775,7 @@
"name",
"code",
"nativeName"
],
"example": {
"name": "Italian",
"code": "it",
"nativeName": "Italiano"
}
]
},
"currency": {
"description": "Currency",
@@ -10142,16 +9827,7 @@
"rounding",
"code",
"namePlural"
],
"example": {
"symbol": "$",
"name": "US dollar",
"symbolNative": "$",
"decimalDigits": 2,
"rounding": 0,
"code": "USD",
"namePlural": "US dollars"
}
]
},
"phone": {
"description": "Phone",
@@ -10177,12 +9853,7 @@
"code",
"countryCode",
"countryName"
],
"example": {
"code": "+1",
"countryCode": "US",
"countryName": "United States"
}
]
},
"headers": {
"description": "Headers",
@@ -10202,11 +9873,7 @@
"required": [
"name",
"value"
],
"example": {
"name": "Content-Type",
"value": "application\/json"
}
]
},
"mfaChallenge": {
"description": "MFA Challenge",
@@ -10238,13 +9905,7 @@
"$createdAt",
"userId",
"expire"
],
"example": {
"$id": "bb8ea5c16897e",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"userId": "5e5ea5c168bb8",
"expire": "2020-10-15T06:38:00.000+00:00"
}
]
},
"mfaRecoveryCodes": {
"description": "MFA Recovery Codes",
@@ -10264,13 +9925,7 @@
},
"required": [
"recoveryCodes"
],
"example": {
"recoveryCodes": [
"a3kf0-s0cl2",
"s0co1-as98s"
]
}
]
},
"mfaType": {
"description": "MFAType",
@@ -10290,11 +9945,7 @@
"required": [
"secret",
"uri"
],
"example": {
"secret": true,
"uri": true
}
]
},
"mfaFactors": {
"description": "MFAFactors",
@@ -10326,13 +9977,7 @@
"phone",
"email",
"recoveryCode"
],
"example": {
"totp": true,
"phone": true,
"email": true,
"recoveryCode": true
}
]
},
"subscriber": {
"description": "Subscriber",
@@ -10407,27 +10052,7 @@
"userName",
"topicId",
"providerType"
],
"example": {
"$id": "259125845563242502",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"targetId": "259125845563242502",
"target": {
"$id": "259125845563242502",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"providerType": "email",
"providerId": "259125845563242502",
"name": "ageon-app-email",
"identifier": "random-mail@email.org",
"userId": "5e5ea5c16897e"
},
"userId": "5e5ea5c16897e",
"userName": "Aegon Targaryen",
"topicId": "259125845563242502",
"providerType": "email"
}
]
},
"target": {
"description": "Target",
@@ -10489,18 +10114,7 @@
"providerType",
"identifier",
"expired"
],
"example": {
"$id": "259125845563242502",
"$createdAt": "2020-10-15T06:38:00.000+00:00",
"$updatedAt": "2020-10-15T06:38:00.000+00:00",
"name": "Apple iPhone 12",
"userId": "259125845563242502",
"providerId": "259125845563242502",
"providerType": "email",
"identifier": "token",
"expired": false
}
]
}
},
"externalDocs": {
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More