Phase 1.4 Deliverable E: Authentication & Endpoint Readiness
Admin Endpoints
PEPM Agent Map Endpoints
Create PEPM Mapping:- Path:
POST /api/v1/admin/identity/pepm-map - RBAC: Admin/CEO only (enforced via
require_admin_or_ceodependency) - Request Schema:
PEPMAgentMapCreate(fromapi/schemas/admin_identity.py:30-41)
PEPMAgentMapResponse (includes override_id, created_at, created_by, etc.)
Update PEPM Mapping (closure only):
- Path:
PUT /api/v1/admin/identity/pepm-map - Request Schema:
PEPMAgentMapUpdate(requiresoverride_id, allowseffective_end_date,is_active,notes)
Agent Identity Admin Endpoints
Create Agent Identity Override:- Path:
POST /api/v1/admin/identity/agent - RBAC: Admin/CEO only
- Request Schema:
AgentIdentityAdminCreate
- Path:
PUT /api/v1/admin/identity/agent - Request Schema:
AgentIdentityAdminUpdate(requiresoverride_id)
Authentication
Token Acquisition:- Endpoint:
POST /api/v1/auth/token - Location:
api/routes/auth.py
- User must have
role="admin"or"ceo"in JWT payload - Token must include
tenant_idmatching target tenant - Token subject (
sub) must exist indim_userstable (if BigQuery enrichment enabled)
- Include in request header:
Authorization: Bearer <JWT_TOKEN> - Token is validated via
get_current_userdependency - RBAC check happens in
require_admin_or_ceofunction
File References
- Endpoints:
api/routes/admin_identity.py:179-222(PEPM map),api/routes/admin_identity.py:49-91(agent identity) - Schemas:
api/schemas/admin_identity.py:30-41(PEPMAgentMapCreate),api/schemas/admin_identity.py:9-19(AgentIdentityAdminCreate) - Auth:
api/routes/auth.py(token endpoint) - Dependencies:
api/dependencies.py(get_current_user, get_tenant_id) - RBAC:
api/routes/admin_identity.py:33-42(require_admin_or_ceo)