adminDeleteUserAttributes method

Future<void> adminDeleteUserAttributes({
  1. required List<String> userAttributeNames,
  2. required String userPoolId,
  3. required String username,
})

Deletes attribute values from a user. This operation doesn't affect tokens for existing user sessions. The next ID token that the user receives will no longer have the deleted attributes.

Learn more

May throw InternalErrorException. May throw InvalidParameterException. May throw NotAuthorizedException. May throw OperationNotEnabledException. May throw ResourceNotFoundException. May throw TooManyRequestsException. May throw UserNotFoundException.

Parameter userAttributeNames : An array of strings representing the user attribute names you want to delete.

For custom attributes, you must prepend the custom: prefix to the attribute name.

Parameter userPoolId : The ID of the user pool where you want to delete user attributes.

Parameter username : The name of the user that you want to query or modify. The value of this parameter is typically your user's username, but it can be any of their alias attributes. If username isn't an alias attribute in your user pool, this value must be the sub of a local user or the username of a user from a third-party IdP.

Implementation

Future<void> adminDeleteUserAttributes({
  required List<String> userAttributeNames,
  required String userPoolId,
  required String username,
}) async {
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target':
        'AWSCognitoIdentityProviderService.AdminDeleteUserAttributes'
  };
  await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'UserAttributeNames': userAttributeNames,
      'UserPoolId': userPoolId,
      'Username': username,
    },
  );
}