From ccf0a23bdfd5eaa872a68be651f4d9057f900dda Mon Sep 17 00:00:00 2001 From: Jake Barnby Date: Wed, 30 Jul 2025 01:02:21 +1200 Subject: [PATCH 1/2] Remove sequence on incoming docs --- app/controllers/api/databases.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/app/controllers/api/databases.php b/app/controllers/api/databases.php index 3378d011c9..89b31a10db 100644 --- a/app/controllers/api/databases.php +++ b/app/controllers/api/databases.php @@ -3453,6 +3453,7 @@ App::post('/v1/databases/:databaseId/collections/:collectionId/documents') } else { $relation->removeAttribute('$collectionId'); $relation->removeAttribute('$databaseId'); + $relation->removeAttribute('$sequence'); $relation->setAttribute('$collection', $relatedCollection->getId()); $type = Database::PERMISSION_UPDATE; } @@ -3485,6 +3486,9 @@ App::post('/v1/databases/:databaseId/collections/:collectionId/documents') } } + // Remove sequence if set + unset($document['$sequence']); + // Assign a unique ID if needed, otherwise use the provided ID. $document['$id'] = $sourceId === 'unique()' ? ID::unique() : $sourceId; $document = new Document($document); @@ -4074,6 +4078,9 @@ App::patch('/v1/databases/:databaseId/collections/:collectionId/documents/:docum $permissions = $document->getPermissions() ?? []; } + // Remove sequence if set + unset($data['$sequence']); + $data['$id'] = $documentId; $data['$permissions'] = $permissions; $newDocument = new Document($data); @@ -4708,6 +4715,9 @@ App::patch('/v1/databases/:databaseId/collections/:collectionId/documents') } } + // Remove sequence if set + unset($data['$sequence']); + $documents = []; try { From 933f07c1758f733c852770315a33035292a91663 Mon Sep 17 00:00:00 2001 From: Jake Barnby Date: Wed, 30 Jul 2025 01:18:08 +1200 Subject: [PATCH 2/2] Add missing removal --- app/controllers/api/databases.php | 1 + 1 file changed, 1 insertion(+) diff --git a/app/controllers/api/databases.php b/app/controllers/api/databases.php index 89b31a10db..45ca444c1c 100644 --- a/app/controllers/api/databases.php +++ b/app/controllers/api/databases.php @@ -4133,6 +4133,7 @@ App::patch('/v1/databases/:databaseId/collections/:collectionId/documents/:docum )); $relation->removeAttribute('$collectionId'); $relation->removeAttribute('$databaseId'); + $relation->removeAttribute('$sequence'); // Attribute $collection is required for Utopia. $relation->setAttribute( '$collection',