Storage Permission Issue: Team-based `read()` permissions return 404 instead of allowing access
- 0
- Storage
- Cloud

Problem:
Files uploaded with Permission.read(Role.team(teamId))
return 404 Not Found
when accessed by confirmed team members, even though the user is verified to be a member of that team.
If i set permission to Any:Read it works.
Environment:
- Appwrite Version: 1.8.0 Cloud
- Platform: Web (Angular frontend)
- Storage: Appwrite Cloud
permissions: [
Permission.read(Role.team(teamId)),
Permission.update(Role.team(teamId, TeamRole.MANAGER)),
Permission.delete(Role.team(teamId, TeamRole.MANAGER)),
Permission.write(Role.user(this.authService.currentUser()!.$id))
],
Expected Result: File should be accessible since user is confirmed team member (with Database same permissions works with same user/team).
Actual Result: 404 Not Found error (same as if file doesn't exist)
Workaround: Adding Permission.read(Role.any()) makes files accessible, confirming it's a team permission issue, not file existence.
Question: Is this a known issue with team-based read permissions? Are there any specific requirements for team permissions that might be missing?
Any help would be greatly appreciated! 🙏

How are you accessing the file? Via it's url?

yes:
this.appwrite.storage.getFileDownload({
bucketId: bucketId,
fileId: storageFileId
});
Recommended threads
- Error when executing a function from pos...
I am trying to make a post request from postman to my function https://fra.cloud.appwrite.io/v1/functions/functionid/executions on the same body when i put from...
- Billing error
Cant add new credit card. Param "providerMethodId" is not optional. or this error - Invalid `paymentMethodId` param: UID must contain at most 36 chars. Valid ...
- Environment Support
I've had a look around in the docs and I can't see how I'm supposed to manage different environments. I'd like a test and production environment. But I can't se...
