# Users

Agent and collaborator management (users, groups, types, genders).

 - [GET /users](https://api-doc.immo-facile.com/openapi/users/listusers.md): Returns all users (agents/collaborators) for the authenticated site, with optional filters and cursor-based pagination. **Filters:** All query parameters are optional. Combine them to narrow results.
 - [POST /users](https://api-doc.immo-facile.com/openapi/users/createuser.md): Creates a new user (agent/collaborator) in the system. **Password requirements (RGPD):** - Length: 12-40 characters - Must contain: uppercase, lowercase, digit, special character **Agency assignment:
 - [GET /users/{userId}](https://api-doc.immo-facile.com/openapi/users/getuser.md): Returns detailed information about a user (agent/collaborator). Use `?include=logs` to include the user's recent action log entries.
 - [PATCH /users/{userId}](https://api-doc.immo-facile.com/openapi/users/updateuser.md): Partially updates a user. Only provided fields are modified. **Note:** Password can be changed via this endpoint. Same RGPD requirements apply.
 - [DELETE /users/{userId}](https://api-doc.immo-facile.com/openapi/users/deleteuser.md): Deletes a user. Their properties, customers, and other entities are automatically reassigned according to the site's configuration rules. **Warning:** This operation is irreversible. The user will be
 - [POST /users/{userId}/photo](https://api-doc.immo-facile.com/openapi/users/adduserphoto.md): Uploads the profile picture and/or signature of a user (agent/collaborator). Use `multipart/form-data`. At least one of `profile_picture` or `signature_picture` must be provided. Images only, max 20MB
 - [DELETE /users/{userId}/photo](https://api-doc.immo-facile.com/openapi/users/deleteuserphoto.md): Removes the profile picture and/or signature of a user (agent/collaborator). Use the `profile_picture` / `signature_picture` boolean flags to indicate which photo(s) to delete.
 - [GET /users/groups](https://api-doc.immo-facile.com/openapi/users/listusergroups.md): Returns all available user groups (permission levels) for the site. Groups determine the access level and permissions of a user within the agency (e.g. "Administrateur", "Négociateur", "Assistante").
 - [GET /users/types](https://api-doc.immo-facile.com/openapi/users/listusertypes.md): Returns all available user types (professional roles) for the site. User types categorize the professional role (e.g. "Négociateur", "Gestionnaire", "Directeur"). A user can have multiple types. Use t
 - [GET /users/genders](https://api-doc.immo-facile.com/openapi/users/listgenders.md): Returns all available gender options. Gender codes are used when creating users or customers (e.g. `"m"`, `"f"`). Some genders represent legal entities (companies) — check the `is_entity` flag.
