# Users

## GET /users/{user-id}

> Get the specified user.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.3-r.4"},"tags":[{"name":"Users"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"User":{"required":["email","firstName","lastName"],"type":"object","properties":{"id":{"type":"integer","format":"int64"},"firstName":{"type":"string"},"lastName":{"type":"string"},"email":{"type":"string"},"timezone":{"$ref":"#/components/schemas/TimeZone"},"position":{"type":"string"},"department":{"type":"string"},"avatarUrl":{"type":"string","readOnly":true},"language":{"type":"string","enum":["de","en"]},"region":{"type":"string","enum":["DE","GB","CH","CN","IN","US","FR","ES","CA","IE"]},"role":{"$ref":"#/components/schemas/Role"},"shiftColor":{"type":"string","description":"Optional hex-color code for the user's shifts in schedules calendars"},"mutedUntil":{"type":"string","description":"Date in ISO-8601","format":"date-time"},"createdAt":{"type":"string","description":"Date in ISO-8601","format":"date-time"},"updatedAt":{"type":"string","description":"Date in ISO-8601","format":"date-time"}}},"TimeZone":{"type":"string","enum":["Europe/Berlin","America/New_York","America/Los_Angeles","Asia/Istanbul"]},"Role":{"type":"string","enum":["STAKEHOLDER","GUEST","RESPONDER","USER","ADMIN"]}}},"paths":{"/users/{user-id}":{"get":{"tags":["Users"],"summary":"Get the specified user.","parameters":[{"name":"user-id","in":"path","description":"numeric user id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"the user object","content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}}}}}}}}
```

## PUT /users/{user-id}

> Update an existing user.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.3-r.4"},"tags":[{"name":"Users"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"User":{"required":["email","firstName","lastName"],"type":"object","properties":{"id":{"type":"integer","format":"int64"},"firstName":{"type":"string"},"lastName":{"type":"string"},"email":{"type":"string"},"timezone":{"$ref":"#/components/schemas/TimeZone"},"position":{"type":"string"},"department":{"type":"string"},"avatarUrl":{"type":"string","readOnly":true},"language":{"type":"string","enum":["de","en"]},"region":{"type":"string","enum":["DE","GB","CH","CN","IN","US","FR","ES","CA","IE"]},"role":{"$ref":"#/components/schemas/Role"},"shiftColor":{"type":"string","description":"Optional hex-color code for the user's shifts in schedules calendars"},"mutedUntil":{"type":"string","description":"Date in ISO-8601","format":"date-time"},"createdAt":{"type":"string","description":"Date in ISO-8601","format":"date-time"},"updatedAt":{"type":"string","description":"Date in ISO-8601","format":"date-time"}}},"TimeZone":{"type":"string","enum":["Europe/Berlin","America/New_York","America/Los_Angeles","Asia/Istanbul"]},"Role":{"type":"string","enum":["STAKEHOLDER","GUEST","RESPONDER","USER","ADMIN"]}}},"paths":{"/users/{user-id}":{"put":{"tags":["Users"],"summary":"Update an existing user.","parameters":[{"name":"user-id","in":"path","description":"numeric user id","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"the user object","content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}},"required":false},"responses":{"200":{"description":"the updated user","content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}}}}}}}}
```

## DELETE /users/{user-id}

