diff --git a/lib/management/user.ts b/lib/management/user.ts index 51e26ada..e2030b61 100644 --- a/lib/management/user.ts +++ b/lib/management/user.ts @@ -123,26 +123,30 @@ const withUser = (sdk: CoreSdk, managementKey?: string) => ({ picture?: string, verifiedEmail?: boolean, verifiedPhone?: boolean, - ): Promise> => - transformResponse( - sdk.httpClient.post( - apiPaths.user.update, - { - loginId, - email, - phone, - displayName, - roleNames: roles, - userTenants, - customAttributes, - picture, - verifiedEmail, - verifiedPhone, - }, - { token: managementKey }, - ), + ): Promise> => { + const args = { + loginId, + email, + phone, + displayName, + roleNames: roles, + userTenants, + customAttributes, + picture, + verifiedEmail, + verifiedPhone, + }; + const filtered = Object.entries(args).reduce((acc, [key, value]) => { + if (typeof value !== 'undefined') { + acc[key] = value; + } + return acc; + }, {}); + return transformResponse( + sdk.httpClient.post(apiPaths.user.update, filtered, { token: managementKey }), (data) => data.user, - ), + ); + }, delete: (loginId: string): Promise> => transformResponse( sdk.httpClient.post(apiPaths.user.delete, { loginId }, { token: managementKey }),