PlatformDocs
MCP server

update_member

Changes a member's role, permissions or websites and returns the member as list_members does.

View as Markdown

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.

ConnectionAccount-owner URL or OAuth (not a team member URL)

Parameters

ParameterTypeRequiredAcceptsDescription
userIdstringYesanyuserId from list_members.
rolestringNoOwner, MemberOwner (everything, including billing) or Member (what permissions allow). Only an Owner can make another Owner.
presetstringNofull, sales, developer, viewer, team, clientStart from a preset of permissions: full, sales, developer, viewer, team or client (see get_permissions_catalog).
permissionsstring[]No21 valuesExact permission ids, from get_permissions_catalog. Overrides the preset.
allWebsitesbooleanNoanytrue: access to every current and future website.
websitesstring[]NoanyWebsite 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"
    ]
  }
}

On this page