New API version v7.12 has been released! 🎉
REST DocumentationWorkhour Balances and Vacation EntitlementsList workhour balances and vacation entitlements

GET Workhour Balances and Vacation Entitlements

You can use this endpoint to retrieve a paginated list of the cached overtime / work-hour balances and vacation entitlements. Each record is a previous-day snapshot calculated by the WorkHourBalanceCalculator.

Request

GET /api/v1/workhour-balances
curl --request GET \
     --url 'https://www.zep-online.de/zepinstanz/next/api/v1/workhour-balances' \
     --header 'Accept: application/json' \
     --header 'Authorization: Bearer {token}'

Response

{
  "data": [
    {
      "id": 1,
      "employee_id": "jdoe",
      "balance": 12.75,
      "calculated_at": "2026-06-21T23:59:59+02:00",
      "vacation": [
        {
          "year": 2026,
          "approved": 8.0,
          "planned": 2.0,
          "remaining": 20.0,
          "annual_entitlement": 30.0
        }
      ]
    },
    {
      "id": 2,
      "employee_id": "asmith",
      "balance": -3.5,
      "calculated_at": "2026-06-21T23:59:59+02:00",
      "vacation": [
        {
          "year": 2026,
          "approved": 15.0,
          "planned": 0.0,
          "remaining": 10.0,
          "annual_entitlement": 25.0
        }
      ]
    }
  ],
  "links": {
    "first": "https://www.zep-online.de/zepinstanz/next/api/v1/workhour-balances?page=1",
    "last": "https://www.zep-online.de/zepinstanz/next/api/v1/workhour-balances?page=1",
    "prev": null,
    "next": null
  },
  "meta": {
    "current_page": 1,
    "from": 1,
    "last_page": 1,
    "links": [
      {
        "url": null,
        "label": "« Previous",
        "active": false
      },
      {
        "url": "https://www.zep-online.de/zepinstanz/next/api/v1/workhour-balances?page=1",
        "label": "1",
        "active": true
      },
      {
        "url": null,
        "label": "Next »",
        "active": false
      }
    ],
    "path": "https://www.zep-online.de/zepinstanz/next/api/v1/workhour-balances",
    "per_page": 15,
    "to": 2,
    "total": 2
  }
}

Optional Parameters

  • Name
    employee_id
    Type
    string
    Description

    Filter by employee username.

  • Name
    limit
    Type
    integer
    Description

    Number of results per page (default 15, maximum 200).

  • Name
    page
    Type
    integer
    Description

    Page number (default 1).