update_member
Changes a member's role, permissions or websites and returns the member as list_members does.
Update a team member · Changes data
Changes a member's role, permissions or websites and returns the member as list_members does. Fields left out stay as they are; websites replaces the whole list (send allWebsites false with it). Giving an Owner a preset or permissions makes them a Member; the last Owner cannot be changed. Confirm with the user before calling. Needs the master key.
| Connection | Account-owner URL or OAuth (not a team member URL) |
|---|
Parameters
| Parameter | Type | Required | Accepts | Description |
|---|---|---|---|---|
userId | string | Yes | any | userId from list_members. |
role | string | No | Owner, Member | Owner (everything, including billing) or Member (what permissions allow). Only an Owner can make another Owner. |
preset | string | No | full, sales, developer, viewer, team, client | Start from a preset of permissions: full, sales, developer, viewer, team or client (see get_permissions_catalog). |
permissions | string[] | No | 21 values | Exact permission ids, from get_permissions_catalog. Overrides the preset. |
allWebsites | boolean | No | any | true: access to every current and future website. |
websites | string[] | No | any | Website ids the member can see, when allWebsites is false. |
Accepted values
The exact values these fields take; anything else is refused.
permissions
pixel · add_website · website · delete_website · integrations · leads_view · leads_export · qualify · campaigns · buy_mailboxes · connect_mailboxes · warmup · inbox · optimize_seo · optimize_google_ads · optimize_meta_ads · optimize_linkedin_ads · team · api_keys · billing · whitelabel
Tool definition
What your assistant receives from tools/list:
{
"name": "update_member",
"title": "Update a team member",
"annotations": {
"title": "Update a team member",
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": false
},
"inputSchema": {
"type": "object",
"properties": {
"userId": {
"type": "string",
"description": "userId from list_members."
},
"role": {
"type": "string",
"enum": [
"Owner",
"Member"
],
"description": "Owner (everything, including billing) or Member (what permissions allow). Only an Owner can make another Owner."
},
"preset": {
"type": "string",
"enum": [
"full",
"sales",
"developer",
"viewer",
"team",
"client"
],
"description": "Start from a preset of permissions: full, sales, developer, viewer, team or client (see get_permissions_catalog)."
},
"permissions": {
"type": "array",
"items": {
"type": "string",
"enum": [
"pixel",
"add_website",
"website",
"delete_website",
"integrations",
"leads_view",
"leads_export",
"qualify",
"campaigns",
"buy_mailboxes",
"connect_mailboxes",
"warmup",
"inbox",
"optimize_seo",
"optimize_google_ads",
"optimize_meta_ads",
"optimize_linkedin_ads",
"team",
"api_keys",
"billing",
"whitelabel"
]
},
"description": "Exact permission ids, from get_permissions_catalog. Overrides the preset."
},
"allWebsites": {
"type": "boolean",
"description": "true: access to every current and future website."
},
"websites": {
"type": "array",
"items": {
"type": "string"
},
"description": "Website ids the member can see, when allWebsites is false."
}
},
"required": [
"userId"
]
}
}invite_members
Invites people to the account; each one gets an invitation email to set a password (emailed: false when invite emails are off, then they copy the join link from the Team page).
remove_member
Removes a person from the account: they lose access straight away, their website access is removed and the invitation is given back.