From c9dcd1c7f28a6cf5b54cf9d9cb91f997e6cb3bb7 Mon Sep 17 00:00:00 2001 From: Ebenezer Don Date: Tue, 19 Aug 2025 03:56:35 +0100 Subject: [PATCH 1/8] docs: add plan limits for bulk operations --- .../products/databases/bulk-operations/+page.markdoc | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/routes/docs/products/databases/bulk-operations/+page.markdoc b/src/routes/docs/products/databases/bulk-operations/+page.markdoc index 43b62b4c8f..83965258ba 100644 --- a/src/routes/docs/products/databases/bulk-operations/+page.markdoc +++ b/src/routes/docs/products/databases/bulk-operations/+page.markdoc @@ -21,6 +21,18 @@ This atomicity ensures: For example, if you attempt to create 100 documents and one fails due to a validation error, none of the 100 documents will be created. +# Plan limits {% #plan-limits %} + +Bulk operations have different limits based on your Appwrite plan: + +| Plan | Documents per request | +|------|----------------------| +| Free | 100 | +| Pro | 1,000 | +| Scale | Customizable | + +These limits apply to all bulk operations including create, update, upsert, and delete operations. If you need higher limits than what the Pro plan offers, you can upgrade to the Scale plan and [contact support](https://appwrite.io/contact-us) to customize your limits based on your specific requirements. + # Create documents {% #create-documents %} You can create multiple documents in a single request using the `createDocuments` method. From 88d1488be5c666d228bbbd5a27a4351d552b8bf9 Mon Sep 17 00:00:00 2001 From: Ebenezer Don Date: Wed, 20 Aug 2025 19:59:05 +0100 Subject: [PATCH 2/8] remove scale plan mention --- .../docs/products/databases/bulk-operations/+page.markdoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/docs/products/databases/bulk-operations/+page.markdoc b/src/routes/docs/products/databases/bulk-operations/+page.markdoc index 83965258ba..023aff0e83 100644 --- a/src/routes/docs/products/databases/bulk-operations/+page.markdoc +++ b/src/routes/docs/products/databases/bulk-operations/+page.markdoc @@ -31,7 +31,7 @@ Bulk operations have different limits based on your Appwrite plan: | Pro | 1,000 | | Scale | Customizable | -These limits apply to all bulk operations including create, update, upsert, and delete operations. If you need higher limits than what the Pro plan offers, you can upgrade to the Scale plan and [contact support](https://appwrite.io/contact-us) to customize your limits based on your specific requirements. +These limits apply to all bulk operations including create, update, upsert, and delete operations. If you need higher limits than what the Pro plan offers, you can [contact support](https://appwrite.io/contact-us) to customize your limits based on your specific requirements. # Create documents {% #create-documents %} From 319bfb645854dd6dc1f78ba72eb990ad5fb43177 Mon Sep 17 00:00:00 2001 From: Ebenezer Don Date: Wed, 20 Aug 2025 20:07:04 +0100 Subject: [PATCH 3/8] Add clarifications/limitations for bulk operations --- .../docs/products/databases/bulk-operations/+page.markdoc | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/routes/docs/products/databases/bulk-operations/+page.markdoc b/src/routes/docs/products/databases/bulk-operations/+page.markdoc index 023aff0e83..8468c93259 100644 --- a/src/routes/docs/products/databases/bulk-operations/+page.markdoc +++ b/src/routes/docs/products/databases/bulk-operations/+page.markdoc @@ -10,6 +10,11 @@ Bulk operations can only be performed via the server-side SDKs. The client-side For client applications that need bulk-like functionality, consider using [Appwrite Functions](/docs/products/functions) with proper rate limiting and validation. +{% info title="Important notes" %} +- Bulk operations do not trigger Functions, Webhooks, or Realtime events +- Collections that contain relationship attributes are not supported via bulk operations. Use individual document operations for collections with relationships +{% /info %} + # Atomic behavior {% #atomic-behavior %} Bulk operations in Appwrite are **atomic**, meaning they follow an all-or-nothing approach. Either all documents in your bulk request succeed, or all documents fail. From fce5ebd4385badb28c4374bc9fdd2593898eea9b Mon Sep 17 00:00:00 2001 From: Ebenezer Don Date: Wed, 20 Aug 2025 20:09:29 +0100 Subject: [PATCH 4/8] remove scale row --- src/routes/docs/products/databases/bulk-operations/+page.markdoc | 1 - 1 file changed, 1 deletion(-) diff --git a/src/routes/docs/products/databases/bulk-operations/+page.markdoc b/src/routes/docs/products/databases/bulk-operations/+page.markdoc index 8468c93259..3b7464acff 100644 --- a/src/routes/docs/products/databases/bulk-operations/+page.markdoc +++ b/src/routes/docs/products/databases/bulk-operations/+page.markdoc @@ -34,7 +34,6 @@ Bulk operations have different limits based on your Appwrite plan: |------|----------------------| | Free | 100 | | Pro | 1,000 | -| Scale | Customizable | These limits apply to all bulk operations including create, update, upsert, and delete operations. If you need higher limits than what the Pro plan offers, you can [contact support](https://appwrite.io/contact-us) to customize your limits based on your specific requirements. From 53518c149c71d0edd16ac8bad0858d16e84ebbb5 Mon Sep 17 00:00:00 2001 From: Ebenezer Don Date: Wed, 20 Aug 2025 20:10:14 +0100 Subject: [PATCH 5/8] remove contact link --- .../docs/products/databases/bulk-operations/+page.markdoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/docs/products/databases/bulk-operations/+page.markdoc b/src/routes/docs/products/databases/bulk-operations/+page.markdoc index 3b7464acff..c1a8731e19 100644 --- a/src/routes/docs/products/databases/bulk-operations/+page.markdoc +++ b/src/routes/docs/products/databases/bulk-operations/+page.markdoc @@ -35,7 +35,7 @@ Bulk operations have different limits based on your Appwrite plan: | Free | 100 | | Pro | 1,000 | -These limits apply to all bulk operations including create, update, upsert, and delete operations. If you need higher limits than what the Pro plan offers, you can [contact support](https://appwrite.io/contact-us) to customize your limits based on your specific requirements. +These limits apply to all bulk operations including create, update, upsert, and delete operations. If you need higher limits than what the Pro plan offers, you can contact support to customize your limits based on your specific requirements. # Create documents {% #create-documents %} From 7beb385099a0abd7cb44ffc9db2888795e3ccb4a Mon Sep 17 00:00:00 2001 From: Ebenezer Don Date: Wed, 10 Sep 2025 21:03:17 +0100 Subject: [PATCH 6/8] update with enterprise support link --- .../docs/products/databases/bulk-operations/+page.markdoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/docs/products/databases/bulk-operations/+page.markdoc b/src/routes/docs/products/databases/bulk-operations/+page.markdoc index c1a8731e19..f510bda848 100644 --- a/src/routes/docs/products/databases/bulk-operations/+page.markdoc +++ b/src/routes/docs/products/databases/bulk-operations/+page.markdoc @@ -35,7 +35,7 @@ Bulk operations have different limits based on your Appwrite plan: | Free | 100 | | Pro | 1,000 | -These limits apply to all bulk operations including create, update, upsert, and delete operations. If you need higher limits than what the Pro plan offers, you can contact support to customize your limits based on your specific requirements. +These limits apply to all bulk operations including create, update, upsert, and delete operations. If you need higher limits than what the Pro plan offers, you can [contact support](https://appwrite.io/contact-us/enterprise) to inquire about a custom plan. # Create documents {% #create-documents %} From 2ff3692625098dec02d6202737ecdd837ff30e33 Mon Sep 17 00:00:00 2001 From: Ebenezer Don Date: Fri, 12 Sep 2025 20:54:00 +0100 Subject: [PATCH 7/8] Update src/routes/docs/products/databases/bulk-operations/+page.markdoc Co-authored-by: Steven Nguyen <1477010+stnguyen90@users.noreply.github.com> --- .../docs/products/databases/bulk-operations/+page.markdoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/docs/products/databases/bulk-operations/+page.markdoc b/src/routes/docs/products/databases/bulk-operations/+page.markdoc index 42b0da8009..b355920bdd 100644 --- a/src/routes/docs/products/databases/bulk-operations/+page.markdoc +++ b/src/routes/docs/products/databases/bulk-operations/+page.markdoc @@ -35,7 +35,7 @@ Bulk operations have different limits based on your Appwrite plan: | Free | 100 | | Pro | 1,000 | -These limits apply to all bulk operations including create, update, upsert, and delete operations. If you need higher limits than what the Pro plan offers, you can [contact support](https://appwrite.io/contact-us/enterprise) to inquire about a custom plan. +These limits apply to all bulk operations including create, update, upsert, and delete operations. If you need higher limits than what the Pro plan offers, you can [inquire](/contact-us/enterprise) about a custom plan. # Create rows {% #create-rows %} From bc7ac511533775b141f279bb645e00c6111dbbca Mon Sep 17 00:00:00 2001 From: Ebenezer Don Date: Fri, 12 Sep 2025 21:03:23 +0100 Subject: [PATCH 8/8] update db terminologies --- .../docs/products/databases/bulk-operations/+page.markdoc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/routes/docs/products/databases/bulk-operations/+page.markdoc b/src/routes/docs/products/databases/bulk-operations/+page.markdoc index b355920bdd..ec4be7a5d1 100644 --- a/src/routes/docs/products/databases/bulk-operations/+page.markdoc +++ b/src/routes/docs/products/databases/bulk-operations/+page.markdoc @@ -12,7 +12,7 @@ For client applications that need bulk-like functionality, consider using [Appwr {% info title="Important notes" %} - Bulk operations do not trigger Functions, Webhooks, or Realtime events -- Collections that contain relationship attributes are not supported via bulk operations. Use individual document operations for collections with relationships +- Tables that contain relationship columns are not supported via bulk operations. Use individual row operations for tables with relationships {% /info %} # Atomic behavior {% #atomic-behavior %} @@ -30,7 +30,7 @@ For example, if you attempt to create 100 rows and one fails due to a validation Bulk operations have different limits based on your Appwrite plan: -| Plan | Documents per request | +| Plan | Rows per request | |------|----------------------| | Free | 100 | | Pro | 1,000 | @@ -42,7 +42,7 @@ These limits apply to all bulk operations including create, update, upsert, and You can create multiple rows in a single request using the `createRows` method. {% info title="Custom timestamps" %} -When creating, updating or upserting in bulk, you can set `$createdAt` and `$updatedAt` for each document in the payload. Values must be ISO 8601 date-time strings. If omitted, Appwrite sets them automatically. +When creating, updating or upserting in bulk, you can set `$createdAt` and `$updatedAt` for each row in the payload. Values must be ISO 8601 date-time strings. If omitted, Appwrite sets them automatically. {% /info %} {% multicode %}