> Delete the specified user.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.3-r.4"},"tags":[{"name":"Users"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}}},"paths":{"/users/{user-id}":{"delete":{"tags":["Users"],"summary":"Delete the specified user.","parameters":[{"name":"user-id","in":"path","description":"numeric user id","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"if deletion was successful","content":{}}}}}}}
```

## GET /users

> List existing users.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.3-r.4"},"tags":[{"name":"Users"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"User":{"required":["email","firstName","lastName"],"type":"object","properties":{"id":{"type":"integer","format":"int64"},"firstName":{"type":"string"},"lastName":{"type":"string"},"email":{"type":"string"},"timezone":{"$ref":"#/components/schemas/TimeZone"},"position":{"type":"string"},"department":{"type":"string"},"avatarUrl":{"type":"string","readOnly":true},"language":{"type":"string","enum":["de","en"]},"region":{"type":"string","enum":["DE","GB","CH","CN","IN","US","FR","ES","CA","IE"]},"role":{"$ref":"#/components/schemas/Role"},"shiftColor":{"type":"string","description":"Optional hex-color code for the user's shifts in schedules calendars"},"mutedUntil":{"type":"string","description":"Date in ISO-8601","format":"date-time"},"createdAt":{"type":"string","description":"Date in ISO-8601","format":"date-time"},"updatedAt":{"type":"string","description":"Date in ISO-8601","format":"date-time"}}},"TimeZone":{"type":"string","enum":["Europe/Berlin","America/New_York","America/Los_Angeles","Asia/Istanbul"]},"Role":{"type":"string","enum":["STAKEHOLDER","GUEST","RESPONDER","USER","ADMIN"]}}},"paths":{"/users":{"get":{"tags":["Users"],"summary":"List existing users.","parameters":[{"name":"start-index","in":"query","description":"an integer specifying the starting point (beginning with 0) when paging through a list of entities","schema":{"type":"integer","format":"int32","default":0}},{"name":"max-results","in":"query","description":"the maximum number of results when paging through a list of entities.","schema":{"maximum":100,"type":"integer","format":"int32","default":50}}],"responses":{"200":{"description":"list of users","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/User"}}}}}}}}}}
```

## Create a new user. Requires ADMIN privileges.

