Class: MicrosoftGraph::Security::Incidents::IncidentsRequestBuilder

Inherits:
MicrosoftKiotaAbstractions::BaseRequestBuilder
  • Object
show all
Defined in:
lib/security/incidents/incidents_request_builder.rb

Overview

Provides operations to manage the incidents property of the microsoft.graph.security entity.

Defined Under Namespace

Classes: IncidentsRequestBuilderGetQueryParameters

Instance Method Summary collapse

Constructor Details

#initialize(path_parameters, request_adapter) ⇒ Object

Instantiates a new IncidentsRequestBuilder and sets the default values.

Parameters:

  • path_parameters

    Path parameters for the request

  • request_adapter

    The request adapter to use to execute the requests.



40
41
42
# File 'lib/security/incidents/incidents_request_builder.rb', line 40

def initialize(path_parameters, request_adapter)
    super(path_parameters, request_adapter, "{+baseurl}/security/incidents{?%24top,%24skip,%24search,%24filter,%24count,%24orderby,%24select,%24expand}")
end

Instance Method Details

#by_incident_id(incident_id) ⇒ Object

Provides operations to manage the incidents property of the microsoft.graph.security entity.

Parameters:

  • incident_id

    The unique identifier of incident

Returns:

  • a incident_item_request_builder

Raises:

  • (StandardError)


28
29
30
31
32
33
# File 'lib/security/incidents/incidents_request_builder.rb', line 28

def by_incident_id(incident_id)
    raise StandardError, 'incident_id cannot be null' if incident_id.nil?
    url_tpl_params = @path_parameters.clone
    url_tpl_params["incident%2Did"] = incident_id
    return MicrosoftGraph::Security::Incidents::Item::IncidentItemRequestBuilder.new(url_tpl_params, @request_adapter)
end

#countObject

Provides operations to count the resources in the collection.



20
21
22
# File 'lib/security/incidents/incidents_request_builder.rb', line 20

def count()
    return MicrosoftGraph::Security::Incidents::Count::CountRequestBuilder.new(@path_parameters, @request_adapter)
end

#get(request_configuration = nil) ⇒ Object

Get a list of incident objects that Microsoft 365 Defender has created to track attacks in an organization. Attacks are typically inflicted on different types of entities, such as devices, users, and mailboxes, resulting in multiple alert objects. Microsoft 365 Defender correlates alerts with the same attack techniques or the same attacker into an incident. This operation allows you to filter and sort through incidents to create an informed cyber security response. It exposes a collection of incidents that were flagged in your network, within the time range you specified in your environment retention policy. The most recent incidents are displayed at the top of the list.

Parameters:

  • request_configuration (defaults to: nil)

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

Returns:

  • a Fiber of security_incident_collection_response



48
49
50
51
52
53
54
55
56
# File 'lib/security/incidents/incidents_request_builder.rb', line 48

def get(request_configuration=nil)
    request_info = self.to_get_request_information(
        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::SecurityIncidentCollectionResponse.create_from_discriminator_value(pn) }, error_mapping)
end

#post(body, request_configuration = nil) ⇒ Object

Create new navigation property to incidents for security

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 security_incident

Raises:

  • (StandardError)


63
64
65
66
67
68
69
70
71
72
# File 'lib/security/incidents/incidents_request_builder.rb', line 63

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::SecurityIncident.create_from_discriminator_value(pn) }, error_mapping)
end

#to_get_request_information(request_configuration = nil) ⇒ Object

Get a list of incident objects that Microsoft 365 Defender has created to track attacks in an organization. Attacks are typically inflicted on different types of entities, such as devices, users, and mailboxes, resulting in multiple alert objects. Microsoft 365 Defender correlates alerts with the same attack techniques or the same attacker into an incident. This operation allows you to filter and sort through incidents to create an informed cyber security response. It exposes a collection of incidents that were flagged in your network, within the time range you specified in your environment retention policy. The most recent incidents are displayed at the top of the list.

Parameters:

  • request_configuration (defaults to: nil)

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

Returns:

  • a request_information



78
79
80
81
82
83
84
85
86
87
88
89
90
# File 'lib/security/incidents/incidents_request_builder.rb', line 78

def to_get_request_information(request_configuration=nil)
    request_info = MicrosoftKiotaAbstractions::RequestInformation.new()
    request_info.url_template = @url_template
    request_info.path_parameters = @path_parameters
    request_info.http_method = :GET
    request_info.headers.add('Accept', 'application/json')
    unless request_configuration.nil?
        request_info.add_headers_from_raw_object(request_configuration.headers)
        request_info.set_query_string_parameters_from_raw_object(request_configuration.query_parameters)
        request_info.add_request_options(request_configuration.options)
    end
    return request_info
end

#to_post_request_information(body, request_configuration = nil) ⇒ Object

Create new navigation property to incidents for security

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)


97
98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'lib/security/incidents/incidents_request_builder.rb', line 97

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