datadog_api_client 2.20.0 → 2.22.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 (267) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +4 -4
  3. data/.generator/conftest.py +5 -0
  4. data/.generator/schemas/v1/openapi.yaml +502 -754
  5. data/.generator/schemas/v2/openapi.yaml +2903 -102
  6. data/.github/workflows/prepare_release.yml +2 -2
  7. data/.github/workflows/publish.yml +2 -2
  8. data/.github/workflows/release.yml +2 -2
  9. data/.github/workflows/test.yml +1 -1
  10. data/CHANGELOG.md +52 -0
  11. data/Gemfile +1 -1
  12. data/examples/v1/aws-integration/CreateAWSAccount.rb +1 -1
  13. data/examples/v1/aws-integration/CreateNewAWSExternalID.rb +1 -0
  14. data/examples/v1/aws-integration/UpdateAWSAccount.rb +1 -1
  15. data/examples/v1/gcp-integration/CreateGCPIntegration.rb +3 -0
  16. data/examples/v1/gcp-integration/UpdateGCPIntegration_3544259255.rb +25 -0
  17. data/examples/v1/synthetics/CreateSyntheticsAPITest_1241981394.rb +118 -0
  18. data/examples/v1/synthetics/CreateSyntheticsAPITest_1279271422.rb +29 -0
  19. data/examples/v1/synthetics/UpdateBrowserTest.rb +4 -0
  20. data/examples/v2/apm-retention-filters/UpdateApmRetentionFilter.rb +2 -2
  21. data/examples/v2/authn-mappings/CreateAuthNMapping.rb +1 -1
  22. data/examples/v2/authn-mappings/UpdateAuthNMapping.rb +1 -1
  23. data/examples/v2/case-management/ArchiveCase.rb +14 -0
  24. data/examples/v2/case-management/AssignCase.rb +20 -0
  25. data/examples/v2/case-management/CreateCase.rb +33 -0
  26. data/examples/v2/case-management/CreateProject.rb +15 -0
  27. data/examples/v2/case-management/DeleteProject.rb +5 -0
  28. data/examples/v2/case-management/GetCase.rb +8 -0
  29. data/examples/v2/case-management/GetProject.rb +5 -0
  30. data/examples/v2/case-management/GetProjects.rb +5 -0
  31. data/examples/v2/case-management/SearchCases.rb +5 -0
  32. data/examples/v2/case-management/SearchCases_3433960044.rb +5 -0
  33. data/examples/v2/case-management/UnarchiveCase.rb +14 -0
  34. data/examples/v2/case-management/UnassignCase.rb +14 -0
  35. data/examples/v2/case-management/UpdatePriority.rb +17 -0
  36. data/examples/v2/case-management/UpdateStatus.rb +17 -0
  37. data/examples/v2/cloud-workload-security/CreateCSMThreatsAgentRule.rb +17 -0
  38. data/examples/v2/cloud-workload-security/DeleteCSMThreatsAgentRule.rb +8 -0
  39. data/examples/v2/cloud-workload-security/DownloadCSMThreatsPolicy.rb +5 -0
  40. data/examples/v2/cloud-workload-security/GetCSMThreatsAgentRule.rb +8 -0
  41. data/examples/v2/cloud-workload-security/ListCSMThreatsAgentRules.rb +5 -0
  42. data/examples/v2/cloud-workload-security/UpdateCSMThreatsAgentRule.rb +20 -0
  43. data/examples/v2/dora-metrics/CreateDORAIncident.rb +6 -3
  44. data/examples/v2/gcp-integration/CreateGCPSTSAccount.rb +1 -1
  45. data/examples/v2/gcp-integration/CreateGCPSTSAccount_109518525.rb +1 -1
  46. data/examples/v2/gcp-integration/CreateGCPSTSAccount_130557025.rb +1 -1
  47. data/examples/v2/gcp-integration/CreateGCPSTSAccount_194782945.rb +18 -0
  48. data/examples/v2/gcp-integration/CreateGCPSTSAccount_2597004741.rb +1 -1
  49. data/examples/v2/gcp-integration/CreateGCPSTSAccount_4235664992.rb +1 -1
  50. data/examples/v2/gcp-integration/UpdateGCPSTSAccount.rb +1 -1
  51. data/examples/v2/gcp-integration/UpdateGCPSTSAccount_2241994060.rb +21 -0
  52. data/examples/v2/gcp-integration/UpdateGCPSTSAccount_3205636354.rb +1 -1
  53. data/examples/v2/logs-custom-destinations/CreateLogsCustomDestination.rb +31 -0
  54. data/examples/v2/logs-custom-destinations/CreateLogsCustomDestination_1091442807.rb +31 -0
  55. data/examples/v2/logs-custom-destinations/CreateLogsCustomDestination_1288180912.rb +27 -0
  56. data/examples/v2/logs-custom-destinations/CreateLogsCustomDestination_141236188.rb +32 -0
  57. data/examples/v2/logs-custom-destinations/CreateLogsCustomDestination_2184123765.rb +31 -0
  58. data/examples/v2/logs-custom-destinations/DeleteLogsCustomDestination.rb +8 -0
  59. data/examples/v2/logs-custom-destinations/GetLogsCustomDestination.rb +8 -0
  60. data/examples/v2/logs-custom-destinations/ListLogsCustomDestinations.rb +5 -0
  61. data/examples/v2/logs-custom-destinations/UpdateLogsCustomDestination.rb +22 -0
  62. data/examples/v2/metrics/ListMetricAssets.rb +5 -0
  63. data/examples/v2/metrics/QueryScalarData_3112571352.rb +2 -2
  64. data/examples/v2/metrics/QueryTimeseriesData_301142940.rb +3 -3
  65. data/examples/v2/security-monitoring/CreateSecurityMonitoringSuppression_3192265332.rb +19 -0
  66. data/examples/v2/security-monitoring/ValidateSecurityMonitoringRule.rb +42 -0
  67. data/examples/v2/service-definition/CreateOrUpdateServiceDefinitions.rb +4 -0
  68. data/examples/v2/service-level-objectives/CreateSLOReportJob.rb +20 -0
  69. data/examples/v2/service-level-objectives/GetSLOReport.rb +8 -0
  70. data/examples/v2/service-level-objectives/GetSLOReportJobStatus.rb +11 -0
  71. data/lib/datadog_api_client/configuration.rb +3 -0
  72. data/lib/datadog_api_client/inflector.rb +132 -7
  73. data/lib/datadog_api_client/v1/api/monitors_api.rb +1 -3
  74. data/lib/datadog_api_client/v1/api/usage_metering_api.rb +104 -131
  75. data/lib/datadog_api_client/v1/models/aws_account.rb +12 -2
  76. data/lib/datadog_api_client/v1/models/gcp_account.rb +14 -1
  77. data/lib/datadog_api_client/v1/models/hourly_usage_attribution_usage_type.rb +8 -0
  78. data/lib/datadog_api_client/v1/models/monitor_formula_and_function_events_data_source.rb +1 -0
  79. data/lib/datadog_api_client/v1/models/monitor_options.rb +4 -1
  80. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_supported_metrics.rb +12 -0
  81. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_values.rb +124 -4
  82. data/lib/datadog_api_client/v1/models/series.rb +1 -1
  83. data/lib/datadog_api_client/v1/models/slo_time_slice_condition.rb +14 -2
  84. data/lib/datadog_api_client/v1/models/slo_time_slice_interval.rb +29 -0
  85. data/lib/datadog_api_client/v1/models/slo_time_slice_spec.rb +1 -1
  86. data/lib/datadog_api_client/v1/models/synthetics_api_step_subtype.rb +1 -0
  87. data/lib/datadog_api_client/v1/models/synthetics_test_request.rb +23 -1
  88. data/lib/datadog_api_client/v1/models/synthetics_test_request_body_file.rb +175 -0
  89. data/lib/datadog_api_client/v1/models/synthetics_test_request_body_type.rb +2 -0
  90. data/lib/datadog_api_client/v1/models/usage_summary_date.rb +81 -1
  91. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +83 -3
  92. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +182 -102
  93. data/lib/datadog_api_client/v2/api/apm_retention_filters_api.rb +6 -0
  94. data/lib/datadog_api_client/v2/api/case_management_api.rb +942 -0
  95. data/lib/datadog_api_client/v2/api/ci_visibility_tests_api.rb +2 -2
  96. data/lib/datadog_api_client/v2/api/cloud_workload_security_api.rb +392 -0
  97. data/lib/datadog_api_client/v2/api/incident_services_api.rb +15 -0
  98. data/lib/datadog_api_client/v2/api/logs_custom_destinations_api.rb +355 -0
  99. data/lib/datadog_api_client/v2/api/metrics_api.rb +70 -2
  100. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +67 -0
  101. data/lib/datadog_api_client/v2/api/service_definition_api.rb +2 -1
  102. data/lib/datadog_api_client/v2/api/service_level_objectives_api.rb +245 -0
  103. data/lib/datadog_api_client/v2/api/usage_metering_api.rb +15 -6
  104. data/lib/datadog_api_client/v2/models/authn_mapping_create_data.rb +1 -1
  105. data/lib/datadog_api_client/v2/models/authn_mapping_create_relationships.rb +37 -54
  106. data/lib/datadog_api_client/v2/models/authn_mapping_included.rb +2 -1
  107. data/lib/datadog_api_client/v2/models/authn_mapping_relationship_to_role.rb +98 -0
  108. data/lib/datadog_api_client/v2/models/authn_mapping_relationship_to_team.rb +98 -0
  109. data/lib/datadog_api_client/v2/models/authn_mapping_relationships.rb +14 -4
  110. data/lib/datadog_api_client/v2/models/authn_mapping_team.rb +100 -0
  111. data/lib/datadog_api_client/v2/models/authn_mapping_team_attributes.rb +212 -0
  112. data/lib/datadog_api_client/v2/models/authn_mapping_update_data.rb +1 -1
  113. data/lib/datadog_api_client/v2/models/authn_mapping_update_relationships.rb +37 -54
  114. data/lib/datadog_api_client/v2/models/case.rb +150 -0
  115. data/lib/datadog_api_client/v2/models/case3rd_party_ticket_status.rb +28 -0
  116. data/lib/datadog_api_client/v2/models/case_assign.rb +119 -0
  117. data/lib/datadog_api_client/v2/models/case_assign_attributes.rb +98 -0
  118. data/lib/datadog_api_client/v2/models/case_assign_request.rb +98 -0
  119. data/lib/datadog_api_client/v2/models/case_attributes.rb +202 -0
  120. data/lib/datadog_api_client/v2/models/case_create.rb +129 -0
  121. data/lib/datadog_api_client/v2/models/case_create_attributes.rb +139 -0
  122. data/lib/datadog_api_client/v2/models/case_create_relationships.rb +116 -0
  123. data/lib/datadog_api_client/v2/models/case_create_request.rb +98 -0
  124. data/lib/datadog_api_client/v2/models/case_empty.rb +98 -0
  125. data/lib/datadog_api_client/v2/models/case_empty_request.rb +98 -0
  126. data/lib/datadog_api_client/v2/models/case_priority.rb +31 -0
  127. data/lib/datadog_api_client/v2/models/case_relationships.rb +120 -0
  128. data/lib/datadog_api_client/v2/models/case_resource_type.rb +26 -0
  129. data/lib/datadog_api_client/v2/models/case_response.rb +80 -0
  130. data/lib/datadog_api_client/v2/models/case_sortable_field.rb +28 -0
  131. data/lib/datadog_api_client/v2/models/case_status.rb +28 -0
  132. data/lib/datadog_api_client/v2/models/case_type.rb +26 -0
  133. data/lib/datadog_api_client/v2/models/case_update_priority.rb +119 -0
  134. data/lib/datadog_api_client/v2/models/case_update_priority_attributes.rb +98 -0
  135. data/lib/datadog_api_client/v2/models/case_update_priority_request.rb +98 -0
  136. data/lib/datadog_api_client/v2/models/case_update_status.rb +119 -0
  137. data/lib/datadog_api_client/{v1/models/usage_attribution_pagination.rb → v2/models/case_update_status_attributes.rb} +29 -51
  138. data/lib/datadog_api_client/v2/models/case_update_status_request.rb +98 -0
  139. data/lib/datadog_api_client/{v1/models/usage_attribution_metadata.rb → v2/models/cases_response.rb} +22 -22
  140. data/lib/datadog_api_client/v2/models/cases_response_meta.rb +80 -0
  141. data/lib/datadog_api_client/v2/models/cases_response_meta_pagination.rb +100 -0
  142. data/lib/datadog_api_client/v2/models/ci_app_aggregate_sort.rb +1 -1
  143. data/lib/datadog_api_client/v2/models/ci_app_pipelines_group_by.rb +1 -1
  144. data/lib/datadog_api_client/v2/models/ci_app_tests_group_by.rb +1 -1
  145. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_action.rb +90 -0
  146. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_attributes.rb +21 -1
  147. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_kill.rb +80 -0
  148. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_update_data.rb +11 -1
  149. data/lib/datadog_api_client/v2/models/custom_destination_attribute_tags_restriction_list_type.rb +31 -0
  150. data/lib/datadog_api_client/v2/models/custom_destination_create_request.rb +80 -0
  151. data/lib/datadog_api_client/v2/models/custom_destination_create_request_attributes.rb +193 -0
  152. data/lib/datadog_api_client/v2/models/custom_destination_create_request_definition.rb +119 -0
  153. data/lib/datadog_api_client/v2/models/custom_destination_elasticsearch_destination_auth.rb +119 -0
  154. data/lib/datadog_api_client/v2/models/custom_destination_forward_destination.rb +64 -0
  155. data/lib/datadog_api_client/v2/models/custom_destination_forward_destination_elasticsearch.rb +181 -0
  156. data/lib/datadog_api_client/v2/models/custom_destination_forward_destination_elasticsearch_type.rb +26 -0
  157. data/lib/datadog_api_client/v2/models/custom_destination_forward_destination_http.rb +141 -0
  158. data/lib/datadog_api_client/v2/models/custom_destination_forward_destination_http_type.rb +26 -0
  159. data/lib/datadog_api_client/v2/models/custom_destination_forward_destination_splunk.rb +141 -0
  160. data/lib/datadog_api_client/v2/models/custom_destination_forward_destination_splunk_type.rb +26 -0
  161. data/lib/datadog_api_client/v2/models/custom_destination_http_destination_auth.rb +63 -0
  162. data/lib/datadog_api_client/v2/models/custom_destination_http_destination_auth_basic.rb +140 -0
  163. data/lib/datadog_api_client/v2/models/custom_destination_http_destination_auth_basic_type.rb +26 -0
  164. data/lib/datadog_api_client/v2/models/custom_destination_http_destination_auth_custom_header.rb +140 -0
  165. data/lib/datadog_api_client/v2/models/custom_destination_http_destination_auth_custom_header_type.rb +26 -0
  166. data/lib/datadog_api_client/v2/models/custom_destination_response.rb +80 -0
  167. data/lib/datadog_api_client/v2/models/custom_destination_response_attributes.rb +171 -0
  168. data/lib/datadog_api_client/v2/models/custom_destination_response_definition.rb +100 -0
  169. data/lib/datadog_api_client/v2/models/custom_destination_response_forward_destination.rb +64 -0
  170. data/lib/datadog_api_client/v2/models/custom_destination_response_forward_destination_elasticsearch.rb +181 -0
  171. data/lib/datadog_api_client/v2/models/custom_destination_response_forward_destination_elasticsearch_type.rb +26 -0
  172. data/lib/datadog_api_client/v2/models/custom_destination_response_forward_destination_http.rb +141 -0
  173. data/lib/datadog_api_client/v2/models/custom_destination_response_forward_destination_http_type.rb +26 -0
  174. data/lib/datadog_api_client/v2/models/custom_destination_response_forward_destination_splunk.rb +120 -0
  175. data/lib/datadog_api_client/v2/models/custom_destination_response_forward_destination_splunk_type.rb +26 -0
  176. data/lib/datadog_api_client/v2/models/custom_destination_response_http_destination_auth.rb +63 -0
  177. data/lib/datadog_api_client/v2/models/custom_destination_response_http_destination_auth_basic.rb +98 -0
  178. data/lib/datadog_api_client/v2/models/custom_destination_response_http_destination_auth_basic_type.rb +26 -0
  179. data/lib/datadog_api_client/v2/models/custom_destination_response_http_destination_auth_custom_header.rb +119 -0
  180. data/lib/datadog_api_client/v2/models/custom_destination_response_http_destination_auth_custom_header_type.rb +26 -0
  181. data/lib/datadog_api_client/v2/models/custom_destination_type.rb +26 -0
  182. data/lib/datadog_api_client/v2/models/custom_destination_update_request.rb +80 -0
  183. data/lib/datadog_api_client/v2/models/custom_destination_update_request_attributes.rb +169 -0
  184. data/lib/datadog_api_client/v2/models/custom_destination_update_request_definition.rb +129 -0
  185. data/lib/datadog_api_client/v2/models/custom_destinations_response.rb +82 -0
  186. data/lib/datadog_api_client/v2/models/dora_deployment_request_attributes.rb +1 -1
  187. data/lib/datadog_api_client/v2/models/dora_incident_request_attributes.rb +21 -20
  188. data/lib/datadog_api_client/v2/models/gcpsts_service_account_attributes.rb +14 -1
  189. data/lib/datadog_api_client/v2/models/jira_issue.rb +90 -0
  190. data/lib/datadog_api_client/v2/models/jira_issue_result.rb +110 -0
  191. data/lib/datadog_api_client/v2/models/logs_archive_integration_gcs.rb +1 -12
  192. data/lib/datadog_api_client/v2/models/metric_asset_attributes.rb +80 -0
  193. data/lib/datadog_api_client/v2/models/metric_asset_dashboard_relationship.rb +90 -0
  194. data/lib/datadog_api_client/v2/models/metric_asset_dashboard_relationships.rb +82 -0
  195. data/lib/datadog_api_client/v2/models/metric_asset_monitor_relationship.rb +90 -0
  196. data/lib/datadog_api_client/v2/models/metric_asset_monitor_relationships.rb +82 -0
  197. data/lib/datadog_api_client/v2/models/metric_asset_notebook_relationship.rb +90 -0
  198. data/lib/datadog_api_client/v2/models/metric_asset_notebook_relationships.rb +82 -0
  199. data/lib/datadog_api_client/v2/models/metric_asset_response_data.rb +129 -0
  200. data/lib/datadog_api_client/v2/models/metric_asset_response_included.rb +65 -0
  201. data/lib/datadog_api_client/v2/models/metric_asset_response_relationships.rb +110 -0
  202. data/lib/datadog_api_client/v2/models/metric_asset_slo_relationship.rb +90 -0
  203. data/lib/datadog_api_client/v2/models/metric_asset_slo_relationships.rb +82 -0
  204. data/lib/datadog_api_client/v2/models/metric_assets_response.rb +92 -0
  205. data/lib/datadog_api_client/v2/models/metric_dashboard_asset.rb +129 -0
  206. data/lib/datadog_api_client/v2/models/metric_dashboard_attributes.rb +112 -0
  207. data/lib/datadog_api_client/v2/models/metric_dashboard_type.rb +26 -0
  208. data/lib/datadog_api_client/v2/models/metric_monitor_asset.rb +129 -0
  209. data/lib/datadog_api_client/v2/models/metric_monitor_type.rb +26 -0
  210. data/lib/datadog_api_client/v2/models/metric_notebook_asset.rb +129 -0
  211. data/lib/datadog_api_client/v2/models/metric_notebook_type.rb +26 -0
  212. data/lib/datadog_api_client/v2/models/metric_series.rb +1 -1
  213. data/lib/datadog_api_client/v2/models/metric_slo_asset.rb +129 -0
  214. data/lib/datadog_api_client/v2/models/metric_slo_type.rb +26 -0
  215. data/lib/datadog_api_client/{v1/models/usage_attribution_response.rb → v2/models/nullable_user_relationship.rb} +22 -26
  216. data/lib/datadog_api_client/v2/models/nullable_user_relationship_data.rb +119 -0
  217. data/lib/datadog_api_client/v2/models/project.rb +150 -0
  218. data/lib/datadog_api_client/v2/models/project_attributes.rb +90 -0
  219. data/lib/datadog_api_client/v2/models/project_create.rb +119 -0
  220. data/lib/datadog_api_client/v2/models/project_create_attributes.rb +119 -0
  221. data/lib/datadog_api_client/v2/models/project_create_request.rb +98 -0
  222. data/lib/datadog_api_client/v2/models/project_relationship.rb +98 -0
  223. data/lib/datadog_api_client/v2/models/project_relationship_data.rb +119 -0
  224. data/lib/datadog_api_client/v2/models/project_relationships.rb +90 -0
  225. data/lib/datadog_api_client/v2/models/project_resource_type.rb +26 -0
  226. data/lib/datadog_api_client/v2/models/project_response.rb +80 -0
  227. data/lib/datadog_api_client/v2/models/projects_response.rb +82 -0
  228. data/lib/datadog_api_client/v2/models/relationship_to_team.rb +80 -0
  229. data/lib/datadog_api_client/v2/models/relationship_to_team_data.rb +90 -0
  230. data/lib/datadog_api_client/v2/models/retention_filter_update_attributes.rb +183 -0
  231. data/lib/datadog_api_client/v2/models/retention_filter_update_data.rb +1 -1
  232. data/lib/datadog_api_client/v2/models/security_monitoring_rule_update_payload.rb +1 -1
  233. data/lib/datadog_api_client/v2/models/security_monitoring_signal_rule_create_payload.rb +1 -1
  234. data/lib/datadog_api_client/v2/models/security_monitoring_signal_rule_response.rb +1 -1
  235. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_create_payload.rb +1 -1
  236. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_response.rb +1 -1
  237. data/lib/datadog_api_client/v2/models/security_monitoring_suppression_attributes.rb +11 -1
  238. data/lib/datadog_api_client/v2/models/security_monitoring_suppression_create_attributes.rb +13 -14
  239. data/lib/datadog_api_client/v2/models/security_monitoring_suppression_update_attributes.rb +11 -1
  240. data/lib/datadog_api_client/v2/models/sensitive_data_scanner_standard_pattern_attributes.rb +1 -1
  241. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2.rb +13 -1
  242. data/lib/datadog_api_client/v2/models/service_now_ticket.rb +90 -0
  243. data/lib/datadog_api_client/v2/models/service_now_ticket_result.rb +80 -0
  244. data/lib/datadog_api_client/v2/models/slo_report_create_request.rb +98 -0
  245. data/lib/datadog_api_client/v2/models/slo_report_create_request_attributes.rb +160 -0
  246. data/lib/datadog_api_client/v2/models/slo_report_create_request_data.rb +98 -0
  247. data/lib/datadog_api_client/v2/models/slo_report_interval.rb +27 -0
  248. data/lib/datadog_api_client/v2/models/slo_report_post_response.rb +80 -0
  249. data/lib/datadog_api_client/v2/models/slo_report_post_response_data.rb +90 -0
  250. data/lib/datadog_api_client/v2/models/slo_report_status.rb +29 -0
  251. data/lib/datadog_api_client/v2/models/slo_report_status_get_response.rb +80 -0
  252. data/lib/datadog_api_client/v2/models/slo_report_status_get_response_attributes.rb +80 -0
  253. data/lib/datadog_api_client/v2/models/slo_report_status_get_response_data.rb +100 -0
  254. data/lib/datadog_api_client/v2/models/timeseries_response_series.rb +8 -0
  255. data/lib/datadog_api_client/v2/models/user_relationship_data.rb +119 -0
  256. data/lib/datadog_api_client/v2/models/user_resource_type.rb +26 -0
  257. data/lib/datadog_api_client/v2/models/user_team_included.rb +62 -0
  258. data/lib/datadog_api_client/v2/models/user_team_response.rb +16 -4
  259. data/lib/datadog_api_client/v2/models/user_teams_response.rb +13 -1
  260. data/lib/datadog_api_client/v2/models/users_relationship.rb +100 -0
  261. data/lib/datadog_api_client/version.rb +1 -1
  262. metadata +196 -33
  263. data/examples/v1/usage-metering/GetUsageAttribution.rb +0 -9
  264. data/lib/datadog_api_client/v1/models/usage_attribution_body.rb +0 -152
  265. data/lib/datadog_api_client/v1/models/usage_attribution_sort.rb +0 -61
  266. data/lib/datadog_api_client/v1/models/usage_attribution_supported_metrics.rb +0 -72
  267. data/lib/datadog_api_client/v1/models/usage_attribution_values.rb +0 -590
