Skip to main content

Attendance Employee Profiles API

Summary

Three direct operations expose the active Attendance roster and upsert the local employee-profile projection. This is not Employee master-data ownership.

Audience

Backend/frontend developers, Employee integration engineers, QA engineers, architects, and implementation partners.

Reference Content

Authentication: Bearer context expected; administrative/integration authorization requires confirmation. Tenant: required for upsert and expected for tenant-filtered reads. Maturity: Direct/Shadow, Transitional projection.

OperationMethod and public routeContractResponses and behaviorSafe example
Attendance rosterGET /attendance/employeesNo parameters/body200 ApiResponse<AttendanceEmployeeDto[]>; active profiles, read-onlyGET /attendance/employeesdata:[]; failure body follows direct model where handled.
Upsert local profilePUT /attendance/employee-profilesEmployeeProfileUpsertRequest200 ApiResponse<int>; 400 invalid; inserts/updates projection and audit, no attendance eventFictional body with laborId:4242, name:"Example Employee", isActive:true, attendanceMode:"Direct"; success returns fictional id; missing employee/name → 400.
Profile roster aliasGET /attendance/employee-profilesNo parameters/body200 ApiResponse<AttendanceEmployeeDto[]>; same active projection queryGET …/employee-profilesdata:[]; handled tenant failure where raised → 400.

Upsert fields are laborId, name, optional employee code/contact/organization/manager context, optional joining date, isActive, standardDailyHours, attendanceMode, half-day/absence threshold fields, and optional legacy shift name/start/end context. Name and positive employee reference are required. Blank attendance mode falls back to Direct in the application service. Customer-specific numeric values are intentionally omitted from examples.

Response roster fields include identity/display and contact/organization context, joining date, mode, standard/threshold context, tenant reference, and active state. Consumers must apply data minimization. There is no get-by-id, delete, patch, or confirmed event-driven synchronization endpoint. Employee Service remains the system of record.

Source References

  • microservices/src/attendance-service/Api/AttendanceDirectEndpoints.cs
  • microservices/src/attendance-service/Application/Dtos.cs
  • microservices/src/attendance-service/Application/Services/EmployeeProfileService.cs
  • microservices/src/attendance-service/Application/Services/AttendanceQueries.cs

See Also

Keywords

  • Attendance API
  • Attendance Employee Profiles API

Revision Information

  • Status: Draft
  • Last reviewed: 2026-07-15
  • Review cycle: Quarterly