accounts method

Signs up a new email and password user or anonymous user, or upgrades an anonymous user to email and password.

For an admin request with a Google OAuth 2.0 credential with the proper permissions, creates a new anonymous, email and password, or phone number user. An API key is required in the request in order to identify the Google Cloud project.

request - The metadata request object.

Request parameters:

targetProjectId - The project ID of the project which the user should belong to. Specifying this field requires a Google OAuth 2.0 credential with the proper permissions. If this is not set, the target project is inferred from the scope associated to the Bearer access token. Value must have pattern ^\[^/\]+$.

tenantId - The ID of the Identity Platform tenant to create a user under. If not set, the user will be created under the default Identity Platform project. Value must have pattern ^\[^/\]+$.

$fields - Selector specifying which fields to include in a partial response.

Completes with a GoogleCloudIdentitytoolkitV1SignUpResponse.

Completes with a commons.ApiRequestError if the API endpoint returned an error.

If the used http.Client completes with an error when making a REST call, this method will complete with the same error.

Implementation

async.Future<GoogleCloudIdentitytoolkitV1SignUpResponse> accounts(
  GoogleCloudIdentitytoolkitV1SignUpRequest request,
  core.String targetProjectId,
  core.String tenantId, {
  core.String? $fields,
}) async {
  final body_ = convert.json.encode(request);
  final queryParams_ = <core.String, core.List<core.String>>{
    if ($fields != null) 'fields': [$fields],
  };

  final url_ = 'v1/projects/' +
      core.Uri.encodeFull('$targetProjectId') +
      '/tenants/' +
      core.Uri.encodeFull('$tenantId') +
      '/accounts';

  final response_ = await _requester.request(
    url_,
    'POST',
    body: body_,
    queryParams: queryParams_,
  );
  return GoogleCloudIdentitytoolkitV1SignUpResponse.fromJson(
      response_ as core.Map<core.String, core.dynamic>);
}