datadog_api_client 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (190) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +6 -6
  3. data/.github/workflows/scripts/test_integration.js +24 -0
  4. data/.github/workflows/test.yml +4 -0
  5. data/.github/workflows/test_integration.yml +87 -0
  6. data/.openapi-generator/FILES +48 -0
  7. data/CHANGELOG.md +18 -0
  8. data/README.md +1 -1
  9. data/data/v1/openapi.yaml +1133 -99
  10. data/data/v2/openapi.yaml +420 -13
  11. data/docs/v1/Downtime.md +2 -0
  12. data/docs/v1/DowntimeChild.md +48 -0
  13. data/docs/v1/MetricsAPI.md +1 -1
  14. data/docs/v1/Monitor.md +3 -3
  15. data/docs/v1/MonitorGroupSearchResponse.md +22 -0
  16. data/docs/v1/MonitorGroupSearchResponseCounts.md +20 -0
  17. data/docs/v1/MonitorGroupSearchResult.md +30 -0
  18. data/docs/v1/MonitorOptions.md +1 -1
  19. data/docs/v1/MonitorSearchResponse.md +22 -0
  20. data/docs/v1/MonitorSearchResponseCounts.md +24 -0
  21. data/docs/v1/MonitorSearchResponseMetadata.md +24 -0
  22. data/docs/v1/MonitorSearchResult.md +40 -0
  23. data/docs/v1/MonitorSearchResultNotification.md +20 -0
  24. data/docs/v1/MonitorsAPI.md +155 -13
  25. data/docs/v1/NotebookCreateDataAttributes.md +1 -1
  26. data/docs/v1/NotebookResponseDataAttributes.md +3 -3
  27. data/docs/v1/NotebookUpdateDataAttributes.md +1 -1
  28. data/docs/v1/NotebooksResponse.md +1 -1
  29. data/docs/v1/NotebooksResponseData.md +22 -0
  30. data/docs/v1/NotebooksResponseDataAttributes.md +30 -0
  31. data/docs/v1/README.md +25 -4
  32. data/docs/v1/SyntheticsAPI.md +62 -2
  33. data/docs/v1/SyntheticsAPITest.md +2 -2
  34. data/docs/v1/SyntheticsAPITestConfig.md +1 -1
  35. data/docs/v1/SyntheticsBrowserTest.md +2 -2
  36. data/docs/v1/SyntheticsConfigVariable.md +3 -1
  37. data/docs/v1/SyntheticsGlobalVariableValue.md +1 -1
  38. data/docs/v1/SyntheticsListGlobalVariablesResponse.md +18 -0
  39. data/docs/v1/SyntheticsTestConfig.md +1 -1
  40. data/docs/v1/SyntheticsTestDetails.md +2 -2
  41. data/docs/v1/UsageAttributionBody.md +2 -0
  42. data/docs/v1/UsageAttributionPagination.md +3 -7
  43. data/docs/v1/UsageAttributionValues.md +8 -0
  44. data/docs/v1/UsageAuditLogsHour.md +20 -0
  45. data/docs/v1/UsageAuditLogsResponse.md +18 -0
  46. data/docs/v1/UsageCWSHour.md +22 -0
  47. data/docs/v1/UsageCWSResponse.md +18 -0
  48. data/docs/v1/UsageCloudSecurityPostureManagementHour.md +22 -0
  49. data/docs/v1/UsageCloudSecurityPostureManagementResponse.md +18 -0
  50. data/docs/v1/UsageMeteringAPI.md +157 -21
  51. data/docs/v1/UsageSummaryDate.md +12 -4
  52. data/docs/v1/UsageSummaryDateOrg.md +12 -4
  53. data/docs/v1/UsageSummaryResponse.md +12 -4
  54. data/docs/v1/UsageTopAvgMetricsMetadata.md +2 -2
  55. data/docs/v1/WidgetCustomLink.md +7 -3
  56. data/docs/v2/IncidentServicesAPI.md +2 -2
  57. data/docs/v2/IncidentTeamsAPI.md +2 -2
  58. data/docs/v2/IncidentsAPI.md +2 -2
  59. data/docs/v2/IncidentsResponse.md +1 -1
  60. data/docs/v2/KeyManagementAPI.md +6 -6
  61. data/docs/v2/README.md +21 -0
  62. data/docs/v2/RelationshipToIncidentIntegrationMetadataData.md +1 -1
  63. data/docs/v2/RelationshipToIncidentIntegrationMetadatas.md +1 -1
  64. data/docs/v2/RolesAPI.md +4 -4
  65. data/docs/v2/SecurityFilter.md +22 -0
  66. data/docs/v2/SecurityFilterAttributes.md +30 -0
  67. data/docs/v2/SecurityFilterCreateAttributes.md +26 -0
  68. data/docs/v2/SecurityFilterCreateData.md +20 -0
  69. data/docs/v2/SecurityFilterCreateRequest.md +18 -0
  70. data/docs/v2/SecurityFilterDeleteResponse.md +18 -0
  71. data/docs/v2/SecurityFilterExclusionFilter.md +20 -0
  72. data/docs/v2/SecurityFilterExclusionFilterResponse.md +20 -0
  73. data/docs/v2/SecurityFilterFilteredDataType.md +15 -0
  74. data/docs/v2/SecurityFilterMeta.md +18 -0
  75. data/docs/v2/SecurityFilterResponse.md +20 -0
  76. data/docs/v2/SecurityFilterType.md +15 -0
  77. data/docs/v2/SecurityFilterUpdateAttributes.md +28 -0
  78. data/docs/v2/SecurityFilterUpdateData.md +20 -0
  79. data/docs/v2/SecurityFilterUpdateRequest.md +18 -0
  80. data/docs/v2/SecurityFiltersResponse.md +20 -0
  81. data/docs/v2/SecurityMonitoringAPI.md +316 -2
  82. data/docs/v2/UsersAPI.md +10 -10
  83. data/lib/datadog_api_client/v1.rb +18 -2
  84. data/lib/datadog_api_client/v1/api/metrics_api.rb +2 -2
  85. data/lib/datadog_api_client/v1/api/monitors_api.rb +163 -5
  86. data/lib/datadog_api_client/v1/api/synthetics_api.rb +67 -0
  87. data/lib/datadog_api_client/v1/api/usage_metering_api.rb +180 -23
  88. data/lib/datadog_api_client/v1/models/downtime.rb +11 -1
  89. data/lib/datadog_api_client/v1/models/downtime_child.rb +427 -0
  90. data/lib/datadog_api_client/v1/models/monitor.rb +10 -0
  91. data/lib/datadog_api_client/v1/models/monitor_group_search_response.rb +243 -0
  92. data/lib/datadog_api_client/v1/models/monitor_group_search_response_counts.rb +237 -0
  93. data/lib/datadog_api_client/v1/models/monitor_group_search_result.rb +285 -0
  94. data/lib/datadog_api_client/v1/models/monitor_options.rb +1 -1
  95. data/lib/datadog_api_client/v1/models/monitor_search_response.rb +243 -0
  96. data/lib/datadog_api_client/v1/models/monitor_search_response_counts.rb +261 -0
  97. data/lib/datadog_api_client/v1/models/monitor_search_response_metadata.rb +253 -0
  98. data/lib/datadog_api_client/v1/models/monitor_search_result.rb +339 -0
  99. data/lib/datadog_api_client/v1/models/monitor_search_result_notification.rb +233 -0
  100. data/lib/datadog_api_client/v1/models/notebook_create_data_attributes.rb +1 -1
  101. data/lib/datadog_api_client/v1/models/notebook_distribution_cell_attributes.rb +1 -1
  102. data/lib/datadog_api_client/v1/models/notebook_heat_map_cell_attributes.rb +1 -1
  103. data/lib/datadog_api_client/v1/models/notebook_log_stream_cell_attributes.rb +1 -1
  104. data/lib/datadog_api_client/v1/models/notebook_markdown_cell_attributes.rb +1 -1
  105. data/lib/datadog_api_client/v1/models/notebook_response_data_attributes.rb +3 -3
  106. data/lib/datadog_api_client/v1/models/notebook_timeseries_cell_attributes.rb +1 -1
  107. data/lib/datadog_api_client/v1/models/notebook_toplist_cell_attributes.rb +1 -1
  108. data/lib/datadog_api_client/v1/models/notebook_update_data_attributes.rb +1 -1
  109. data/lib/datadog_api_client/v1/models/notebooks_response.rb +1 -1
  110. data/lib/datadog_api_client/v1/models/notebooks_response_data.rb +258 -0
  111. data/lib/datadog_api_client/v1/models/notebooks_response_data_attributes.rb +317 -0
  112. data/lib/datadog_api_client/v1/models/synthetics_api_test_config.rb +0 -5
  113. data/lib/datadog_api_client/v1/models/synthetics_config_variable.rb +11 -6
  114. data/lib/datadog_api_client/v1/models/synthetics_config_variable_type.rb +1 -0
  115. data/lib/datadog_api_client/v1/models/synthetics_global_variable_value.rb +0 -5
  116. data/lib/datadog_api_client/v1/models/synthetics_list_global_variables_response.rb +225 -0
  117. data/lib/datadog_api_client/v1/models/synthetics_test_config.rb +0 -5
  118. data/lib/datadog_api_client/v1/models/usage_attribution_body.rb +11 -1
  119. data/lib/datadog_api_client/v1/models/usage_attribution_pagination.rb +10 -30
  120. data/lib/datadog_api_client/v1/models/usage_attribution_values.rb +41 -1
  121. data/lib/datadog_api_client/v1/models/usage_audit_logs_hour.rb +233 -0
  122. data/lib/datadog_api_client/v1/models/{usage_compliance_response.rb → usage_audit_logs_response.rb} +6 -6
  123. data/lib/datadog_api_client/v1/models/{usage_compliance_hour.rb → usage_cloud_security_posture_management_hour.rb} +19 -19
  124. data/lib/datadog_api_client/v1/models/usage_cloud_security_posture_management_response.rb +225 -0
  125. data/lib/datadog_api_client/v1/models/usage_cws_hour.rb +243 -0
  126. data/lib/datadog_api_client/v1/models/usage_cws_response.rb +225 -0
  127. data/lib/datadog_api_client/v1/models/usage_summary_date.rb +61 -22
  128. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +61 -22
  129. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +61 -22
  130. data/lib/datadog_api_client/v1/models/usage_top_avg_metrics_metadata.rb +2 -4
  131. data/lib/datadog_api_client/v1/models/widget_custom_link.rb +24 -14
  132. data/lib/datadog_api_client/v2.rb +16 -0
  133. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +369 -0
  134. data/lib/datadog_api_client/v2/models/incident_integration_metadata_type.rb +1 -1
  135. data/lib/datadog_api_client/v2/models/relationship_to_incident_integration_metadata_data.rb +1 -1
  136. data/lib/datadog_api_client/v2/models/security_filter.rb +243 -0
  137. data/lib/datadog_api_client/v2/models/security_filter_attributes.rb +299 -0
  138. data/lib/datadog_api_client/v2/models/security_filter_create_attributes.rb +289 -0
  139. data/lib/datadog_api_client/v2/models/security_filter_create_data.rb +243 -0
  140. data/lib/datadog_api_client/v2/models/security_filter_create_request.rb +227 -0
  141. data/lib/datadog_api_client/v2/models/security_filter_delete_response.rb +222 -0
  142. data/lib/datadog_api_client/v2/models/security_filter_exclusion_filter.rb +243 -0
  143. data/lib/datadog_api_client/v2/models/security_filter_exclusion_filter_response.rb +233 -0
  144. data/lib/datadog_api_client/v2/models/security_filter_filtered_data_type.rb +39 -0
  145. data/lib/datadog_api_client/v2/models/security_filter_meta.rb +223 -0
  146. data/lib/datadog_api_client/v2/models/security_filter_response.rb +231 -0
  147. data/lib/datadog_api_client/v2/models/security_filter_type.rb +39 -0
  148. data/lib/datadog_api_client/v2/models/security_filter_update_attributes.rb +289 -0
  149. data/lib/datadog_api_client/v2/models/security_filter_update_data.rb +243 -0
  150. data/lib/datadog_api_client/v2/models/security_filter_update_request.rb +227 -0
  151. data/lib/datadog_api_client/v2/models/security_filters_response.rb +234 -0
  152. data/lib/datadog_api_client/version.rb +1 -1
  153. data/spec/v1/models/downtime_child_spec.rb +127 -0
  154. data/spec/v1/models/monitor_group_search_response_counts_spec.rb +43 -0
  155. data/spec/v1/models/monitor_group_search_response_spec.rb +49 -0
  156. data/spec/v1/models/monitor_group_search_result_spec.rb +73 -0
  157. data/spec/v1/models/monitor_search_response_counts_spec.rb +55 -0
  158. data/spec/v1/models/monitor_search_response_metadata_spec.rb +55 -0
  159. data/spec/v1/models/monitor_search_response_spec.rb +49 -0
  160. data/spec/v1/models/monitor_search_result_notification_spec.rb +43 -0
  161. data/spec/v1/models/monitor_search_result_spec.rb +103 -0
  162. data/spec/v1/models/notebooks_response_data_attributes_spec.rb +73 -0
  163. data/spec/v1/models/notebooks_response_data_spec.rb +49 -0
  164. data/spec/v1/models/synthetics_list_global_variables_response_spec.rb +37 -0
  165. data/spec/v1/models/usage_audit_logs_hour_spec.rb +43 -0
  166. data/spec/v1/models/{usage_compliance_response_spec.rb → usage_audit_logs_response_spec.rb} +6 -6
  167. data/spec/v1/models/usage_cloud_security_posture_management_hour_spec.rb +49 -0
  168. data/spec/v1/models/usage_cloud_security_posture_management_response_spec.rb +37 -0
  169. data/spec/v1/models/{usage_compliance_hour_spec.rb → usage_cws_hour_spec.rb} +8 -8
  170. data/spec/v1/models/usage_cws_response_spec.rb +37 -0
  171. data/spec/v2/models/security_filter_attributes_spec.rb +73 -0
  172. data/spec/v2/models/security_filter_create_attributes_spec.rb +61 -0
  173. data/spec/v2/models/security_filter_create_data_spec.rb +43 -0
  174. data/spec/v2/models/security_filter_create_request_spec.rb +37 -0
  175. data/spec/v2/models/security_filter_delete_response_spec.rb +37 -0
  176. data/spec/v2/models/security_filter_exclusion_filter_response_spec.rb +43 -0
  177. data/spec/v2/models/security_filter_exclusion_filter_spec.rb +43 -0
  178. data/spec/v2/models/security_filter_filtered_data_type_spec.rb +31 -0
  179. data/spec/v2/models/security_filter_meta_spec.rb +37 -0
  180. data/spec/v2/models/security_filter_response_spec.rb +43 -0
  181. data/spec/v2/models/security_filter_spec.rb +49 -0
  182. data/spec/v2/models/security_filter_type_spec.rb +31 -0
  183. data/spec/v2/models/security_filter_update_attributes_spec.rb +67 -0
  184. data/spec/v2/models/security_filter_update_data_spec.rb +43 -0
  185. data/spec/v2/models/security_filter_update_request_spec.rb +37 -0
  186. data/spec/v2/models/security_filters_response_spec.rb +43 -0
  187. metadata +140 -11
  188. data/.azure-pipelines/all.yml +0 -50
  189. data/docs/v1/UsageComplianceHour.md +0 -22
  190. data/docs/v1/UsageComplianceResponse.md +0 -18
