Skip to content

Update member role

Endpoint

PUT /organizations/{org_id}/users/{user_id}/role

This endpoint updates the role of a specific member within the organization.

Request

Replace {org_id} with your Organization ID and {user_id} with the numeric ID of the member whose role you want to change.

Headers

  • Authorization: Bearer {your_access_token}
  • Accept: application/json
  • X-Tallyfy-Client: APIClient
  • Content-Type: application/json

Body (JSON)

The request body requires a JSON object specifying the new role.

  • role (string, required): The new role name (e.g., admin, standard, light). Check organization settings or documentation for exact available role names.

Example Body:

{
"role": "light"
}

Code Samples

const accessToken = 'YOUR_PERSONAL_ACCESS_TOKEN';
const orgId = 'YOUR_ORGANIZATION_ID';
const userId = 12345; // ID of the member whose role to update
const apiUrl = `https://go.tallyfy.com/api/organizations/${orgId}/users/${userId}/role`;
const roleData = {
role: "admin" // Promote to Admin
};
const headers = new Headers();
headers.append('Authorization', `Bearer ${accessToken}`);
headers.append('Accept', 'application/json');
headers.append('X-Tallyfy-Client', 'APIClient');
headers.append('Content-Type', 'application/json');
fetch(apiUrl, {
method: 'PUT',
headers: headers,
body: JSON.stringify(roleData)
})
.then(response => {
if (!response.ok) {
// Error handling...
return response.json().then(errData => { throw new Error(/*...*/); }).catch(() => { throw new Error(/*...*/); });
}
return response.json();
})
.then(data => {
console.log(`Successfully updated role for member ${userId}:`);
console.log(JSON.stringify(data, null, 2)); // Response likely shows the updated user profile
})
.catch(error => {
console.error(`Error updating role for member ${userId}:`, error);
});

Response

A successful request returns a 200 OK status code and a JSON object containing the member’s full profile, reflecting the updated user_role.

{
"data": {
"id": 12345,
"email": "specific.user@example.com",
"first_name": "Specific",
"last_name": "User",
"user_role": "light", // Role is updated
// ... other user properties ...
"last_updated": "2024-05-21T14:00:00Z" // Timestamp reflects the update
}
}

If the user ID or role name is invalid, or you lack permission, an appropriate error status code (404, 403, 400, 422) will be returned.