Add admin-protected endpoints for managing Access clients through Postman or future admin panel.
File: api/controllers/access.js
Endpoints:
- POST
/api/admin/access-clients - Create new Access client
- Requires admin authentication
- Creates AccessClient and updates boards with
accessCode
- Validates
rootBoardId exists
- GET
/api/admin/access-clients - List all clients with stats
- Returns all clients with board counts, expiry status
- Populates
rootBoard and createdBy
- PUT
/api/admin/access-clients/:code - Update client
- Updates allowed fields:
isActive, isListedInApp, subscription dates, branding
- GET
/api/admin/access-clients/:code/stats - Get detailed statistics
- Returns client info, access counts, board list with tile counts
Tasks:
- Implement
createAccessClient with board association
- Implement
listAccessClients with computed fields
- Implement
updateAccessClient
- Implement
getAccessClientStats
Add admin-protected endpoints for managing Access clients through Postman or future admin panel.
File:
api/controllers/access.jsEndpoints:
/api/admin/access-clients- Create new Access clientaccessCoderootBoardIdexists/api/admin/access-clients- List all clients with statsrootBoardandcreatedBy/api/admin/access-clients/:code- Update clientisActive,isListedInApp, subscription dates, branding/api/admin/access-clients/:code/stats- Get detailed statisticsTasks:
createAccessClientwith board associationlistAccessClientswith computed fieldsupdateAccessClientgetAccessClientStats