@@ -0,0 +1,18 @@
1
+ # DatadogAPIClient::V2::SecurityFilterMeta
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **warning** | **String** | A warning message. | [optional] |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'datadog_api_client/v2'
13
+
14
+ instance = DatadogAPIClient::V2::SecurityFilterMeta.new(
15
+ warning: All the security filters are disabled. As a result, no logs are being analyzed.
16
+ )
17
+ ```
18
+
@@ -0,0 +1,20 @@
1
+ # DatadogAPIClient::V2::SecurityFilterResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **data** | [**SecurityFilter**](SecurityFilter.md) | | [optional] |
8
+ | **meta** | [**SecurityFilterMeta**](SecurityFilterMeta.md) | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'datadog_api_client/v2'
14
+
15
+ instance = DatadogAPIClient::V2::SecurityFilterResponse.new(
16
+ data: null,
17
+ meta: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,15 @@
1
+ # DatadogAPIClient::V2::SecurityFilterType
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+
8
+ ## Example
9
+
10
+ ```ruby
11
+ require 'datadog_api_client/v2'
12
+
13
+ instance = DatadogAPIClient::V2::SecurityFilterType.new()
14
+ ```
15
+
@@ -0,0 +1,28 @@
1
+ # DatadogAPIClient::V2::SecurityFilterUpdateAttributes
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **exclusion_filters** | [**Array<SecurityFilterExclusionFilter>**](SecurityFilterExclusionFilter.md) | Exclusion filters to exclude some logs from the security filter. | [optional] |
8
+ | **filtered_data_type** | [**SecurityFilterFilteredDataType**](SecurityFilterFilteredDataType.md) | | [optional] |
9
+ | **is_enabled** | **Boolean** | Whether the security filter is enabled. | [optional] |
10
+ | **name** | **String** | The name of the security filter. | [optional] |
11
+ | **query** | **String** | The query of the security filter. | [optional] |
12
+ | **version** | **Integer** | The version of the security filter to update. | [optional] |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'datadog_api_client/v2'
18
+
19
+ instance = DatadogAPIClient::V2::SecurityFilterUpdateAttributes.new(
20
+ exclusion_filters: [],
21
+ filtered_data_type: null,
22
+ is_enabled: true,
23
+ name: Custom security filter,
24
+ query: service:api,
25
+ version: 1
26
+ )
27
+ ```
28
+
@@ -0,0 +1,20 @@
1
+ # DatadogAPIClient::V2::SecurityFilterUpdateData
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **attributes** | [**SecurityFilterUpdateAttributes**](SecurityFilterUpdateAttributes.md) | | |
8
+ | **type** | [**SecurityFilterType**](SecurityFilterType.md) | | [default to 'security_filters'] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'datadog_api_client/v2'
14
+
15
+ instance = DatadogAPIClient::V2::SecurityFilterUpdateData.new(
16
+ attributes: null,
17
+ type: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,18 @@
1
+ # DatadogAPIClient::V2::SecurityFilterUpdateRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **data** | [**SecurityFilterUpdateData**](SecurityFilterUpdateData.md) | | |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'datadog_api_client/v2'
13
+
14
+ instance = DatadogAPIClient::V2::SecurityFilterUpdateRequest.new(
15
+ data: null
16
+ )
17
+ ```
18
+
@@ -0,0 +1,20 @@
1
+ # DatadogAPIClient::V2::SecurityFiltersResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **data** | [**Array<SecurityFilter>**](SecurityFilter.md) | A list of security filters objects. | [optional] |
8
+ | **meta** | [**SecurityFilterMeta**](SecurityFilterMeta.md) | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'datadog_api_client/v2'
14
+
15
+ instance = DatadogAPIClient::V2::SecurityFiltersResponse.new(
16
+ data: null,
17
+ meta: null
18
+ )
19
+ ```
20
+
@@ -4,15 +4,82 @@ All URIs are relative to *https://api.datadoghq.com*
4
4
 
5
5
  | Method | HTTP request | Description |
6
6
  | ------ | ------------ | ----------- |
7
+ | [**create_security_filter**](SecurityMonitoringAPI.md#create_security_filter) | **POST** /api/v2/security_monitoring/configuration/security_filters | Create a security filter |
7
8
  | [**create_security_monitoring_rule**](SecurityMonitoringAPI.md#create_security_monitoring_rule) | **POST** /api/v2/security_monitoring/rules | Create a detection rule |
9
+ | [**delete_security_filter**](SecurityMonitoringAPI.md#delete_security_filter) | **DELETE** /api/v2/security_monitoring/configuration/security_filters/{security_filter_id} | Delete a security filter |
8
10
  | [**delete_security_monitoring_rule**](SecurityMonitoringAPI.md#delete_security_monitoring_rule) | **DELETE** /api/v2/security_monitoring/rules/{rule_id} | Delete an existing rule |
11
+ | [**get_security_filter**](SecurityMonitoringAPI.md#get_security_filter) | **GET** /api/v2/security_monitoring/configuration/security_filters/{security_filter_id} | Get a security filter |
9
12
  | [**get_security_monitoring_rule**](SecurityMonitoringAPI.md#get_security_monitoring_rule) | **GET** /api/v2/security_monitoring/rules/{rule_id} | Get a rule's details |
13
+ | [**list_security_filters**](SecurityMonitoringAPI.md#list_security_filters) | **GET** /api/v2/security_monitoring/configuration/security_filters | Get all security filters |
10
14
  | [**list_security_monitoring_rules**](SecurityMonitoringAPI.md#list_security_monitoring_rules) | **GET** /api/v2/security_monitoring/rules | List rules |
11
15
  | [**list_security_monitoring_signals**](SecurityMonitoringAPI.md#list_security_monitoring_signals) | **GET** /api/v2/security_monitoring/signals | Get a quick list of security signals |
12
16
  | [**search_security_monitoring_signals**](SecurityMonitoringAPI.md#search_security_monitoring_signals) | **POST** /api/v2/security_monitoring/signals/search | Get a list of security signals |
17
+ | [**update_security_filter**](SecurityMonitoringAPI.md#update_security_filter) | **PATCH** /api/v2/security_monitoring/configuration/security_filters/{security_filter_id} | Update a security filter |
13
18
  | [**update_security_monitoring_rule**](SecurityMonitoringAPI.md#update_security_monitoring_rule) | **PUT** /api/v2/security_monitoring/rules/{rule_id} | Update an existing rule |
14
19
 
15
20
 
21
+ ## create_security_filter
22
+
23
+ > <SecurityFilterResponse> create_security_filter(body)
24
+
25
+ Create a security filter
26
+
27
+ Create a security filter. See the [security filter guide](https://docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/) for more examples.
28
+
29
+ ### Examples
30
+
31
+ ```ruby
32
+ require 'datadog_api_client'
33
+ api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
34
+ body = DatadogAPIClient::V2::SecurityFilterCreateRequest.new({data: DatadogAPIClient::V2::SecurityFilterCreateData.new({attributes: DatadogAPIClient::V2::SecurityFilterCreateAttributes.new({exclusion_filters: [DatadogAPIClient::V2::SecurityFilterExclusionFilter.new({name: 'Exclude staging', query: 'source:staging'})], filtered_data_type: DatadogAPIClient::V2::SecurityFilterFilteredDataType::LOGS, is_enabled: true, name: 'Custom security filter', query: 'service:api'}), type: DatadogAPIClient::V2::SecurityFilterType::SECURITY_FILTERS})}) # SecurityFilterCreateRequest | The definition of the new security filter.
35
+
36
+ begin
37
+ # Create a security filter
38
+ result = api_instance.create_security_filter(body)
39
+ p result
40
+ rescue DatadogAPIClient::V2::APIError => e
41
+ puts "Error when calling SecurityMonitoringAPI->create_security_filter: #{e}"
42
+ end
43
+ ```
44
+
45
+ #### Using the create_security_filter_with_http_info variant
46
+
47
+ This returns an Array which contains the response data, status code and headers.
48
+
49
+ > <Array(<SecurityFilterResponse>, Integer, Hash)> create_security_filter_with_http_info(body)
50
+
51
+ ```ruby
52
+ begin
53
+ # Create a security filter
54
+ data, status_code, headers = api_instance.create_security_filter_with_http_info(body)
55
+ p status_code # => 2xx
56
+ p headers # => { ... }
57
+ p data # => <SecurityFilterResponse>
58
+ rescue DatadogAPIClient::V2::APIError => e
59
+ puts "Error when calling SecurityMonitoringAPI->create_security_filter_with_http_info: #{e}"
60
+ end
61
+ ```
62
+
63
+ ### Parameters
64
+
65
+ | Name | Type | Description | Notes |
66
+ | ---- | ---- | ----------- | ----- |
67
+ | **body** | [**SecurityFilterCreateRequest**](SecurityFilterCreateRequest.md) | The definition of the new security filter. | |
68
+
69
+ ### Return type
70
+
71
+ [**SecurityFilterResponse**](SecurityFilterResponse.md)
72
+
73
+ ### Authorization
74
+
75
+ [apiKeyAuth](README.md#apiKeyAuth), [appKeyAuth](README.md#appKeyAuth)
76
+
77
+ ### HTTP request headers
78
+
79
+ - **Content-Type**: application/json
80
+ - **Accept**: application/json
81
+
82
+
16
83
  ## create_security_monitoring_rule
17
84
 
18
85
  > <SecurityMonitoringRuleResponse> create_security_monitoring_rule(body)
@@ -75,6 +142,68 @@ end
75
142
  - **Accept**: application/json
76
143
 
77
144
 
145
+ ## delete_security_filter
146
+
147
+ > <SecurityFilterDeleteResponse> delete_security_filter(security_filter_id)
148
+
149
+ Delete a security filter
150
+
151
+ Delete a specific security filter.
152
+
153
+ ### Examples
154
+
155
+ ```ruby
156
+ require 'datadog_api_client'
157
+ api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
158
+ security_filter_id = 'security_filter_id_example' # String | The ID of the security filter.
159
+
160
+ begin
161
+ # Delete a security filter
162
+ result = api_instance.delete_security_filter(security_filter_id)
163
+ p result
164
+ rescue DatadogAPIClient::V2::APIError => e
165
+ puts "Error when calling SecurityMonitoringAPI->delete_security_filter: #{e}"
166
+ end
167
+ ```
168
+
169
+ #### Using the delete_security_filter_with_http_info variant
170
+
171
+ This returns an Array which contains the response data, status code and headers.
172
+
173
+ > <Array(<SecurityFilterDeleteResponse>, Integer, Hash)> delete_security_filter_with_http_info(security_filter_id)
174
+
175
+ ```ruby
176
+ begin
177
+ # Delete a security filter
178
+ data, status_code, headers = api_instance.delete_security_filter_with_http_info(security_filter_id)
179
+ p status_code # => 2xx
180
+ p headers # => { ... }
181
+ p data # => <SecurityFilterDeleteResponse>
182
+ rescue DatadogAPIClient::V2::APIError => e
183
+ puts "Error when calling SecurityMonitoringAPI->delete_security_filter_with_http_info: #{e}"
184
+ end
185
+ ```
186
+
187
+ ### Parameters
188
+
189
+ | Name | Type | Description | Notes |
190
+ | ---- | ---- | ----------- | ----- |
191
+ | **security_filter_id** | **String** | The ID of the security filter. | |
192
+
193
+ ### Return type
194
+
195
+ [**SecurityFilterDeleteResponse**](SecurityFilterDeleteResponse.md)
196
+
197
+ ### Authorization
198
+
199
+ [apiKeyAuth](README.md#apiKeyAuth), [appKeyAuth](README.md#appKeyAuth)
200
+
201
+ ### HTTP request headers
202
+
203
+ - **Content-Type**: Not defined
204
+ - **Accept**: application/json
205
+
206
+
78
207
  ## delete_security_monitoring_rule
79
208
 
80
209
  > delete_security_monitoring_rule(rule_id)
@@ -136,6 +265,68 @@ nil (empty response body)
136
265
  - **Accept**: application/json
137
266
 
138
267
 
268
+ ## get_security_filter
269
+
270
+ > <SecurityFilterResponse> get_security_filter(security_filter_id)
271
+
272
+ Get a security filter
273
+
274
+ Get the details of a specific security filter. See the [security filter guide](https://docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/) for more examples.
275
+
276
+ ### Examples
277
+
278
+ ```ruby
279
+ require 'datadog_api_client'
280
+ api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
281
+ security_filter_id = 'security_filter_id_example' # String | The ID of the security filter.
282
+
283
+ begin
284
+ # Get a security filter
285
+ result = api_instance.get_security_filter(security_filter_id)
286
+ p result
287
+ rescue DatadogAPIClient::V2::APIError => e
288
+ puts "Error when calling SecurityMonitoringAPI->get_security_filter: #{e}"
289
+ end
290
+ ```
291
+
292
+ #### Using the get_security_filter_with_http_info variant
293
+
294
+ This returns an Array which contains the response data, status code and headers.
295
+
296
+ > <Array(<SecurityFilterResponse>, Integer, Hash)> get_security_filter_with_http_info(security_filter_id)
297
+
298
+ ```ruby
299
+ begin
300
+ # Get a security filter
301
+ data, status_code, headers = api_instance.get_security_filter_with_http_info(security_filter_id)
302
+ p status_code # => 2xx
303
+ p headers # => { ... }
304
+ p data # => <SecurityFilterResponse>
305
+ rescue DatadogAPIClient::V2::APIError => e
306
+ puts "Error when calling SecurityMonitoringAPI->get_security_filter_with_http_info: #{e}"
307
+ end
308
+ ```
309
+
310
+ ### Parameters
311
+
312
+ | Name | Type | Description | Notes |
313
+ | ---- | ---- | ----------- | ----- |
314
+ | **security_filter_id** | **String** | The ID of the security filter. | |
315
+
316
+ ### Return type
317
+
318
+ [**SecurityFilterResponse**](SecurityFilterResponse.md)
319
+
320
+ ### Authorization
321
+
322
+ [apiKeyAuth](README.md#apiKeyAuth), [appKeyAuth](README.md#appKeyAuth)
323
+
324
+ ### HTTP request headers
325
+
326
+ - **Content-Type**: Not defined
327
+ - **Accept**: application/json
328
+
329
+
139
330
  ## get_security_monitoring_rule
140
331
 
141
332
  > <SecurityMonitoringRuleResponse> get_security_monitoring_rule(rule_id)
@@ -198,6 +389,65 @@ end
198
389
  - **Accept**: application/json
199
390
 
200
391
 
392
+ ## list_security_filters
393
+
394
+ > <SecurityFiltersResponse> list_security_filters
395
+
396
+ Get all security filters
397
+
398
+ Get the list of configured security filters with their definitions.
399
+
400
+ ### Examples
401
+
402
+ ```ruby
403
+ require 'datadog_api_client'
404
+ api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
405
+
406
+ begin
407
+ # Get all security filters
408
+ result = api_instance.list_security_filters
409
+ p result
410
+ rescue DatadogAPIClient::V2::APIError => e
411
+ puts "Error when calling SecurityMonitoringAPI->list_security_filters: #{e}"
412
+ end
413
+ ```
414
+
415
+ #### Using the list_security_filters_with_http_info variant
416
+
417
+ This returns an Array which contains the response data, status code and headers.
418
+
419
+ > <Array(<SecurityFiltersResponse>, Integer, Hash)> list_security_filters_with_http_info
420
+
421
+ ```ruby
422
+ begin
423
+ # Get all security filters
424
+ data, status_code, headers = api_instance.list_security_filters_with_http_info
425
+ p status_code # => 2xx
426
+ p headers # => { ... }
427
+ p data # => <SecurityFiltersResponse>
428
+ rescue DatadogAPIClient::V2::APIError => e
429
+ puts "Error when calling SecurityMonitoringAPI->list_security_filters_with_http_info: #{e}"
430
+ end
431
+ ```
432
+
433
+ ### Parameters
434
+
435
+ This endpoint does not need any parameter.
436
+
437
+ ### Return type
438
+
439
+ [**SecurityFiltersResponse**](SecurityFiltersResponse.md)
440
+
441
+ ### Authorization
442
+
443
+ [apiKeyAuth](README.md#apiKeyAuth), [appKeyAuth](README.md#appKeyAuth)
444
+
445
+ ### HTTP request headers
446
+
447
+ - **Content-Type**: Not defined
448
+ - **Accept**: application/json
449
+
450
+
201
451
  ## list_security_monitoring_rules
202
452
 
203
453
  > <SecurityMonitoringListRulesResponse> list_security_monitoring_rules(opts)
@@ -212,8 +462,8 @@ List rules.
212
462
  require 'datadog_api_client'
213
463
  api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
214
464
  opts = {
215
- page_size: 789, # Integer | Size for a given page.
216
- page_number: 789 # Integer | Specific page number to return.
465
+ page_size: 10, # Integer | Size for a given page.
466
+ page_number: 0 # Integer | Specific page number to return.
217
467
  }
218
468
 
219
469
  begin
@@ -412,6 +662,70 @@ end
412
662
  - **Accept**: application/json
413
663
 
414
664
 
665
+ ## update_security_filter
666
+
667
+ > <SecurityFilterResponse> update_security_filter(security_filter_id, body)
668
+
669
+ Update a security filter
670
+
671
+ Update a specific security filter. Returns the security filter object when the request is successful.
672
+
673
+ ### Examples
674
+
675
+ ```ruby
676
+ require 'datadog_api_client'
677
+ api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
678
+ security_filter_id = 'security_filter_id_example' # String | The ID of the security filter.
679
+ body = DatadogAPIClient::V2::SecurityFilterUpdateRequest.new({data: DatadogAPIClient::V2::SecurityFilterUpdateData.new({attributes: DatadogAPIClient::V2::SecurityFilterUpdateAttributes.new, type: DatadogAPIClient::V2::SecurityFilterType::SECURITY_FILTERS})}) # SecurityFilterUpdateRequest | New definition of the security filter.
680
+
681
+ begin
682
+ # Update a security filter
683
+ result = api_instance.update_security_filter(security_filter_id, body)
684
+ p result
685
+ rescue DatadogAPIClient::V2::APIError => e
686
+ puts "Error when calling SecurityMonitoringAPI->update_security_filter: #{e}"
687
+ end
688
+ ```
689
+
690
+ #### Using the update_security_filter_with_http_info variant
691
+
692
+ This returns an Array which contains the response data, status code and headers.
693
+
694
+ > <Array(<SecurityFilterResponse>, Integer, Hash)> update_security_filter_with_http_info(security_filter_id, body)
695
+
696
+ ```ruby
697
+ begin
698
+ # Update a security filter
699
+ data, status_code, headers = api_instance.update_security_filter_with_http_info(security_filter_id, body)
700
+ p status_code # => 2xx
701
+ p headers # => { ... }
702
+ p data # => <SecurityFilterResponse>
703
+ rescue DatadogAPIClient::V2::APIError => e
704
+ puts "Error when calling SecurityMonitoringAPI->update_security_filter_with_http_info: #{e}"
705
+ end
706
+ ```
707
+
708
+ ### Parameters
709
+
710
+ | Name | Type | Description | Notes |
711
+ | ---- | ---- | ----------- | ----- |
712
+ | **security_filter_id** | **String** | The ID of the security filter. | |
713
+ | **body** | [**SecurityFilterUpdateRequest**](SecurityFilterUpdateRequest.md) | New definition of the security filter. | |
714
+
715
+ ### Return type
716
+
717
+ [**SecurityFilterResponse**](SecurityFilterResponse.md)
718
+
719
+ ### Authorization
720
+
721
+ [apiKeyAuth](README.md#apiKeyAuth), [appKeyAuth](README.md#appKeyAuth)
722
+
723
+ ### HTTP request headers
724
+
725
+ - **Content-Type**: application/json
726
+ - **Accept**: application/json
727
+
728
+
415
729
  ## update_security_monitoring_rule
416
730
 
417
731
  > <SecurityMonitoringRuleResponse> update_security_monitoring_rule(rule_id, body)