> \*\*Sample request\*\*\
> \
> \`\`\`json\
> Request URL: <https://api.ilert.com/api/users\\>
> \
> {\
> &#x20; "firstName": "John",\
> &#x20; "lastName": "Doe",\
> &#x20; "email": "<john@acme.com>",\
> &#x20; "position": "Software Engineer",\
> }\
> \`\`\`\
> \
> \*\*Response\*\*\
> \
> \`\`\`\`json\
> {\
> &#x20; "id": 2188373,\
> &#x20; "firstName": "John",\
> &#x20; "lastName": "Doe",\
> &#x20; "email": "<john@acme.com>",\
> &#x20; "position": "Software Engineer",\
> &#x20; "timezone": "Europe/Berlin",\
> &#x20; "language": "de",\
> &#x20; "role": "RESPONDER",\
> &#x20;}\
> \`\`\`\`<br>

`````json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.3-r.4"},"tags":[{"name":"Users"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"UserPost":{"required":["email","firstName","lastName"],"type":"object","properties":{"firstName":{"type":"string"},"lastName":{"type":"string"},"email":{"type":"string"},"timezone":{"$ref":"#/components/schemas/TimeZone"},"position":{"type":"string"},"department":{"type":"string"},"avatarUrl":{"type":"string","readOnly":true},"language":{"type":"string","enum":["de","en"]},"region":{"type":"string","enum":["DE","GB","CH","CN","IN","US","FR","ES","CA","IE"]},"role":{"$ref":"#/components/schemas/Role"},"shiftColor":{"type":"string","description":"Optional hex-color code for the user's shifts in schedules calendars"}}},"TimeZone":{"type":"string","enum":["Europe/Berlin","America/New_York","America/Los_Angeles","Asia/Istanbul"]},"Role":{"type":"string","enum":["STAKEHOLDER","GUEST","RESPONDER","USER","ADMIN"]},"User":{"required":["email","firstName","lastName"],"type":"object","properties":{"id":{"type":"integer","format":"int64"},"firstName":{"type":"string"},"lastName":{"type":"string"},"email":{"type":"string"},"timezone":{"$ref":"#/components/schemas/TimeZone"},"position":{"type":"string"},"department":{"type":"string"},"avatarUrl":{"type":"string","readOnly":true},"language":{"type":"string","enum":["de","en"]},"region":{"type":"string","enum":["DE","GB","CH","CN","IN","US","FR","ES","CA","IE"]},"role":{"$ref":"#/components/schemas/Role"},"shiftColor":{"type":"string","description":"Optional hex-color code for the user's shifts in schedules calendars"},"mutedUntil":{"type":"string","description":"Date in ISO-8601","format":"date-time"},"createdAt":{"type":"string","description":"Date in ISO-8601","format":"date-time"},"updatedAt":{"type":"string","description":"Date in ISO-8601","format":"date-time"}}}}},"paths":{"/users":{"post":{"tags":["Users"],"summary":"Create a new user. Requires ADMIN privileges.","parameters":[{"name":"send-no-invitation","in":"query","description":"Provide ?send-no-invitation=true if you do not wish to send an invitation email.","schema":{"type":"boolean","default":false}}],"description":"**Sample request**\n\n```json\nRequest URL: https://api.ilert.com/api/users\n\n{\n  \"firstName\": \"John\",\n  \"lastName\": \"Doe\",\n  \"email\": \"john@acme.com\",\n  \"position\": \"Software Engineer\",\n}\n```\n\n**Response**\n\n````json\n{\n  \"id\": 2188373,\n  \"firstName\": \"John\",\n  \"lastName\": \"Doe\",\n  \"email\": \"john@acme.com\",\n  \"position\": \"Software Engineer\",\n  \"timezone\": \"Europe/Berlin\",\n  \"language\": \"de\",\n  \"role\": \"RESPONDER\",\n }\n````\n","requestBody":{"description":"the user object","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserPost"}}},"required":false},"responses":{"201":{"description":"Created. The URI of the created user entity is included in the Location header and the user object is included in the body.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}}}}}}}}
`````

## Find a user by email address.

> Search for a user by their email address within the scope of the current account. This endpoint uses POST instead of GET to prevent email addresses from being exposed in URLs, server access logs, and browser history.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.3-r.4"},"tags":[{"name":"Users"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"User":{"required":["email","firstName","lastName"],"type":"object","properties":{"id":{"type":"integer","format":"int64"},"firstName":{"type":"string"},"lastName":{"type":"string"},"email":{"type":"string"},"timezone":{"$ref":"#/components/schemas/TimeZone"},"position":{"type":"string"},"department":{"type":"string"},"avatarUrl":{"type":"string","readOnly":true},"language":{"type":"string","enum":["de","en"]},"region":{"type":"string","enum":["DE","GB","CH","CN","IN","US","FR","ES","CA","IE"]},"role":{"$ref":"#/components/schemas/Role"},"shiftColor":{"type":"string","description":"Optional hex-color code for the user's shifts in schedules calendars"},"mutedUntil":{"type":"string","description":"Date in ISO-8601","format":"date-time"},"createdAt":{"type":"string","description":"Date in ISO-8601","format":"date-time"},"updatedAt":{"type":"string","description":"Date in ISO-8601","format":"date-time"}}},"TimeZone":{"type":"string","enum":["Europe/Berlin","America/New_York","America/Los_Angeles","Asia/Istanbul"]},"Role":{"type":"string","enum":["STAKEHOLDER","GUEST","RESPONDER","USER","ADMIN"]}}},"paths":{"/users/search-email":{"post":{"tags":["Users"],"summary":"Find a user by email address.","description":"Search for a user by their email address within the scope of the current account. This endpoint uses POST instead of GET to prevent email addresses from being exposed in URLs, server access logs, and browser history.","requestBody":{"description":"the email to search for","content":{"application/json":{"schema":{"type":"object","required":["email"],"properties":{"email":{"type":"string","description":"the email address of the user to find"}}}}},"required":true},"responses":{"200":{"description":"the matching user object","content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}}},"404":{"description":"no user found with the given email address"}}}}}}
```

## GET /users/current

