ACLAdminUserAdminUserNestJS GuardNestJS GuardServiceServiceFirestoreFirestoreACL on LIST endpoints1GET /admins/prefecturesExpects JWT Payload:- isAdminUser- userAdminRole- userAccessKey2Pass userAccessKey to prefecture serviceExample value:- userAccessKey: SUPER_ADMIN_KEY3Fetch all accessible documentsin prefectures collection.where(accessControlList,array-contains,userAccessKey)4Return array of prefectures5prefectures LIST based on ACLACL on GET by ID endpoints1GET /admins/prefectures/ABCExpects JWT Payload:- isAdminUser- userAdminRole- userAccessKey2Pass userAccessKey to prefecture serviceExample value:- userAccessKey: SUPER_ADMIN_KEY3Fetch single documentbased on ID ABC4Return ABC prefecturecanUserAccessResource(userAccessKey,prefecture)5prefectures GET by ID based on ACL