searchUsers method
Searches the specified directory for a user. You can find users that match
the SearchString parameter with the value of their attributes
included in the SearchString parameter.
This operation supports pagination with the use of the
NextToken request and response parameters. If more results
are available, the SearchUsers.NextToken member contains a
token that you pass in the next call to SearchUsers. This
retrieves the next set of items.
You can also specify a maximum number of return results with the
MaxResults parameter.
May throw AccessDeniedException.
May throw DirectoryUnavailableException.
May throw InternalServerException.
May throw ThrottlingException.
May throw ValidationException.
Parameter directoryId :
The identifier (ID) of the directory that's associated with the user.
Parameter searchAttributes :
One or more data attributes that are used to search for a user. For a list
of supported attributes, see Directory
Service Data Attributes.
Parameter searchString :
The attribute value that you want to search for.
Parameter maxResults :
The maximum number of results to be returned per request.
Parameter nextToken :
An encoded paging token for paginated calls that can be passed back to
retrieve the next page.
Parameter realm :
The domain name that's associated with the user.
This value is case insensitive.
Implementation
Future<SearchUsersResult> searchUsers({
required String directoryId,
required List<String> searchAttributes,
required String searchString,
int? maxResults,
String? nextToken,
String? realm,
}) async {
_s.validateNumRange(
'maxResults',
maxResults,
1,
250,
);
final $query = <String, List<String>>{
'DirectoryId': [directoryId],
};
final $payload = <String, dynamic>{
'SearchAttributes': searchAttributes,
'SearchString': searchString,
if (maxResults != null) 'MaxResults': maxResults,
if (nextToken != null) 'NextToken': nextToken,
if (realm != null) 'Realm': realm,
};
final response = await _protocol.send(
payload: $payload,
method: 'POST',
requestUri: '/Users/SearchUsers',
queryParams: $query,
exceptionFnMap: _exceptionFns,
);
return SearchUsersResult.fromJson(response);
}