# User Management

The User Management API adheres to the [SCIM 2.0](https://scim.cloud/) protocol unless otherwise stated, and provides management and provisioning of users in a program.  Managing users requires that the acting user have a role of Program Manager or Administrator, and users can only create or update users with a role less than or equal to their own.
Resources
User Management contextual overview.
    User provisioning use case examples.
    SCIM patching and user editing use case examples.Custom user attributes overview.User role and access.

 - [GET /scim/v2/Schemas](https://developers.firstup.io/endpoints/openapi/user-management/listschemas.md): Returns a list of the schemas in use by this SCIM API. Implements SCIM 2.0 Specification.
 - [GET /scim/v2/Schemas/{schema_id}](https://developers.firstup.io/endpoints/openapi/user-management/detailschema.md): Returns the specified schema used by this SCIM API. Implements SCIM 2.0 specification.
 - [GET /scim/v2/ServiceProviderConfig](https://developers.firstup.io/endpoints/openapi/user-management/detailserviceproviderconfig.md): Returns the Schema Provider configuration as per SCIM 2.0 Specification. Additional references: SCIM 2.0 Spc Section 8.5SCIM 2.0 Spec Section 8.7.2
 - [GET /scim/v2/ResourceTypes](https://developers.firstup.io/endpoints/openapi/user-management/listresourcetypes.md): Returns available Resource Types configuration as per SCIM 2.0 Specification. Additional references: SCIM 2.0 Protocol Spec Section 4SCIM 2.0 Spec Section 8.5
 - [GET /scim/v2/ResourceTypes/{resource_id}](https://developers.firstup.io/endpoints/openapi/user-management/detailresourcetype.md): Returns the requested Resource Type SCIM 2.0 Specification. Additional references: SCIM 2.0 Protocol Spec Section 4SCIM 2.0 Spec Section 8.5
 - [GET /scim/v2/Users](https://developers.firstup.io/endpoints/openapi/user-management/listusers.md): This endpoint allows you to retrieve information about all or some of the users stored in the Firstup application and adheres to the [SCIM 2.0 Section: 4.1](https://datatracker.ietf.org/doc/html/rfc76
 - [POST /scim/v2/Users](https://developers.firstup.io/endpoints/openapi/user-management/createuser.md): Create and provision a new user. The request should include any properties to be set on the user, and leaving any out will leave those values blank, or will use defaults. New users have a role of "me
 - [GET /scim/v2/Users/{user_id}](https://developers.firstup.io/endpoints/openapi/user-management/detailuser.md): Returns a User record for specified user in the program.
 - [PUT /scim/v2/Users/{user_id}](https://developers.firstup.io/endpoints/openapi/user-management/replaceuser.md): To update or replace user information, ensure that your request includes a comprehensive set of user attributes. Utilize **PUT** endpoints carefully. Modified data models caused by new features or use
 - [PATCH /scim/v2/Users/{user_id}](https://developers.firstup.io/endpoints/openapi/user-management/patchuser.md): Update a user in the program with partial changes using SCIM PatchOp. Add, remove, or replace selected fields of the user. Role updates require the acting user's role to be the same or higher role tha
 - [DELETE /scim/v2/Users/{user_id}](https://developers.firstup.io/endpoints/openapi/user-management/deleteuser.md): Permanently remove a User and their details from the authenticated program. Returns a 204 on success. A non-existent user will return a 404. If the user record belongs to multiple programs (communiti
 - [GET /scim/v2/Users/me](https://developers.firstup.io/endpoints/openapi/user-management/me.md): Returns a User record for specified user in the program. This endpoint requires authentication as a user.
 - [POST /v2/Users/{user_id}/forget](https://developers.firstup.io/endpoints/openapi/user-management/forgetuser.md): Permanently remove a User and their details from the authenticated program. A non-existent user, or a user that's already been forgotten, will return a 202. If the user record belongs to multiple pro