> Get the currently authenticated user.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.3-r.4"},"tags":[{"name":"Users"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"User":{"required":["email","firstName","lastName"],"type":"object","properties":{"id":{"type":"integer","format":"int64"},"firstName":{"type":"string"},"lastName":{"type":"string"},"email":{"type":"string"},"timezone":{"$ref":"#/components/schemas/TimeZone"},"position":{"type":"string"},"department":{"type":"string"},"avatarUrl":{"type":"string","readOnly":true},"language":{"type":"string","enum":["de","en"]},"region":{"type":"string","enum":["DE","GB","CH","CN","IN","US","FR","ES","CA","IE"]},"role":{"$ref":"#/components/schemas/Role"},"shiftColor":{"type":"string","description":"Optional hex-color code for the user's shifts in schedules calendars"},"mutedUntil":{"type":"string","description":"Date in ISO-8601","format":"date-time"},"createdAt":{"type":"string","description":"Date in ISO-8601","format":"date-time"},"updatedAt":{"type":"string","description":"Date in ISO-8601","format":"date-time"}}},"TimeZone":{"type":"string","enum":["Europe/Berlin","America/New_York","America/Los_Angeles","Asia/Istanbul"]},"Role":{"type":"string","enum":["STAKEHOLDER","GUEST","RESPONDER","USER","ADMIN"]}}},"paths":{"/users/current":{"get":{"tags":["Users"],"summary":"Get the currently authenticated user.","responses":{"200":{"description":"user object","content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}}}}}}}}
```

## PUT /users/current

> Update the current user.

```json
{"openapi":"3.0.1","info":{"title":"ilert REST API","version":"v2.2026.3-r.4"},"tags":[{"name":"Users"}],"servers":[{"url":"/api"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","description":"The Bearer API key of your user <a href='/api-docs/#section/Authentication'>more info</a>.","name":"Authorization","in":"header"}},"schemas":{"UserPost":{"required":["email","firstName","lastName"],"type":"object","properties":{"firstName":{"type":"string"},"lastName":{"type":"string"},"email":{"type":"string"},"timezone":{"$ref":"#/components/schemas/TimeZone"},"position":{"type":"string"},"department":{"type":"string"},"avatarUrl":{"type":"string","readOnly":true},"language":{"type":"string","enum":["de","en"]},"region":{"type":"string","enum":["DE","GB","CH","CN","IN","US","FR","ES","CA","IE"]},"role":{"$ref":"#/components/schemas/Role"},"shiftColor":{"type":"string","description":"Optional hex-color code for the user's shifts in schedules calendars"}}},"TimeZone":{"type":"string","enum":["Europe/Berlin","America/New_York","America/Los_Angeles","Asia/Istanbul"]},"Role":{"type":"string","enum":["STAKEHOLDER","GUEST","RESPONDER","USER","ADMIN"]},"User":{"required":["email","firstName","lastName"],"type":"object","properties":{"id":{"type":"integer","format":"int64"},"firstName":{"type":"string"},"lastName":{"type":"string"},"email":{"type":"string"},"timezone":{"$ref":"#/components/schemas/TimeZone"},"position":{"type":"string"},"department":{"type":"string"},"avatarUrl":{"type":"string","readOnly":true},"language":{"type":"string","enum":["de","en"]},"region":{"type":"string","enum":["DE","GB","CH","CN","IN","US","FR","ES","CA","IE"]},"role":{"$ref":"#/components/schemas/Role"},"shiftColor":{"type":"string","description":"Optional hex-color code for the user's shifts in schedules calendars"},"mutedUntil":{"type":"string","description":"Date in ISO-8601","format":"date-time"},"createdAt":{"type":"string","description":"Date in ISO-8601","format":"date-time"},"updatedAt":{"type":"string","description":"Date in ISO-8601","format":"date-time"}}}}},"paths":{"/users/current":{"put":{"tags":["Users"],"summary":"Update the current user.","requestBody":{"description":"user object","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserPost"}}},"required":false},"responses":{"200":{"description":"the updated user","content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}}}}}}}}
```
