v1
latestOpenAPI 3.0.02026-08-06151101754.7 KBReturns employees
Query parameters
Filters by IDs. Multiple inputs with id[]=1&id[]=2
Number of items per Page
Result Page
Order column
Order direction. asc or desc possible
Returns a single aggregate over the filtered list instead of the paginated result, e.g. {"data": {"count": 42}}. Allowed values: count, sum.column, min.column, max.column, avg.column (e.g. return=sum.duration_seconds). sum and avg require a numeric column.
Returns one aggregate row per bucket of the given column instead of the paginated result, e.g. group_by=type_id gives {"data": [{"type_id": 1, "count": 5}, ...]}. The per-bucket aggregate reuses the "return=" grammar and defaults to count (e.g. group_by=type_id&return=sum.id). Combine with order_by=<aggregate>&order_direction=desc for "top N" queries. Groupable columns are known model columns plus foreign keys. Datetime columns must be bucketed by granularity: group_by=created_at:month (also :year, :day/:date), giving {"data": [{"created_at": "2026-07", "count": 5}, ...]}. Results are capped at 1000 buckets.
You can load relations using the with parameter. Example for assignments/appointments: with[]=documents loads all related documents and adds it to the response.
Exclude ids. Multiple inputs with exclude[]=3&exclude[]=6
Search string
Filter by group_id. Multiple inputs with group_id[]=1&group_id[]=2
Filter by picture_id. Multiple inputs with picture_id[]=1&picture_id[]=2
Filter by first_name. Multiple inputs with first_name[]=some&first_name[]=other
Filter by last_name. Multiple inputs with last_name[]=some&last_name[]=other
Filter by email. Multiple inputs with email=some@example.com&email=other@example.com
Filter by phone.
Filter by mobile.
Filter by skills.
Filter by info.
Filter by locale. Multiple inputs with locale[]=de_DE&locale[]=en_US
Filter by number. Multiple inputs with number[]=101&number[]=102
Filter by position. Multiple inputs with position[]=some&position[]=other
Filter by department. Multiple inputs with department[]=some&department[]=other
Filter by inactive.
Filter by driver_license.
Filter by truck_license.
Assigned assignments Ids. Multiple inputs with assignments[]=3&assignments[]=6
Assigned absences Ids. Multiple inputs with absences[]=3&absences[]=6
Assigned notes Ids. Multiple inputs with notes[]=3¬es[]=6
Center latitude for radius-based geo filter. Requires lng and radius.
Center longitude for radius-based geo filter. Requires lat and radius.
Radius in meters for geo filter. Requires lat and lng.
Response
Employees list
Example response
{
"data": [
{
"id": 1,
"first_line": "John Doe",
"custom_number": "E-101",
"picture_id": 1,
"group_id": 1,
"first_name": "John",
"last_name": "Doe",
"full_name": "John Doe",
"email": "john.doe@example.com",
"phone": "+49123456789",
"mobile": "+49987654321",
"street": "Main Street 1",
"zip": "12345",
"city": "Berlin",
"province": "Berlin",
"country": "DE",
"lat": 52.520007,
"lng": 13.404954,
"number": "E-101",
"position": "Developer",
"department": "IT",
"skills": "Woodworking, Plumbing",
"holidays_per_year": 25.5,
"driver_license": true,
"initials": "JD",
"picture_is_avatar": true,
"icon": "fa-user",
"color": "#FF5733",
"contrast_color": "dark",
"locale": "de_DE",
"timezone": "Europe/Berlin",
"info": "Some extra info",
"source": "manual"
}
]
}