Update auth user role
Updates the role of a user in the Neon Auth user directory for the specified branch.
PUT /projects/{project_id}/branches/{branch_id}/auth/users/{auth_user_id}/role
Updates the role of a user in the Neon Auth user directory for the specified branch. The role controls the user's level of access within the Neon Auth integration.
curl "https://console.neon.tech/api/v2/projects/$PROJECT_ID/branches/$BRANCH_ID/auth/users/$AUTH_USER_ID/role" \
-X PUT \
-H "Authorization: Bearer $NEON_API_KEY"Also available in
neon neon-auth user set-role <user-id> --roles <roles>Console path: Projects → Auth → Users
Parameters
Section titled “Parameters”Project ID
project_id
string
The Neon project ID
Branch ID
branch_id
string
The Neon branch ID
Auth user ID
auth_user_id
string
The Neon user ID
Request body
Section titled “Request body”1 required Required: roles.
Roles
roles
array
Roles to assign to the user in the Neon Auth (Better Auth) directory. user and admin are the built-in roles; custom role strings are also supported.
Response
Section titled “Response”200
Updated the auth user role
Depth
"id": (string),req
Errors
Section titled “Errors”default
General error
This endpoint can return the standard Neon API error response.
Response fields
messageRequired. Human-readable error message.codeRequired. Machine-readable error code.request_idOptional. Request identifier for debugging. You can provide one with theX-Request-IDheader.
Retry guidance
If no response is returned, the request may still have reached the server. This is why retry safety depends on the method and status code.
Idempotent methods (GET, HEAD, OPTIONS) are generally safe to retry after a network error or timeout. Non-idempotent methods (POST, PATCH, DELETE, PUT) can change state, so avoid automatic retries unless your workflow can tolerate duplicate effects.
Responses with 423 Locked or 503 Service Unavailable are safe to retry. 423 Locked means the resource is temporarily locked, usually because another operation is in progress.