@@ -0,0 +1,63 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Authentication method of the HTTP requests.
21
+ module CustomDestinationResponseHttpDestinationAuth
22
+ class << self
23
+ include BaseOneOfModel
24
+ include BaseOneOfModelNoDiscriminator
25
+
26
+ # List of class defined in oneOf (OpenAPI v3)
27
+ def openapi_one_of
28
+ [
29
+ :'CustomDestinationResponseHttpDestinationAuthBasic',
30
+ :'CustomDestinationResponseHttpDestinationAuthCustomHeader'
31
+ ]
32
+ end
33
+ # Builds the object
34
+ # @param data [Mixed] Data to be matched against the list of oneOf items
35
+ # @return [Object] Returns the model or the data itself
36
+ def build(data)
37
+ # Go through the list of oneOf items and attempt to identify the appropriate one.
38
+ # Note:
39
+ # - We do not attempt to check whether exactly one item matches.
40
+ # - No advanced validation of types in some cases (e.g. "x: { type: string }" will happily match { x: 123 })
41
+ # due to the way the deserialization is made in the base_object template (it just casts without verifying).
42
+ # - TODO: scalar values are de facto behaving as if they were nullable.
43
+ # - TODO: logging when debugging is set.
44
+ openapi_one_of.each do |klass|
45
+ begin
46
+ next if klass == :AnyType # "nullable: true"
47
+ typed_data = find_and_cast_into_type(klass, data)
48
+ next if typed_data.respond_to?(:_unparsed) && typed_data._unparsed
49
+ return typed_data if typed_data
50
+ rescue # rescue all errors so we keep iterating even if the current item lookup raises
51
+ end
52
+ end
53
+
54
+ if openapi_one_of.include?(:AnyType)
55
+ data
56
+ else
57
+ self._unparsed = true
58
+ DatadogAPIClient::UnparsedObject.new(data)
59
+ end
60
+ end
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,98 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Basic access authentication.
21
+ class CustomDestinationResponseHttpDestinationAuthBasic
22
+ include BaseGenericModel
23
+
24
+ # Type of the basic access authentication.
25
+ attr_reader :type
26
+
27
+ # Attribute mapping from ruby-style variable name to JSON key.
28
+ # @!visibility private
29
+ def self.attribute_map
30
+ {
31
+ :'type' => :'type'
32
+ }
33
+ end
34
+
35
+ # Attribute type mapping.
36
+ # @!visibility private
37
+ def self.openapi_types
38
+ {
39
+ :'type' => :'CustomDestinationResponseHttpDestinationAuthBasicType'
40
+ }
41
+ end
42
+
43
+ # Initializes the object
44
+ # @param attributes [Hash] Model attributes in the form of hash
45
+ # @!visibility private
46
+ def initialize(attributes = {})
47
+ if (!attributes.is_a?(Hash))
48
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::CustomDestinationResponseHttpDestinationAuthBasic` initialize method"
49
+ end
50
+
51
+ # check to see if the attribute exists and convert string to symbol for hash key
52
+ attributes = attributes.each_with_object({}) { |(k, v), h|
53
+ if (!self.class.attribute_map.key?(k.to_sym))
54
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::CustomDestinationResponseHttpDestinationAuthBasic`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
55
+ end
56
+ h[k.to_sym] = v
57
+ }
58
+
59
+ if attributes.key?(:'type')
60
+ self.type = attributes[:'type']
61
+ end
62
+ end
63
+
64
+ # Check to see if the all the properties in the model are valid
65
+ # @return true if the model is valid
66
+ # @!visibility private
67
+ def valid?
68
+ return false if @type.nil?
69
+ true
70
+ end
71
+
72
+ # Custom attribute writer method with validation
73
+ # @param type [Object] Object to be assigned
74
+ # @!visibility private
75
+ def type=(type)
76
+ if type.nil?
77
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
78
+ end
79
+ @type = type
80
+ end
81
+
82
+ # Checks equality by comparing each attribute.
83
+ # @param o [Object] Object to be compared
84
+ # @!visibility private
85
+ def ==(o)
86
+ return true if self.equal?(o)
87
+ self.class == o.class &&
88
+ type == o.type
89
+ end
90
+
91
+ # Calculates hash code according to all attributes.
92
+ # @return [Integer] Hash code
93
+ # @!visibility private
94
+ def hash
95
+ [type].hash
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,26 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Type of the basic access authentication.
21
+ class CustomDestinationResponseHttpDestinationAuthBasicType
22
+ include BaseEnumModel
23
+
24
+ BASIC = "basic".freeze
25
+ end
26
+ end
@@ -0,0 +1,119 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Custom header access authentication.
21
+ class CustomDestinationResponseHttpDestinationAuthCustomHeader
22
+ include BaseGenericModel
23
+
24
+ # The header name of the authentication.
25
+ attr_reader :header_name
26
+
27
+ # Type of the custom header access authentication.
28
+ attr_reader :type
29
+
30
+ # Attribute mapping from ruby-style variable name to JSON key.
31
+ # @!visibility private
32
+ def self.attribute_map
33
+ {
34
+ :'header_name' => :'header_name',
35
+ :'type' => :'type'
36
+ }
37
+ end
38
+
39
+ # Attribute type mapping.
40
+ # @!visibility private
41
+ def self.openapi_types
42
+ {
43
+ :'header_name' => :'String',
44
+ :'type' => :'CustomDestinationResponseHttpDestinationAuthCustomHeaderType'
45
+ }
46
+ end
47
+
48
+ # Initializes the object
49
+ # @param attributes [Hash] Model attributes in the form of hash
50
+ # @!visibility private
51
+ def initialize(attributes = {})
52
+ if (!attributes.is_a?(Hash))
53
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::CustomDestinationResponseHttpDestinationAuthCustomHeader` initialize method"
54
+ end
55
+
56
+ # check to see if the attribute exists and convert string to symbol for hash key
57
+ attributes = attributes.each_with_object({}) { |(k, v), h|
58
+ if (!self.class.attribute_map.key?(k.to_sym))
59
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::CustomDestinationResponseHttpDestinationAuthCustomHeader`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
60
+ end
61
+ h[k.to_sym] = v
62
+ }
63
+
64
+ if attributes.key?(:'header_name')
65
+ self.header_name = attributes[:'header_name']
66
+ end
67
+
68
+ if attributes.key?(:'type')
69
+ self.type = attributes[:'type']
70
+ end
71
+ end
72
+
73
+ # Check to see if the all the properties in the model are valid
74
+ # @return true if the model is valid
75
+ # @!visibility private
76
+ def valid?
77
+ return false if @header_name.nil?
78
+ return false if @type.nil?
79
+ true
80
+ end
81
+
82
+ # Custom attribute writer method with validation
83
+ # @param header_name [Object] Object to be assigned
84
+ # @!visibility private
85
+ def header_name=(header_name)
86
+ if header_name.nil?
87
+ fail ArgumentError, 'invalid value for "header_name", header_name cannot be nil.'
88
+ end
89
+ @header_name = header_name
90
+ end
91
+
92
+ # Custom attribute writer method with validation
93
+ # @param type [Object] Object to be assigned
94
+ # @!visibility private
95
+ def type=(type)
96
+ if type.nil?
97
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
98
+ end
99
+ @type = type
100
+ end
101
+
102
+ # Checks equality by comparing each attribute.
103
+ # @param o [Object] Object to be compared
104
+ # @!visibility private
105
+ def ==(o)
106
+ return true if self.equal?(o)
107
+ self.class == o.class &&
108
+ header_name == o.header_name &&
109
+ type == o.type
110
+ end
111
+
112
+ # Calculates hash code according to all attributes.
113
+ # @return [Integer] Hash code
114
+ # @!visibility private
115
+ def hash
116
+ [header_name, type].hash
117
+ end
118
+ end
119
+ end
@@ -0,0 +1,26 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Type of the custom header access authentication.
21
+ class CustomDestinationResponseHttpDestinationAuthCustomHeaderType
22
+ include BaseEnumModel
23
+
24
+ CUSTOM_HEADER = "custom_header".freeze
25
+ end
26
+ end
@@ -0,0 +1,26 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # The type of the resource. The value should always be `custom_destination`.
21
+ class CustomDestinationType
22
+ include BaseEnumModel
23
+
24
+ CUSTOM_DESTINATION = "custom_destination".freeze
25
+ end
26
+ end
@@ -0,0 +1,80 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # The custom destination.
21
+ class CustomDestinationUpdateRequest
22
+ include BaseGenericModel
23
+
24
+ # The definition of a custom destination.
25
+ attr_accessor :data
26
+
27
+ # Attribute mapping from ruby-style variable name to JSON key.
28
+ # @!visibility private
29
+ def self.attribute_map
30
+ {
31
+ :'data' => :'data'
32
+ }
33
+ end
34
+
35
+ # Attribute type mapping.
36
+ # @!visibility private
37
+ def self.openapi_types
38
+ {
39
+ :'data' => :'CustomDestinationUpdateRequestDefinition'
40
+ }
41
+ end
42
+
43
+ # Initializes the object
44
+ # @param attributes [Hash] Model attributes in the form of hash
45
+ # @!visibility private
46
+ def initialize(attributes = {})
47
+ if (!attributes.is_a?(Hash))
48
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::CustomDestinationUpdateRequest` initialize method"
49
+ end
50
+
51
+ # check to see if the attribute exists and convert string to symbol for hash key
52
+ attributes = attributes.each_with_object({}) { |(k, v), h|
53
+ if (!self.class.attribute_map.key?(k.to_sym))
54
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::CustomDestinationUpdateRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
55
+ end
56
+ h[k.to_sym] = v
57
+ }
58
+
59
+ if attributes.key?(:'data')
60
+ self.data = attributes[:'data']
61
+ end
62
+ end
63
+
64
+ # Checks equality by comparing each attribute.
65
+ # @param o [Object] Object to be compared
66
+ # @!visibility private
67
+ def ==(o)
68
+ return true if self.equal?(o)
69
+ self.class == o.class &&
70
+ data == o.data
71
+ end
72
+
73
+ # Calculates hash code according to all attributes.
74
+ # @return [Integer] Hash code
75
+ # @!visibility private
76
+ def hash
77
+ [data].hash
78
+ end
79
+ end
80
+ end
@@ -0,0 +1,169 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # The attributes associated with the custom destination.
21
+ class CustomDestinationUpdateRequestAttributes
22
+ include BaseGenericModel
23
+
24
+ # Whether logs matching this custom destination should be forwarded or not.
25
+ attr_accessor :enabled
26
+
27
+ # Whether tags from the forwarded logs should be forwarded or not.
28
+ attr_accessor :forward_tags
29
+
30
+ # List of [keys of tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags) to be restricted from being forwarded.
31
+ # An empty list represents no restriction is in place and either all or no tags will be forwarded depending on `forward_tags_restriction_list_type` parameter.
32
+ attr_reader :forward_tags_restriction_list
33
+
34
+ # How `forward_tags_restriction_list` parameter should be interpreted.
35
+ # If `ALLOW_LIST`, then only tags whose keys on the forwarded logs match the ones on the restriction list
36
+ # are forwarded.
37
+ #
38
+ # `BLOCK_LIST` works the opposite way. It does not forward the tags matching the ones on the list.
39
+ attr_accessor :forward_tags_restriction_list_type
40
+
41
+ # A custom destination's location to forward logs.
42
+ attr_accessor :forwarder_destination
43
+
44
+ # The custom destination name.
45
+ attr_accessor :name
46
+
47
+ # The custom destination query and filter. Logs matching this query are forwarded to the destination.
48
+ attr_accessor :query
49
+
50
+ # Attribute mapping from ruby-style variable name to JSON key.
51
+ # @!visibility private
52
+ def self.attribute_map
53
+ {
54
+ :'enabled' => :'enabled',
55
+ :'forward_tags' => :'forward_tags',
56
+ :'forward_tags_restriction_list' => :'forward_tags_restriction_list',
57
+ :'forward_tags_restriction_list_type' => :'forward_tags_restriction_list_type',
58
+ :'forwarder_destination' => :'forwarder_destination',
59
+ :'name' => :'name',
60
+ :'query' => :'query'
61
+ }
62
+ end
63
+
64
+ # Attribute type mapping.
65
+ # @!visibility private
66
+ def self.openapi_types
67
+ {
68
+ :'enabled' => :'Boolean',
69
+ :'forward_tags' => :'Boolean',
70
+ :'forward_tags_restriction_list' => :'Array<String>',
71
+ :'forward_tags_restriction_list_type' => :'CustomDestinationAttributeTagsRestrictionListType',
72
+ :'forwarder_destination' => :'CustomDestinationForwardDestination',
73
+ :'name' => :'String',
74
+ :'query' => :'String'
75
+ }
76
+ end
77
+
78
+ # Initializes the object
79
+ # @param attributes [Hash] Model attributes in the form of hash
80
+ # @!visibility private
81
+ def initialize(attributes = {})
82
+ if (!attributes.is_a?(Hash))
83
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::CustomDestinationUpdateRequestAttributes` initialize method"
84
+ end
85
+
86
+ # check to see if the attribute exists and convert string to symbol for hash key
87
+ attributes = attributes.each_with_object({}) { |(k, v), h|
88
+ if (!self.class.attribute_map.key?(k.to_sym))
89
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::CustomDestinationUpdateRequestAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
90
+ end
91
+ h[k.to_sym] = v
92
+ }
93
+
94
+ if attributes.key?(:'enabled')
95
+ self.enabled = attributes[:'enabled']
96
+ end
97
+
98
+ if attributes.key?(:'forward_tags')
99
+ self.forward_tags = attributes[:'forward_tags']
100
+ end
101
+
102
+ if attributes.key?(:'forward_tags_restriction_list')
103
+ if (value = attributes[:'forward_tags_restriction_list']).is_a?(Array)
104
+ self.forward_tags_restriction_list = value
105
+ end
106
+ end
107
+
108
+ if attributes.key?(:'forward_tags_restriction_list_type')
109
+ self.forward_tags_restriction_list_type = attributes[:'forward_tags_restriction_list_type']
110
+ end
111
+
112
+ if attributes.key?(:'forwarder_destination')
113
+ self.forwarder_destination = attributes[:'forwarder_destination']
114
+ end
115
+
116
+ if attributes.key?(:'name')
117
+ self.name = attributes[:'name']
118
+ end
119
+
120
+ if attributes.key?(:'query')
121
+ self.query = attributes[:'query']
122
+ end
123
+ end
124
+
125
+ # Check to see if the all the properties in the model are valid
126
+ # @return true if the model is valid
127
+ # @!visibility private
128
+ def valid?
129
+ return false if !@forward_tags_restriction_list.nil? && @forward_tags_restriction_list.length > 10
130
+ return false if !@forward_tags_restriction_list.nil? && @forward_tags_restriction_list.length < 0
131
+ true
132
+ end
133
+
134
+ # Custom attribute writer method with validation
135
+ # @param forward_tags_restriction_list [Object] Object to be assigned
136
+ # @!visibility private
137
+ def forward_tags_restriction_list=(forward_tags_restriction_list)
138
+ if !forward_tags_restriction_list.nil? && forward_tags_restriction_list.length > 10
139
+ fail ArgumentError, 'invalid value for "forward_tags_restriction_list", number of items must be less than or equal to 10.'
140
+ end
141
+ if !forward_tags_restriction_list.nil? && forward_tags_restriction_list.length < 0
142
+ fail ArgumentError, 'invalid value for "forward_tags_restriction_list", number of items must be greater than or equal to 0.'
143
+ end
144
+ @forward_tags_restriction_list = forward_tags_restriction_list
145
+ end
146
+
147
+ # Checks equality by comparing each attribute.
148
+ # @param o [Object] Object to be compared
149
+ # @!visibility private
150
+ def ==(o)
151
+ return true if self.equal?(o)
152
+ self.class == o.class &&
153
+ enabled == o.enabled &&
154
+ forward_tags == o.forward_tags &&
155
+ forward_tags_restriction_list == o.forward_tags_restriction_list &&
156
+ forward_tags_restriction_list_type == o.forward_tags_restriction_list_type &&
157
+ forwarder_destination == o.forwarder_destination &&
158
+ name == o.name &&
159
+ query == o.query
160
+ end
161
+
162
+ # Calculates hash code according to all attributes.
163
+ # @return [Integer] Hash code
164
+ # @!visibility private
165
+ def hash
166
+ [enabled, forward_tags, forward_tags_restriction_list, forward_tags_restriction_list_type, forwarder_destination, name, query].hash
167
+ end
168
+ end
169
+ end