Skip to main content

API DTO Catalog

Summary

This inventory records verified transport and application DTOs used by lifecycle operations. Field groups are summarized to avoid publishing credential examples, personal values, or internal identifiers.

Audience

Developers, QA, support, security reviewers, and solution architects.

Reference Content

The following tables inventory the verified lifecycle transport and application contracts.

Native Recruitment DTOs

DTODirectionPurpose and field groupsValidationSource
AcceptOfferInputRequestSigner and signature textState validation in command; signer can defaultrecruitment-service/Application/Dtos.cs
RejectOfferInputRequestRejection reasonPublic rejection requires non-empty reason; domain state rulesrecruitment-service/Application/Dtos.cs
OnboardingStatusInputRequestStatus and notesFlexible enum parsing and aggregate transition rulesrecruitment-service/Application/Dtos.cs
OfferDtoResponseOffer identity, candidate, compensation, status, joining/signing dataProjection onlyrecruitment-service/Application/Dtos.cs
PublicOfferDtoResponseReduced public offer projectionProjection onlyrecruitment-service/Application/Dtos.cs
OnboardingDtoResponseCandidate/offer, joining, status, created workforce references, login readinessProjection onlyrecruitment-service/Application/Dtos.cs
JoiningReportDtoResponseLifecycle status totalsQuery aggregationrecruitment-service/Application/Dtos.cs

Compatibility DTOs

DTODirectionPurpose and field groupsValidationSource
OfferStatusDtoRequestCompatibility statusNormalization/command rules; no dedicated validatorrecruitment-service/Application/Compatibility/CompatContracts.cs
OfferSignDtoRequestPublic signer and signatureTranslated to native acceptanceSame source
OfferRejectDtoRequestPublic rejection reasonRequired by rejection commandSame source
OnboardingStatusDtoRequestCompatibility status and notesCompleted is rejected on status operationSame source
CompleteOnboardingDtoRequestEmployee/contact/joining, organization, role, login-bootstrap, compensation, banking, identity, address, and notes groupsPath-specific; extracted adapter consumes only a subsetSame source and Controllers/RecruitmentController.cs
RecordResponse and metadata recordsResponseMonolith-shaped Recruitment recordsProjection onlyrecruitment-service/Application/Compatibility/CompatContracts.cs
Compatibility completion anonymous objectResponseCompletion message and workforce/login readiness dataConstructed after completionrecruitment-service/Application/Compatibility/CompatCommands.cs

HR Operations DTOs and entity-shaped contracts

ContractDirectionPurpose and field groupsValidationSource
ExitRequestDtoRequestResignation/last-working dates and reasonServer derives resignation date; reason/date/active-request checksControllers/HrOperationsController.cs
ExitDecisionDtoRequestConfirmed date, reason, remarksAction-specific state and required-reason checksSame source
OnboardingTaskRequest/responseEmployee, task, owner, category, due date, status, notesEmployee/task and tenant checksModels/OnboardingTask.cs
ExitRequestLegacy request and responseFull exit recordController applies path-specific sanitization/state rulesModels/ExitRequest.cs
Workspace anonymous objectResponseVisible tasks and exit records with other HR Operations dataQuery projectionControllers/HrOperationsController.cs
Access-revoke anonymous objectResponseProcessed record countDerived from eligible selectionSame source

Employee handoff contracts

ContractDirectionPurpose and field groupsValidationSource
Recruitment anonymous create bodyOutbound requestEmployee code, names, contact, organization, manager, and employmentEmployee Service command validatorsrecruitment-service/Infrastructure/EmployeeServiceClient.cs
EmployeeCreateHttpRequestInbound Employee requestEmployee and employment fieldsCreate-command async validatoremployee-service/Api/EmployeeDirectEndpoints.cs
Private Envelope, EmployeeData, SearchDataOutbound response bindingCreated or searched employee dataHTTP/client parsing onlyrecruitment-service/Infrastructure/EmployeeServiceClient.cs

Workflow callback DTO

RecruitmentWorkflowCallbackRequest is inbound and contains workflow/requisition correlation, subject, terminal result, and reason. Command validation accepts approved/completed or rejected results and validates subject and target resolution. It is not an onboarding/offboarding DTO.

Sensitive contract concern

Compatibility completion accepts and returns login-bootstrap material on legacy-shaped paths. Actual values are never reproduced here. The extracted implementation may generate response material even though it does not create a login, which requires security and product review.

Requires confirmation

  • Contract ownership and compatibility deprecation rules.
  • Whether entity-shaped HR Operations inputs should be replaced with dedicated request DTOs.
  • Whether sensitive completion response fields should remain in a public-facing contract.
  • Machine-readable schema and nullability guarantees.

Source References

  • microservices/src/recruitment-service/Application/Dtos.cs
  • microservices/src/recruitment-service/Application/Compatibility/CompatContracts.cs
  • microservices/src/recruitment-service/Application/Compatibility/CompatCommands.cs
  • microservices/src/recruitment-service/Application/WorkflowIntegration.cs
  • microservices/src/recruitment-service/Infrastructure/EmployeeServiceClient.cs
  • microservices/src/employee-service/Api/EmployeeDirectEndpoints.cs
  • Controllers/RecruitmentController.cs
  • Controllers/HrOperationsController.cs
  • Models/OnboardingTask.cs
  • Models/ExitRequest.cs

See Also

Keywords

  • DTO inventory
  • Compatibility contract
  • Entity-shaped request

Revision Information

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