Class: MicrosoftGraph::Me::Authentication::Methods::Item::ResetPassword::ResetPasswordRequestBuilder

Inherits:
MicrosoftKiotaAbstractions::BaseRequestBuilder
  • Object
show all
Defined in:
lib/me/authentication/methods/item/reset_password/reset_password_request_builder.rb

Overview

Provides operations to call the resetPassword method.

Instance Method Summary collapse

Constructor Details

#initialize(path_parameters, request_adapter) ⇒ Object

Instantiates a new ResetPasswordRequestBuilder and sets the default values.

Parameters:

  • path_parameters

    Path parameters for the request

  • request_adapter

    The request adapter to use to execute the requests.



27
28
29
# File 'lib/me/authentication/methods/item/reset_password/reset_password_request_builder.rb', line 27

def initialize(path_parameters, request_adapter)
    super(path_parameters, request_adapter, "{+baseurl}/me/authentication/methods/{authenticationMethod%2Did}/resetPassword")
end

Instance Method Details

#post(body, request_configuration = nil) ⇒ Object

Reset a user’s password, represented by a password authentication method object. This can only be done by an administrator with appropriate permissions and cannot be performed on a user’s own account. This flow writes the new password to Azure Active Directory and pushes it to on-premises Active Directory if configured using password writeback. The admin can either provide a new password or have the system generate one. The user is prompted to change their password on their next sign in. This reset is a long-running operation and will return a Location header with a link where the caller can periodically check for the status of the reset operation.

Parameters:

  • body

    The request body

  • request_configuration (defaults to: nil)

    Configuration for the request such as headers, query parameters, and middleware options.

Returns:

  • a Fiber of password_reset_response

Raises:

  • (StandardError)


36
37
38
39
40
41
42
43
44
45
# File 'lib/me/authentication/methods/item/reset_password/reset_password_request_builder.rb', line 36

def post(body, request_configuration=nil)
    raise StandardError, 'body cannot be null' if body.nil?
    request_info = self.to_post_request_information(
        body, request_configuration
    )
    error_mapping = Hash.new
    error_mapping["4XX"] = lambda {|pn| MicrosoftGraph::Models::ODataErrorsODataError.create_from_discriminator_value(pn) }
    error_mapping["5XX"] = lambda {|pn| MicrosoftGraph::Models::ODataErrorsODataError.create_from_discriminator_value(pn) }
    return @request_adapter.send_async(request_info, lambda {|pn| MicrosoftGraph::Models::PasswordResetResponse.create_from_discriminator_value(pn) }, error_mapping)
end

#to_post_request_information(body, request_configuration = nil) ⇒ Object

Reset a user’s password, represented by a password authentication method object. This can only be done by an administrator with appropriate permissions and cannot be performed on a user’s own account. This flow writes the new password to Azure Active Directory and pushes it to on-premises Active Directory if configured using password writeback. The admin can either provide a new password or have the system generate one. The user is prompted to change their password on their next sign in. This reset is a long-running operation and will return a Location header with a link where the caller can periodically check for the status of the reset operation.

Parameters:

  • body

    The request body

  • request_configuration (defaults to: nil)

    Configuration for the request such as headers, query parameters, and middleware options.

Returns:

  • a request_information

Raises:

  • (StandardError)


52
53
54
55
56
57
58
59
60
61
62
63
64
65
# File 'lib/me/authentication/methods/item/reset_password/reset_password_request_builder.rb', line 52

def to_post_request_information(body, request_configuration=nil)
    raise StandardError, 'body cannot be null' if body.nil?
    request_info = MicrosoftKiotaAbstractions::RequestInformation.new()
    request_info.url_template = @url_template
    request_info.path_parameters = @path_parameters
    request_info.http_method = :POST
    request_info.headers.add('Accept', 'application/json')
    unless request_configuration.nil?
        request_info.add_headers_from_raw_object(request_configuration.headers)
        request_info.add_request_options(request_configuration.options)
    end
    request_info.set_content_from_parsable(@request_adapter, "application/json", body)
    return request_info
end