diff --git a/mobile/openapi/lib/api/assets_api.dart b/mobile/openapi/lib/api/assets_api.dart index 0b53e09938..e16ac2f535 100644 --- a/mobile/openapi/lib/api/assets_api.dart +++ b/mobile/openapi/lib/api/assets_api.dart @@ -18,7 +18,7 @@ class AssetsApi { /// checkBulkUpload /// - /// Checks if assets exist by checksums + /// Checks if assets exist by checksums. This endpoint requires the `asset.upload` permission. /// /// Note: This method returns the HTTP [Response]. /// @@ -52,7 +52,7 @@ class AssetsApi { /// checkBulkUpload /// - /// Checks if assets exist by checksums + /// Checks if assets exist by checksums. This endpoint requires the `asset.upload` permission. /// /// Parameters: /// diff --git a/open-api/immich-openapi-specs.json b/open-api/immich-openapi-specs.json index b2c1e12f8e..e2b2aa1905 100644 --- a/open-api/immich-openapi-specs.json +++ b/open-api/immich-openapi-specs.json @@ -1855,7 +1855,7 @@ }, "/assets/bulk-upload-check": { "post": { - "description": "Checks if assets exist by checksums", + "description": "Checks if assets exist by checksums. This endpoint requires the `asset.upload` permission.", "operationId": "checkBulkUpload", "parameters": [], "requestBody": { @@ -1894,7 +1894,8 @@ "summary": "checkBulkUpload", "tags": [ "Assets" - ] + ], + "x-immich-permission": "asset.upload" } }, "/assets/device/{deviceId}": { diff --git a/server/src/controllers/asset-media.controller.ts b/server/src/controllers/asset-media.controller.ts index 3b216aca0c..171cfe7047 100644 --- a/server/src/controllers/asset-media.controller.ts +++ b/server/src/controllers/asset-media.controller.ts @@ -188,7 +188,7 @@ export class AssetMediaController { * Checks if assets exist by checksums */ @Post('bulk-upload-check') - @Authenticated() + @Authenticated({ permission: Permission.AssetUpload }) @ApiOperation({ summary: 'checkBulkUpload', description: 'Checks if assets exist by checksums',