HR25 Compensation API

Get Job Status

Check the status of a salary calculation job.

get
https://hr25-comp.service.migros.cloud/migros/human-resources/hrsolcomp/v1/salary/jobs

Query Parameters

job_idstringrequired

UUID returned by POST /salary/calculate

Headers

authorizationstring

Response

application/json

Job status

JobStatus

Status of an async salary calculation job

errorstring

Error message if status is failed

job_idstringrequired

Unique job identifier (UUID)

statusstringrequired

Job status: running, completed, or failed

Allowed values:runningcompletedfailed

get/migros/human-resources/hrsolcomp/v1/salary/jobs
 
application/json

Get Projection Grid

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.

get
https://hr25-comp.service.migros.cloud/migros/human-resources/hrsolcomp/v1/salary/projection-grid

Query Parameters

budget_factornumber

Default:1

Headers

authorizationstring

Response

application/json

Successful Response

Response Get Projection Grid Salary Projection Grid Get

Response Get Projection Grid Salary Projection Grid Getobject
* Additional properties are allowed.
get/migros/human-resources/hrsolcomp/v1/salary/projection-grid
 
application/json

Apply Strukturelle Massnahmen

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.

post
https://hr25-comp.service.migros.cloud/migros/human-resources/hrsolcomp/v1/salary/strukturelle-massnahmen

Headers

authorizationstring

Response

application/json

Successful Response

StruktuelleResponse

nb_employees_impactedinteger

Number of employees with non-zero structural amount

nb_rulesinteger

Number of active rules applied

totalnumber

Total CHF allocated across all employees

post/migros/human-resources/hrsolcomp/v1/salary/strukturelle-massnahmen
 
application/json

ingestion

Data ingestion endpoints

Ingest Csv

Ingest a CSV file into Dataverse.

Uses the same transformation pipeline as test_ingestion.py:
rename columns, prepare for Dataverse, and create records.

post
https://hr25-comp.service.migros.cloud/migros/human-resources/hrsolcomp/v1/ingestion/csv

Headers

authorizationstring

Body

multipart/form-data

Body_ingest_csv_ingestion_csv_post

filestringrequired

Response

application/json

Successful Response

Response Ingest Csv Ingestion Csv Post

Response Ingest Csv Ingestion Csv Postobject
* Additional properties are allowed.
post/migros/human-resources/hrsolcomp/v1/ingestion/csv

Body

No file selected
 
Error initializing code snippet
application/json