Update app user

<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Changes a user's role or the extra fields the app stores on them, and returns the updated user.

Send role to change the user's role. It isn't checked against the roles the app defines, so a misspelled role is saved as sent. If the user also belongs to a group shared with the app, they keep the highest role any of their groups gives them, so the role in the response can be higher than the one you sent. Only the app's owner can change the owner's role.

Every other field you send is merged into the user's record. A field you leave out keeps its value. The fields aren't checked against the User schema, so a misspelled name is stored under that name. email and full_name belong to the user's account and are ignored, as are id, collaborator_role, and a few fields Base44 manages itself.

Field-level security rules on the User entity apply. A role you send is saved before the other fields are checked, so a call rejected for another field, by one of those rules or for an oversized value, changes none of the other fields but still changes the role.

Updating a user triggers the app's webhooks for the User entity.

<Warning>The response includes fields beyond the ones documented here. Don't rely on undocumented response fields, as they can change at any time.</Warning>

<Note>This endpoint accepts a personal API key belonging to a user with editor access to the app. A read-only key is refused, and workspace API keys are not accepted.</Note>

put/api/apps/{app_id}/entities/User/{user_id}

Path parameters

user_idstring required

ID of the user, as id in the response of List app users.

ID of the user, as id in the response of List app users.

app_idstring required

ID of the app the user belongs to.

ID of the app the user belongs to.

Request body

rolestring

New role for the user in the app, such as user or admin.

Example request

{
  "role": "admin"
}

Response

The updated user.

idstring nullable

ID of the user.

emailstring nullable

Email the user signs in with.

full_namestring nullable

The user's name, or null if they haven't given one.

rolestring nullable

The user's role in the app. user and admin are built in, and an app can define its own.

collaborator_role'editor' nullable

editor when the user can also edit the app in Base44, otherwise null.

created_datestring nullable

When the user joined the app, as a UTC timestamp in ISO 8601 format.

updated_datestring nullable

When the user's record last changed, as a UTC timestamp in ISO 8601 format.

Example response

{
  "id": "6874b0c2e1a94d0031bb77de",
  "email": "jane@acme.com",
  "full_name": "Jane Cooper",
  "role": "user",
  "collaborator_role": "editor",
  "created_date": "2026-06-01T09:23:41.481000Z",
  "updated_date": "2026-06-04T14:07:02.115000Z"
}

Changes

Changed in 1 of the 14 revisions of this API.1