Users

Update user in app

Auth: User JWT

Update an end-user belonging to {appId}.

Auth model:

  • User JWT: caller must have an AppAcl row for {appId} with application.appUsers.update == true. Super-admin write bypasses the Acl.
  • B2B Server JWT: allowed when {appId} is the calling tenant's own app or one of its child apps (parentAppId equality). NO Acl lookup.

The userId path slot accepts any of:

  • Mongo _id (e.g. 699c6923429c2757ac8ab6a4)
  • chat xmppUsername (e.g. <appId>_<id>)
  • SDK-facing uuid Whichever shape the SDK happens to know is fine; the lookup is always appId-scoped so it can't cross tenants.
put/v1/users/{appId}/{userId}

Request

  • Base URL: https://api.chat.ethora.com
  • URL: https://api.chat.ethora.com/v1/users/{appId}/{userId}
  • Auth: HTTP bearer

Path parameters

appIdstring required

Target App ID. Must be an app the calling actor owns or has been delegated access to.

userIdstring required

Target User ID, scoped to the appId in the same path: Mongo _id, xmppUsername, or uuid - all appId-scoped.

Response

{
  user: {
    defaultWallet: {
      walletAddress: string
    },
    isSuperAdmin?: {
      read: boolean,
      write: boolean
    },
    _id: string,
    firstName: string,
    lastName: string,
    email: string,
    username: string,
    tags: string[],
    profileImage: string,
    emails: [
      {
        loginType: string,
        email: string,
        verified: boolean,
        _id: string
      }
    ],
    appId: string,
    xmppPassword: string,
    roles: string[],
    isProfileOpen: boolean,
    isAssetsOpen: boolean,
    isAgreeWithTerms: boolean,
    homeScreen: string,
    registrationChannelType: string,
    createdAt: string,
    updatedAt: string
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.