updateUserMetadata()
Updates the metadata associated with the specified user by merging existing values with the provided parameters.
A "deep" merge will be performed - "deep" means that any nested JSON objects will be merged as well. You can remove metadata keys at any level by setting their value to null.
Returns a User object.
function updateUserMetadata(userId: string, params: UpdateUserMetadataParams): Promise<User>- Name
userId- Type
string- Description
The ID of the user to update.
- Name
publicMetadata?- Type
- UserPublicMetadata
- Description
Metadata that can be read from the Frontend API and Backend API and can be set only from the Backend API.
- Name
privateMetadata?- Type
- UserPrivateMetadata
- Description
Metadata that can be read and set only from the Backend API.
const userId = 'user_123'
const response = await clerkClient.users.updateUserMetadata(userId, {
publicMetadata: {
example: 'metadata',
},
})Backend API (BAPI) endpoint
This method in the SDK is a wrapper around the BAPI endpoint PATCH/users/{user_id}/metadata. See the BAPI reference for more information.
Here's an example of making a request directly to the endpoint using cURL.
Replace YOUR_SECRET_KEY with your Clerk Secret Key. You can find your Secret Key on the API keys page in the Clerk Dashboard.
curl -XPATCH -H 'Authorization: Bearer YOUR_SECRET_KEY' -H "Content-type: application/json" -d '{
"public_metadata": {
"birthday": "1990-01-01"
}
}' 'https://api.clerk.com/v1/users/{user_id}/metadata'Feedback
Last updated on