If true, stop after Phase 1 and only update position_in_band and position_category fields. Phase 2 is skipped.
Default:false
Launch salary calculation in the background.
Returns immediately with a job_id. The calculation runs asynchronously
and writes results directly to Dataverse.
Use GET /salary/jobs/{job_id} to check progress.
If true, stop after Phase 1 and only update position_in_band and position_category fields. Phase 2 is skipped.
Default:false
Job accepted
Status of an async salary calculation job
Error message if status is failed
Unique job identifier (UUID)
Job status: running, completed, or failed
Allowed values:runningcompletedfailed
Check the status of a salary calculation job.
UUID returned by POST /salary/calculate
Job status
Status of an async salary calculation job
Error message if status is failed
Unique job identifier (UUID)
Job status: running, completed, or failed
Allowed values:runningcompletedfailed
Generate projection grid for all dialogs, experiences, and positions.
Creates a comprehensive dataset of salary trajectories across all possible
starting conditions.
Args:
budget_factor: Budget constraint multiplier (1.0 = 100% funded, 0.87 = 87%)
Returns:
Dictionary with projection grid data.
Default:1
Successful Response
Apply structural salary measures to eligible employees.
Fetches active rules from strukturelle_params, evaluates them against all latest
non-excluded employees, and writes cumulated amounts back to Dataverse.
Successful Response
Number of employees with non-zero structural amount
Number of active rules applied
Total CHF allocated across all employees
Data ingestion endpoints