For the complete documentation index, see llms.txt. This page is also available as Markdown.

Edit a user

Edit a user — change the profile, set roles, change marketing preferences and see the logins.

Where: Membership → Users → click a name · /projects/<project>/membership/users/<userId>/edit

Before you start

  • The user exists — see Add a user.

  • You need the membership:update permission on users.

Steps

  1. In Users, click the name, for example ghopper. The user opens with two ids at the top: Contact id — this person (ct_5NLscr55MQTYmGk072vwnw) and one Login id per login (usr_6UMSWzqF7e28l72daFjBaa). Use the login id where a login is asked for, for example the Admin Portal service user. Below are four tabs; the open tab is kept in the address (#roles, #marketing-preferences, #identification).

    User ghopper with Contact id ct_5NLscr55MQTYmGk072vwnw, Login id usr_6UMSWzqF7e28l72daFjBaa, the tabs User, Roles, Marketing preferences, Identification and the Personal Information block
    The user, User tab.
  2. On the User tab, change the profile and press Save:

    Field
    Required
    What it does
    Example

    First Name, Last Name

    no

    Name parts.

    Grace, Hopper

    Full Name

    no

    The full form of the name.

    Rear Admiral Grace Hopper

    Display Name

    no

    The name in the users list and the page title.

    Grace Hopper

    Birth Date, Gender

    no

    Profile fields.

    —

    Company

    no

    The company of the person.

    Acme Labs

    Phone

    no

    A phone on the profile.

    —

    Country, Address, Address 2, City, State / Province, ZIP / Postal code

    no

    The address.

    —

    User tab filled: First Name Grace, Last Name Hopper, Full Name Rear Admiral Grace Hopper, Display Name Grace Hopper, Company Acme Labs
    The profile, changed.
  3. On the Roles tab, tick the roles and press Save roles. Reset brings back the saved choice. The roles are stored on the person and copied to every login. When the project has AI plans, the tab also has AI plan with Save AI plan.

    Roles tab of Ada Lovelace with Managed only ticked, support-agent and content-editor not ticked, Reset and Save roles
    The Roles tab.
  4. On the Marketing preferences tab, choose what the person receives. The Marketing and Transactional tabs list your topics, grouped as in Settings → Communication; each topic has one switch per delivery channel it offers (Email, Push, SMS). A switch saves at once.

    Marketing preferences of Ada Lovelace: Marketing tab, group marketing-newsletters with Newsletter (Email) and Event Invitations (Email, Push), group marketing-promotions with Promotions (Email, Push)
    The Marketing preferences tab.
  5. The Identification tab lists the logins with their type and status. Map an existing login attaches a login to this person by its id (usr_…) — only for a login that was not linked on its own.

    Identification tab: one login ada.lovelace@example.com, type Email, status Registered, and Map an existing login with an input and the Map button
    The Identification tab.
Roles tab after Save roles: an error toast CM-ERRORS-INFRA-NORBIX-001 A temporary internal error occurred
The error after Save roles.
Marketing preferences after a click on Promotions Email: the switches look the same as before
After a click: the saved change is not drawn.

Result

After Save on the User tab, the title shows the new display name and the users list shows it too.

The user after save, title Grace Hopper, with the saved profile fields
The saved profile.

A change of the user runs the When updated trigger — see Triggers.

Change or remove it later

  • Delete — the Delete button at the top: Delete a user.

  • Block, unblock, verify a login — the user screen has no buttons for this. Use blockUser / unblockUser from code (Block User, Unblock User).

Do it from code

The update request needs the user id in the body as well as in the address; the SDK and the CLI send it only in the address and get missing required properties including: 'contactId'. That is why the snippet repeats it as ContactId and the CLI line uses norbix raw.

Roles on a login (works today — pass role names, not role ids; an id is accepted but nothing is stored): await norbix.api.membership.assignRolePermissions({ id: 'usr_54bPhijPmABCWtGf30TeZ1', roles: ['Editor'] }). The client setup is on the Membership page. API: Update Contact · Get Contact · Assign Role Permissions · Set Contact Roles · Set Contact Tag Subscription · Map Auth To User

Last updated

Was this helpful?