Download OpenAPI specification:
Hrmony Embedded API — Client tier. Do not edit by hand.
Compact list of benefits available to the calling employee, with current status (aktiviert, pausiert, deaktiviert). Retrieve detailed configuration and budget usage per benefit via GET /benefits/{benefit}/konfiguration.
| Accept-Language required | string Enum: "de" "en" Request language surface — |
| X-Request-Id | string Correlation id; echoed on the response. |
| traceparent | string W3C trace context. |
| tracestate | string W3C trace state. |
{- "data": [
- {
- "benefitType": "essenszuschuss",
- "status": "active"
}
], - "meta": {
- "pagination": {
- "nextCursor": "string",
- "hasMore": true
}
}
}Returns only the currently active meal allowance configuration for the calling employee. If no active configuration exists, the benefit is not active and the endpoint responds with 404.
| Accept-Language required | string Enum: "de" "en" Request language surface — |
| X-Request-Id | string Correlation id; echoed on the response. |
| traceparent | string W3C trace context. |
| tracestate | string W3C trace state. |
{- "data": {
- "budget": 100,
- "dailyRate": 7.5
}
}Detail view of the meal allowance reimbursement for the specified service month: benefit status, configured budget, total amount, number of contributing receipts, and reimbursement days with their respective daily totals. When status: deaktiviert or pausiert, erstattungstage is empty and summe is 0. Full daily view (incl. receipts) via GET /benefits/essenszuschuss/tageserstattungen/{datum}.
| serviceMonth required | string^\d{4}-(0[1-9]|1[012])$ Service month in |
| Accept-Language required | string Enum: "de" "en" Request language surface — |
| X-Request-Id | string Correlation id; echoed on the response. |
| traceparent | string W3C trace context. |
| tracestate | string W3C trace state. |
{- "data": {
- "serviceMonth": "string",
- "status": "active",
- "budget": 0,
- "total": 0,
- "receiptCount": 0,
- "reimbursementDays": [
- {
- "date": "2019-08-24",
- "total": 0
}
]
}
}Meal allowance reimbursement for the calling employee on the specified service day: daily total and list of contributing receipts with ID and direct URL — no separate receipt call required.
| date required | string <date> Service day in |
| Accept-Language required | string Enum: "de" "en" Request language surface — |
| X-Request-Id | string Correlation id; echoed on the response. |
| traceparent | string W3C trace context. |
| tracestate | string W3C trace state. |
{- "data": {
- "date": "2019-08-24",
- "total": 0,
}
}Returns the status of the calling employee regarding meal allowance in the specified service month: aktiv, deaktiviert, or pausiert. Allows frontends to show retroactively whether the benefit was effective in a month, regardless of whether any reimbursements occurred.
| serviceMonth required | string^\d{4}-(0[1-9]|1[012])$ Service month in |
| Accept-Language required | string Enum: "de" "en" Request language surface — |
| X-Request-Id | string Correlation id; echoed on the response. |
| traceparent | string W3C trace context. |
| tracestate | string W3C trace state. |
{- "data": {
- "serviceMonth": "string",
- "status": "active"
}
}Returns only the currently active mobility configuration for the calling employee. If no active configuration exists, the benefit is not active and the endpoint responds with 404.
| Accept-Language required | string Enum: "de" "en" Request language surface — |
| X-Request-Id | string Correlation id; echoed on the response. |
| traceparent | string W3C trace context. |
| tracestate | string W3C trace state. |
{- "data": {
- "budget": 100
}
}Detail view of the mobility reimbursement for the specified service month: benefit status, configured budget, total amount, number of contributing receipts, and reimbursement days with their respective daily totals. When status: deaktiviert or pausiert, erstattungstage is empty and summe is 0. Full daily view (incl. receipts) via GET /benefits/mobilitaet/tageserstattungen/{datum}.
| serviceMonth required | string^\d{4}-(0[1-9]|1[012])$ Service month in |
| Accept-Language required | string Enum: "de" "en" Request language surface — |
| X-Request-Id | string Correlation id; echoed on the response. |
| traceparent | string W3C trace context. |
| tracestate | string W3C trace state. |
{- "data": {
- "serviceMonth": "string",
- "status": "active",
- "budget": 0,
- "total": 0,
- "receiptCount": 0,
- "reimbursementDays": [
- {
- "date": "2019-08-24",
- "total": 0
}
]
}
}Mobility reimbursement for the calling employee on the specified service day: daily total and list of contributing receipts with ID and direct URL — no separate receipt call required.
| date required | string <date> Service day in |
| Accept-Language required | string Enum: "de" "en" Request language surface — |
| X-Request-Id | string Correlation id; echoed on the response. |
| traceparent | string W3C trace context. |
| tracestate | string W3C trace state. |
{- "data": {
- "date": "2019-08-24",
- "total": 0,
}
}Returns the status of the calling employee regarding mobility in the specified service month: aktiv, deaktiviert, or pausiert. Allows frontends to show retroactively whether the benefit was effective in a month, regardless of whether any reimbursements occurred.
| serviceMonth required | string^\d{4}-(0[1-9]|1[012])$ Service month in |
| Accept-Language required | string Enum: "de" "en" Request language surface — |
| X-Request-Id | string Correlation id; echoed on the response. |
| traceparent | string W3C trace context. |
| tracestate | string W3C trace state. |
{- "data": {
- "serviceMonth": "string",
- "status": "active"
}
}Receipts are submitted in two steps. This endpoint returns a presigned upload URL, the associated uploadFields, and a permanent belegId. In the second step, the client posts multipart/form-data directly to the upload URL.
| Accept-Language required | string Enum: "de" "en" Request language surface — |
| X-Request-Id | string Correlation id; echoed on the response. |
| traceparent | string W3C trace context. |
| tracestate | string W3C trace state. |
| Idempotency-Key | string Optional idempotency key for mutating requests. |
required | "essenszuschuss" (string) or "mobilitaet" (string) Benefit type. |
| reference | string <= 200 characters Optional partner reference. |
{- "benefitType": "essenszuschuss"
}{- "data": {
- "receiptId": "4937ce52-e283-4321-b00f-c29b6dd5d0e9",
- "uploadFields": { },
- "validUntil": "2019-08-24T14:15:22Z"
}
}Returns the receipt including a presigned download URL (belegUrl). The response is a discriminated union over benefitTyp — meal allowance and mobility receipts have slightly different structural fields.
| receiptId required | string <uuid> UUID of the receipt. |
| Accept-Language required | string Enum: "de" "en" Request language surface — |
| X-Request-Id | string Correlation id; echoed on the response. |
| traceparent | string W3C trace context. |
| tracestate | string W3C trace state. |
{- "data": {
- "benefitType": "essenszuschuss",
- "receiptId": "4937ce52-e283-4321-b00f-c29b6dd5d0e9",
- "status": "submitted",
- "serviceMonth": "string",
- "submittedAt": "2019-08-24T14:15:22Z",
- "receiptDate": "2019-08-24",
- "rejectionReason": "string",
}
}Returns receipts of all benefit types for the employee, sorted by eingereichtAm descending. belegUrl is not included in list items — retrieve per receipt via GET /belege/{belegId}.
| limit | integer [ 1 .. 200 ] Default: 50 Page size. Default 50, maximum 200. |
| cursor | string Opaque cursor from |
| Accept-Language required | string Enum: "de" "en" Request language surface — |
| X-Request-Id | string Correlation id; echoed on the response. |
| traceparent | string W3C trace context. |
| tracestate | string W3C trace state. |
{- "data": [
- {
- "benefitType": "essenszuschuss",
- "receiptId": "4937ce52-e283-4321-b00f-c29b6dd5d0e9",
- "status": "submitted",
- "serviceMonth": "string",
- "submittedAt": "2019-08-24T14:15:22Z",
- "receiptDate": "2019-08-24",
- "rejectionReason": "string",
}
], - "meta": {
- "pagination": {
- "nextCursor": "string",
- "hasMore": true
}
}
}Deletes a receipt regardless of benefit type — the belegId is globally unique and the backend derives the type from it.
| Accept-Language required | string Enum: "de" "en" Request language surface — |
| X-Request-Id | string Correlation id; echoed on the response. |
| traceparent | string W3C trace context. |
| tracestate | string W3C trace state. |
| Idempotency-Key | string Optional idempotency key for mutating requests. |
| receiptId required | string <uuid> UUID of the receipt. |
{- "receiptId": "4937ce52-e283-4321-b00f-c29b6dd5d0e9"
}{- "data": {
- "receiptId": "4937ce52-e283-4321-b00f-c29b6dd5d0e9"
}
}Disputable fields differ by benefit type. For meal allowance these are mahlzeitsumme and belegdatum (both wrappers required, at least one with angefochten: true). For mobility it is belegsumme. The benefit type is specified via the benefitTyp discriminator field.
| Accept-Language required | string Enum: "de" "en" Request language surface — |
| X-Request-Id | string Correlation id; echoed on the response. |
| traceparent | string W3C trace context. |
| tracestate | string W3C trace state. |
| Idempotency-Key | string Optional idempotency key for mutating requests. |
{- "data": {
- "receiptId": "4937ce52-e283-4321-b00f-c29b6dd5d0e9",
- "disputeVersion": 1
}
}