datadog_api_client 2.12.0 → 2.14.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.
- checksums.yaml +4 -4
- data/.apigentools-info +6 -6
- data/.generator/conftest.py +7 -0
- data/.generator/poetry.lock +45 -75
- data/.generator/pyproject.toml +7 -7
- data/.generator/schemas/v1/openapi.yaml +257 -19
- data/.generator/schemas/v2/openapi.yaml +3020 -911
- data/.generator/src/generator/formatter.py +43 -32
- data/.generator/src/generator/openapi.py +4 -2
- data/.generator/src/generator/templates/api_client.j2 +81 -53
- data/.generator/src/generator/templates/configuration.j2 +21 -0
- data/.github/workflows/test_integration.yml +7 -1
- data/.pre-commit-config.yaml +4 -4
- data/CHANGELOG.md +62 -0
- data/README.md +23 -0
- data/examples/v1/azure-integration/CreateAzureIntegration.rb +3 -0
- data/examples/v1/azure-integration/DeleteAzureIntegration.rb +3 -0
- data/examples/v1/azure-integration/UpdateAzureHostFilters.rb +3 -0
- data/examples/v1/azure-integration/UpdateAzureIntegration.rb +3 -0
- data/examples/v1/dashboards/CreateDashboard_1284514532.rb +43 -0
- data/examples/v1/dashboards/CreateDashboard_2261785072.rb +47 -0
- data/examples/v1/dashboards/CreateDashboard_252716965.rb +6 -0
- data/examples/v1/dashboards/CreateDashboard_3513586382.rb +74 -0
- data/examples/v1/dashboards/CreateDashboard_3562282606.rb +1 -0
- data/examples/v1/dashboards/DeletePublicDashboardInvitation.rb +3 -3
- data/examples/v1/organizations/UpdateOrg.rb +1 -1
- data/examples/v1/synthetics/CreateSyntheticsAPITest_1487281163.rb +1 -0
- data/examples/v1/users/CreateUser.rb +1 -1
- data/examples/v1/users/CreateUser_266604071.rb +13 -0
- data/examples/v1/users/UpdateUser.rb +1 -1
- data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent.rb +3 -0
- data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent_129899466.rb +3 -0
- data/examples/v2/confluent-cloud/CreateConfluentAccount.rb +1 -0
- data/examples/v2/confluent-cloud/CreateConfluentResource.rb +1 -0
- data/examples/v2/confluent-cloud/UpdateConfluentResource.rb +1 -0
- data/examples/v2/downtimes/CancelDowntime.rb +11 -0
- data/examples/v2/downtimes/CreateDowntime.rb +26 -0
- data/examples/v2/downtimes/GetDowntime.rb +11 -0
- data/examples/v2/downtimes/ListDowntimes.rb +8 -0
- data/examples/v2/downtimes/ListMonitorDowntimes.rb +8 -0
- data/examples/v2/downtimes/ListMonitorDowntimes_128979780.rb +8 -0
- data/examples/v2/downtimes/UpdateDowntime.rb +21 -0
- data/examples/v2/logs/AggregateLogs_2955613758.rb +1 -1
- data/examples/v2/logs/ListLogsGet_2034110533.rb +3 -1
- data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_1092490364.rb +10 -0
- data/examples/v2/spans/AggregateSpans.rb +25 -0
- data/examples/v2/spans/ListSpans.rb +25 -0
- data/examples/v2/spans/ListSpansGet.rb +5 -0
- data/examples/v2/spans/ListSpansGet_1130763422.rb +8 -0
- data/examples/v2/spans/ListSpans_3495563906.rb +25 -0
- data/examples/v2/teams/CreateTeam.rb +2 -2
- data/examples/v2/teams/CreateTeam_252121814.rb +24 -0
- data/examples/v2/teams/GetUserMemberships.rb +8 -0
- data/examples/v2/teams/UpdateTeam.rb +9 -0
- data/lib/datadog_api_client/api_client.rb +81 -53
- data/lib/datadog_api_client/configuration.rb +28 -0
- data/lib/datadog_api_client/inflector.rb +97 -1
- data/lib/datadog_api_client/v1/api/service_level_objective_corrections_api.rb +2 -2
- data/lib/datadog_api_client/v1/api/service_level_objectives_api.rb +10 -10
- data/lib/datadog_api_client/v1/api/usage_metering_api.rb +3 -3
- data/lib/datadog_api_client/v1/models/azure_account.rb +32 -1
- data/lib/datadog_api_client/v1/models/change_widget_request.rb +1 -1
- data/lib/datadog_api_client/v1/models/distribution_widget_definition.rb +13 -1
- data/lib/datadog_api_client/v1/models/formula_and_function_cloud_cost_data_source.rb +26 -0
- data/lib/datadog_api_client/v1/models/formula_and_function_cloud_cost_query_definition.rb +150 -0
- data/lib/datadog_api_client/v1/models/formula_and_function_query_definition.rb +2 -1
- data/lib/datadog_api_client/v1/models/formula_and_function_response_format.rb +2 -1
- data/lib/datadog_api_client/v1/models/formula_and_function_slo_query_definition.rb +11 -1
- data/lib/datadog_api_client/v1/models/geomap_widget_request.rb +24 -2
- data/lib/datadog_api_client/v1/models/hourly_usage_attribution_usage_type.rb +3 -0
- data/lib/datadog_api_client/v1/models/ip_prefixes_remote_configuration.rb +94 -0
- data/lib/datadog_api_client/v1/models/ip_ranges.rb +11 -1
- data/lib/datadog_api_client/v1/models/monthly_usage_attribution_supported_metrics.rb +6 -0
- data/lib/datadog_api_client/v1/models/monthly_usage_attribution_values.rb +61 -1
- data/lib/datadog_api_client/v1/models/organization_settings.rb +8 -0
- data/lib/datadog_api_client/v1/models/query_value_widget_request.rb +1 -1
- data/lib/datadog_api_client/v1/models/scatterplot_table_request.rb +1 -1
- data/lib/datadog_api_client/v1/models/sunburst_widget_request.rb +1 -1
- data/lib/datadog_api_client/v1/models/synthetics_test_request.rb +11 -1
- data/lib/datadog_api_client/v1/models/table_widget_request.rb +1 -1
- data/lib/datadog_api_client/v1/models/timeseries_widget_request.rb +1 -1
- data/lib/datadog_api_client/v1/models/toplist_widget_request.rb +1 -1
- data/lib/datadog_api_client/v1/models/tree_map_widget_request.rb +1 -1
- data/lib/datadog_api_client/v1/models/usage_ci_visibility_hour.rb +12 -1
- data/lib/datadog_api_client/v1/models/usage_summary_date.rb +24 -4
- data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +24 -4
- data/lib/datadog_api_client/v1/models/usage_summary_response.rb +24 -4
- data/lib/datadog_api_client/v1/models/user.rb +8 -0
- data/lib/datadog_api_client/v1/models/widget_comparator.rb +1 -0
- data/lib/datadog_api_client/v1/models/widget_display_type.rb +1 -0
- data/lib/datadog_api_client/v2/api/ci_visibility_pipelines_api.rb +11 -5
- data/lib/datadog_api_client/v2/api/downtimes_api.rb +462 -0
- data/lib/datadog_api_client/v2/api/ip_allowlist_api.rb +2 -2
- data/lib/datadog_api_client/v2/api/logs_api.rb +2 -2
- data/lib/datadog_api_client/v2/api/metrics_api.rb +2 -2
- data/lib/datadog_api_client/v2/api/rum_api.rb +2 -2
- data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +3 -3
- data/lib/datadog_api_client/v2/api/spans_api.rb +294 -0
- data/lib/datadog_api_client/v2/api/spans_metrics_api.rb +2 -2
- data/lib/datadog_api_client/v2/api/teams_api.rb +65 -0
- data/lib/datadog_api_client/v2/models/application_key_create_attributes.rb +1 -1
- data/lib/datadog_api_client/v2/models/application_key_update_attributes.rb +1 -1
- data/lib/datadog_api_client/v2/models/audit_logs_event_attributes.rb +11 -1
- data/lib/datadog_api_client/v2/models/ci_app_event_attributes.rb +9 -21
- data/lib/datadog_api_client/v2/models/ci_app_pipeline_event.rb +1 -1
- data/lib/datadog_api_client/v2/models/ci_app_pipeline_event_attributes.rb +102 -0
- data/lib/datadog_api_client/v2/models/ci_app_pipeline_event_pipeline.rb +1 -1
- data/lib/datadog_api_client/v2/models/ci_app_pipeline_level.rb +30 -0
- data/lib/datadog_api_client/v2/models/ci_app_pipelines_query_filter.rb +1 -1
- data/lib/datadog_api_client/v2/models/ci_app_test_level.rb +29 -0
- data/lib/datadog_api_client/v2/models/ci_app_tests_analytics_aggregate_response.rb +1 -1
- data/lib/datadog_api_client/v2/models/ci_app_tests_query_filter.rb +1 -1
- data/lib/datadog_api_client/v2/models/cloud_configuration_rule_compliance_signal_options.rb +25 -1
- data/lib/datadog_api_client/v2/models/cloud_configuration_rule_create_payload.rb +13 -1
- data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_attributes.rb +41 -1
- data/lib/datadog_api_client/v2/models/confluent_account_resource_attributes.rb +11 -1
- data/lib/datadog_api_client/v2/models/confluent_resource_request_attributes.rb +11 -1
- data/lib/datadog_api_client/v2/models/confluent_resource_response_attributes.rb +21 -1
- data/lib/datadog_api_client/v2/models/dashboard_list_item.rb +36 -1
- data/lib/datadog_api_client/v2/models/downtime_create_request.rb +98 -0
- data/lib/datadog_api_client/v2/models/downtime_create_request_attributes.rb +194 -0
- data/lib/datadog_api_client/v2/models/downtime_create_request_data.rb +119 -0
- data/lib/datadog_api_client/v2/models/downtime_included_monitor_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/downtime_meta.rb +80 -0
- data/lib/datadog_api_client/v2/models/downtime_meta_page.rb +80 -0
- data/lib/datadog_api_client/v2/models/downtime_monitor_identifier.rb +63 -0
- data/lib/datadog_api_client/v2/models/downtime_monitor_identifier_id.rb +98 -0
- data/lib/datadog_api_client/v2/models/downtime_monitor_identifier_tags.rb +107 -0
- data/lib/datadog_api_client/v2/models/downtime_monitor_included_attributes.rb +80 -0
- data/lib/datadog_api_client/v2/models/downtime_monitor_included_item.rb +100 -0
- data/lib/datadog_api_client/v2/models/downtime_notify_end_state_actions.rb +27 -0
- data/lib/datadog_api_client/v2/models/downtime_notify_end_state_types.rb +28 -0
- data/lib/datadog_api_client/v2/models/downtime_relationships.rb +90 -0
- data/lib/datadog_api_client/v2/models/downtime_relationships_created_by.rb +88 -0
- data/lib/datadog_api_client/v2/models/downtime_relationships_created_by_data.rb +90 -0
- data/lib/datadog_api_client/v2/models/downtime_relationships_monitor.rb +88 -0
- data/lib/datadog_api_client/v2/models/downtime_relationships_monitor_data.rb +90 -0
- data/lib/datadog_api_client/v2/models/downtime_resource_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/downtime_response.rb +95 -0
- data/lib/datadog_api_client/v2/models/downtime_response_attributes.rb +208 -0
- data/lib/datadog_api_client/v2/models/downtime_response_data.rb +110 -0
- data/lib/datadog_api_client/v2/models/downtime_response_included_item.rb +63 -0
- data/lib/datadog_api_client/v2/models/downtime_schedule_create_request.rb +63 -0
- data/lib/datadog_api_client/v2/models/downtime_schedule_current_downtime_response.rb +100 -0
- data/lib/datadog_api_client/v2/models/downtime_schedule_one_time_create_update_request.rb +101 -0
- data/lib/datadog_api_client/v2/models/downtime_schedule_one_time_response.rb +116 -0
- data/lib/datadog_api_client/v2/models/downtime_schedule_recurrence_create_update_request.rb +143 -0
- data/lib/datadog_api_client/v2/models/downtime_schedule_recurrence_response.rb +106 -0
- data/lib/datadog_api_client/v2/models/downtime_schedule_recurrences_create_request.rb +110 -0
- data/lib/datadog_api_client/v2/models/downtime_schedule_recurrences_response.rb +131 -0
- data/lib/datadog_api_client/v2/models/downtime_schedule_recurrences_update_request.rb +92 -0
- data/lib/datadog_api_client/v2/models/downtime_schedule_response.rb +65 -0
- data/lib/datadog_api_client/v2/models/downtime_schedule_update_request.rb +63 -0
- data/lib/datadog_api_client/v2/models/downtime_status.rb +29 -0
- data/lib/datadog_api_client/v2/models/downtime_update_request.rb +98 -0
- data/lib/datadog_api_client/v2/models/downtime_update_request_attributes.rb +165 -0
- data/lib/datadog_api_client/v2/models/{team_data.rb → downtime_update_request_data.rb} +9 -9
- data/lib/datadog_api_client/v2/models/event_response_attributes.rb +11 -1
- data/lib/datadog_api_client/v2/models/events_group_by_sort.rb +1 -1
- data/lib/datadog_api_client/v2/models/events_response_metadata.rb +11 -1
- data/lib/datadog_api_client/v2/models/formula_limit.rb +1 -0
- data/lib/datadog_api_client/v2/models/full_application_key_attributes.rb +1 -1
- data/lib/datadog_api_client/v2/models/list_downtimes_response.rb +104 -0
- data/lib/datadog_api_client/v2/models/logs_aggregate_request.rb +1 -1
- data/lib/datadog_api_client/v2/models/logs_aggregate_request_page.rb +1 -1
- data/lib/datadog_api_client/v2/models/logs_group_by.rb +3 -2
- data/lib/datadog_api_client/v2/models/logs_group_by_histogram.rb +1 -1
- data/lib/datadog_api_client/v2/models/logs_list_request.rb +1 -1
- data/lib/datadog_api_client/v2/models/logs_query_options.rb +1 -1
- data/lib/datadog_api_client/v2/models/logs_response_metadata_page.rb +1 -1
- data/lib/datadog_api_client/v2/models/metrics_aggregator.rb +1 -1
- data/lib/datadog_api_client/v2/models/metrics_scalar_query.rb +1 -1
- data/lib/datadog_api_client/v2/models/monitor_downtime_match_resource_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/monitor_downtime_match_response.rb +92 -0
- data/lib/datadog_api_client/v2/models/monitor_downtime_match_response_attributes.rb +120 -0
- data/lib/datadog_api_client/v2/models/monitor_downtime_match_response_data.rb +108 -0
- data/lib/datadog_api_client/v2/models/on_demand_concurrency_cap.rb +14 -4
- data/lib/datadog_api_client/v2/models/on_demand_concurrency_cap_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/partial_application_key_attributes.rb +1 -1
- data/lib/datadog_api_client/v2/models/query_formula.rb +1 -0
- data/lib/datadog_api_client/v2/models/relationship_to_team_links.rb +14 -4
- data/lib/datadog_api_client/v2/models/relationship_to_user_team_permission.rb +14 -4
- data/lib/datadog_api_client/v2/models/restriction_policy_binding.rb +2 -1
- data/lib/datadog_api_client/v2/models/rum_application_list.rb +11 -1
- data/lib/datadog_api_client/v2/models/security_monitoring_signal_metadata_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_signal_response.rb +80 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_signal_rule_response_query.rb +26 -2
- data/lib/datadog_api_client/v2/models/security_monitoring_signal_state_update_data.rb +24 -4
- data/lib/datadog_api_client/v2/models/security_monitoring_signal_triage_update_data.rb +24 -4
- data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_query.rb +1 -19
- data/lib/datadog_api_client/v2/models/security_monitoring_triage_user.rb +11 -1
- data/lib/datadog_api_client/v2/models/sensitive_data_scanner_get_config_response_data.rb +11 -1
- data/lib/datadog_api_client/v2/models/sensitive_data_scanner_meta.rb +11 -1
- data/lib/datadog_api_client/v2/models/sensitive_data_scanner_standard_pattern_attributes.rb +11 -1
- data/lib/datadog_api_client/v2/models/service_definition_data.rb +11 -1
- data/lib/datadog_api_client/v2/models/service_definition_meta.rb +36 -4
- data/lib/datadog_api_client/v2/models/service_definition_meta_warnings.rb +100 -0
- data/lib/datadog_api_client/v2/models/span.rb +100 -0
- data/lib/datadog_api_client/v2/models/spans_aggregate_bucket.rb +100 -0
- data/lib/datadog_api_client/v2/models/spans_aggregate_bucket_attributes.rb +100 -0
- data/lib/datadog_api_client/v2/models/spans_aggregate_bucket_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/spans_aggregate_bucket_value.rb +64 -0
- data/lib/datadog_api_client/v2/models/spans_aggregate_bucket_value_timeseries_point.rb +90 -0
- data/lib/datadog_api_client/v2/models/spans_aggregate_data.rb +90 -0
- data/lib/datadog_api_client/v2/models/spans_aggregate_request.rb +80 -0
- data/lib/datadog_api_client/v2/models/spans_aggregate_request_attributes.rb +115 -0
- data/lib/datadog_api_client/v2/models/spans_aggregate_request_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/spans_aggregate_response.rb +92 -0
- data/lib/datadog_api_client/v2/models/spans_aggregate_response_metadata.rb +113 -0
- data/lib/datadog_api_client/v2/models/spans_aggregate_response_status.rb +27 -0
- data/lib/datadog_api_client/v2/models/spans_aggregate_sort.rb +110 -0
- data/lib/datadog_api_client/v2/models/spans_aggregate_sort_type.rb +27 -0
- data/lib/datadog_api_client/v2/models/spans_aggregation_function.rb +37 -0
- data/lib/datadog_api_client/v2/models/spans_attributes.rb +244 -0
- data/lib/datadog_api_client/v2/models/spans_compute.rb +129 -0
- data/lib/datadog_api_client/v2/models/spans_compute_type.rb +27 -0
- data/lib/datadog_api_client/v2/models/spans_group_by.rb +149 -0
- data/lib/datadog_api_client/v2/models/spans_group_by_histogram.rb +143 -0
- data/lib/datadog_api_client/v2/models/spans_group_by_missing.rb +63 -0
- data/lib/datadog_api_client/v2/models/spans_group_by_total.rb +64 -0
- data/lib/datadog_api_client/v2/models/spans_list_request.rb +80 -0
- data/lib/datadog_api_client/v2/models/spans_list_request_attributes.rb +111 -0
- data/lib/datadog_api_client/v2/models/spans_list_request_data.rb +90 -0
- data/lib/datadog_api_client/v2/models/spans_list_request_page.rb +108 -0
- data/lib/datadog_api_client/v2/models/spans_list_request_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/spans_list_response.rb +102 -0
- data/lib/datadog_api_client/v2/models/spans_list_response_links.rb +81 -0
- data/lib/datadog_api_client/v2/models/spans_list_response_metadata.rb +123 -0
- data/lib/datadog_api_client/v2/models/spans_query_filter.rb +100 -0
- data/lib/datadog_api_client/v2/models/spans_query_options.rb +91 -0
- data/lib/datadog_api_client/v2/models/spans_response_metadata_page.rb +81 -0
- data/lib/datadog_api_client/v2/models/spans_sort.rb +27 -0
- data/lib/datadog_api_client/v2/models/spans_sort_order.rb +27 -0
- data/lib/datadog_api_client/v2/models/spans_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/spans_warning.rb +100 -0
- data/lib/datadog_api_client/v2/models/team_attributes.rb +50 -4
- data/lib/datadog_api_client/v2/models/team_create_attributes.rb +57 -4
- data/lib/datadog_api_client/v2/models/team_relationships_links.rb +80 -0
- data/lib/datadog_api_client/v2/models/team_response.rb +1 -1
- data/lib/datadog_api_client/v2/models/team_update_attributes.rb +57 -4
- data/lib/datadog_api_client/v2/models/teams_response.rb +24 -4
- data/lib/datadog_api_client/v2/models/teams_response_links.rb +129 -0
- data/lib/datadog_api_client/v2/models/teams_response_meta.rb +80 -0
- data/lib/datadog_api_client/v2/models/teams_response_meta_pagination.rb +150 -0
- data/lib/datadog_api_client/v2/models/usage_attributes_object.rb +11 -1
- data/lib/datadog_api_client/v2/models/user_invitation_response_data.rb +11 -1
- data/lib/datadog_api_client/v2/models/user_teams_response.rb +24 -4
- data/lib/datadog_api_client/version.rb +1 -1
- data/spec/configuration_spec.rb +17 -0
- data/spec/retry_spec.rb +44 -0
- metadata +119 -3
|
@@ -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
|
+
# Teams response metadata.
|
|
21
|
+
class TeamsResponseMeta
|
|
22
|
+
include BaseGenericModel
|
|
23
|
+
|
|
24
|
+
# Teams response metadata.
|
|
25
|
+
attr_accessor :pagination
|
|
26
|
+
|
|
27
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
28
|
+
# @!visibility private
|
|
29
|
+
def self.attribute_map
|
|
30
|
+
{
|
|
31
|
+
:'pagination' => :'pagination'
|
|
32
|
+
}
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
# Attribute type mapping.
|
|
36
|
+
# @!visibility private
|
|
37
|
+
def self.openapi_types
|
|
38
|
+
{
|
|
39
|
+
:'pagination' => :'TeamsResponseMetaPagination'
|
|
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::TeamsResponseMeta` 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::TeamsResponseMeta`. 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?(:'pagination')
|
|
60
|
+
self.pagination = attributes[:'pagination']
|
|
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
|
+
pagination == o.pagination
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
# Calculates hash code according to all attributes.
|
|
74
|
+
# @return [Integer] Hash code
|
|
75
|
+
# @!visibility private
|
|
76
|
+
def hash
|
|
77
|
+
[pagination].hash
|
|
78
|
+
end
|
|
79
|
+
end
|
|
80
|
+
end
|
|
@@ -0,0 +1,150 @@
|
|
|
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
|
+
# Teams response metadata.
|
|
21
|
+
class TeamsResponseMetaPagination
|
|
22
|
+
include BaseGenericModel
|
|
23
|
+
|
|
24
|
+
# The first offset.
|
|
25
|
+
attr_accessor :first_offset
|
|
26
|
+
|
|
27
|
+
# The last offset.
|
|
28
|
+
attr_accessor :last_offset
|
|
29
|
+
|
|
30
|
+
# Pagination limit.
|
|
31
|
+
attr_accessor :limit
|
|
32
|
+
|
|
33
|
+
# The next offset.
|
|
34
|
+
attr_accessor :next_offset
|
|
35
|
+
|
|
36
|
+
# The offset.
|
|
37
|
+
attr_accessor :offset
|
|
38
|
+
|
|
39
|
+
# The previous offset.
|
|
40
|
+
attr_accessor :prev_offset
|
|
41
|
+
|
|
42
|
+
# Total results.
|
|
43
|
+
attr_accessor :total
|
|
44
|
+
|
|
45
|
+
# Offset type.
|
|
46
|
+
attr_accessor :type
|
|
47
|
+
|
|
48
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
49
|
+
# @!visibility private
|
|
50
|
+
def self.attribute_map
|
|
51
|
+
{
|
|
52
|
+
:'first_offset' => :'first_offset',
|
|
53
|
+
:'last_offset' => :'last_offset',
|
|
54
|
+
:'limit' => :'limit',
|
|
55
|
+
:'next_offset' => :'next_offset',
|
|
56
|
+
:'offset' => :'offset',
|
|
57
|
+
:'prev_offset' => :'prev_offset',
|
|
58
|
+
:'total' => :'total',
|
|
59
|
+
:'type' => :'type'
|
|
60
|
+
}
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
# Attribute type mapping.
|
|
64
|
+
# @!visibility private
|
|
65
|
+
def self.openapi_types
|
|
66
|
+
{
|
|
67
|
+
:'first_offset' => :'Integer',
|
|
68
|
+
:'last_offset' => :'Integer',
|
|
69
|
+
:'limit' => :'Integer',
|
|
70
|
+
:'next_offset' => :'Integer',
|
|
71
|
+
:'offset' => :'Integer',
|
|
72
|
+
:'prev_offset' => :'Integer',
|
|
73
|
+
:'total' => :'Integer',
|
|
74
|
+
:'type' => :'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::TeamsResponseMetaPagination` 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::TeamsResponseMetaPagination`. 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?(:'first_offset')
|
|
95
|
+
self.first_offset = attributes[:'first_offset']
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
if attributes.key?(:'last_offset')
|
|
99
|
+
self.last_offset = attributes[:'last_offset']
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
if attributes.key?(:'limit')
|
|
103
|
+
self.limit = attributes[:'limit']
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
if attributes.key?(:'next_offset')
|
|
107
|
+
self.next_offset = attributes[:'next_offset']
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
if attributes.key?(:'offset')
|
|
111
|
+
self.offset = attributes[:'offset']
|
|
112
|
+
end
|
|
113
|
+
|
|
114
|
+
if attributes.key?(:'prev_offset')
|
|
115
|
+
self.prev_offset = attributes[:'prev_offset']
|
|
116
|
+
end
|
|
117
|
+
|
|
118
|
+
if attributes.key?(:'total')
|
|
119
|
+
self.total = attributes[:'total']
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
if attributes.key?(:'type')
|
|
123
|
+
self.type = attributes[:'type']
|
|
124
|
+
end
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
# Checks equality by comparing each attribute.
|
|
128
|
+
# @param o [Object] Object to be compared
|
|
129
|
+
# @!visibility private
|
|
130
|
+
def ==(o)
|
|
131
|
+
return true if self.equal?(o)
|
|
132
|
+
self.class == o.class &&
|
|
133
|
+
first_offset == o.first_offset &&
|
|
134
|
+
last_offset == o.last_offset &&
|
|
135
|
+
limit == o.limit &&
|
|
136
|
+
next_offset == o.next_offset &&
|
|
137
|
+
offset == o.offset &&
|
|
138
|
+
prev_offset == o.prev_offset &&
|
|
139
|
+
total == o.total &&
|
|
140
|
+
type == o.type
|
|
141
|
+
end
|
|
142
|
+
|
|
143
|
+
# Calculates hash code according to all attributes.
|
|
144
|
+
# @return [Integer] Hash code
|
|
145
|
+
# @!visibility private
|
|
146
|
+
def hash
|
|
147
|
+
[first_offset, last_offset, limit, next_offset, offset, prev_offset, total, type].hash
|
|
148
|
+
end
|
|
149
|
+
end
|
|
150
|
+
end
|
|
@@ -30,6 +30,9 @@ module DatadogAPIClient::V2
|
|
|
30
30
|
# The organization public ID.
|
|
31
31
|
attr_accessor :public_id
|
|
32
32
|
|
|
33
|
+
# The region of the Datadog instance that the organization belongs to.
|
|
34
|
+
attr_accessor :region
|
|
35
|
+
|
|
33
36
|
# List of usage data reported for each requested hour.
|
|
34
37
|
attr_accessor :timeseries
|
|
35
38
|
|
|
@@ -43,6 +46,7 @@ module DatadogAPIClient::V2
|
|
|
43
46
|
:'org_name' => :'org_name',
|
|
44
47
|
:'product_family' => :'product_family',
|
|
45
48
|
:'public_id' => :'public_id',
|
|
49
|
+
:'region' => :'region',
|
|
46
50
|
:'timeseries' => :'timeseries',
|
|
47
51
|
:'usage_type' => :'usage_type'
|
|
48
52
|
}
|
|
@@ -55,6 +59,7 @@ module DatadogAPIClient::V2
|
|
|
55
59
|
:'org_name' => :'String',
|
|
56
60
|
:'product_family' => :'String',
|
|
57
61
|
:'public_id' => :'String',
|
|
62
|
+
:'region' => :'String',
|
|
58
63
|
:'timeseries' => :'Array<UsageTimeSeriesObject>',
|
|
59
64
|
:'usage_type' => :'HourlyUsageType'
|
|
60
65
|
}
|
|
@@ -88,6 +93,10 @@ module DatadogAPIClient::V2
|
|
|
88
93
|
self.public_id = attributes[:'public_id']
|
|
89
94
|
end
|
|
90
95
|
|
|
96
|
+
if attributes.key?(:'region')
|
|
97
|
+
self.region = attributes[:'region']
|
|
98
|
+
end
|
|
99
|
+
|
|
91
100
|
if attributes.key?(:'timeseries')
|
|
92
101
|
if (value = attributes[:'timeseries']).is_a?(Array)
|
|
93
102
|
self.timeseries = value
|
|
@@ -108,6 +117,7 @@ module DatadogAPIClient::V2
|
|
|
108
117
|
org_name == o.org_name &&
|
|
109
118
|
product_family == o.product_family &&
|
|
110
119
|
public_id == o.public_id &&
|
|
120
|
+
region == o.region &&
|
|
111
121
|
timeseries == o.timeseries &&
|
|
112
122
|
usage_type == o.usage_type
|
|
113
123
|
end
|
|
@@ -116,7 +126,7 @@ module DatadogAPIClient::V2
|
|
|
116
126
|
# @return [Integer] Hash code
|
|
117
127
|
# @!visibility private
|
|
118
128
|
def hash
|
|
119
|
-
[org_name, product_family, public_id, timeseries, usage_type].hash
|
|
129
|
+
[org_name, product_family, public_id, region, timeseries, usage_type].hash
|
|
120
130
|
end
|
|
121
131
|
end
|
|
122
132
|
end
|
|
@@ -27,6 +27,9 @@ module DatadogAPIClient::V2
|
|
|
27
27
|
# ID of the user invitation.
|
|
28
28
|
attr_accessor :id
|
|
29
29
|
|
|
30
|
+
# Relationships data for user invitation.
|
|
31
|
+
attr_accessor :relationships
|
|
32
|
+
|
|
30
33
|
# User invitations type.
|
|
31
34
|
attr_accessor :type
|
|
32
35
|
|
|
@@ -36,6 +39,7 @@ module DatadogAPIClient::V2
|
|
|
36
39
|
{
|
|
37
40
|
:'attributes' => :'attributes',
|
|
38
41
|
:'id' => :'id',
|
|
42
|
+
:'relationships' => :'relationships',
|
|
39
43
|
:'type' => :'type'
|
|
40
44
|
}
|
|
41
45
|
end
|
|
@@ -46,6 +50,7 @@ module DatadogAPIClient::V2
|
|
|
46
50
|
{
|
|
47
51
|
:'attributes' => :'UserInvitationDataAttributes',
|
|
48
52
|
:'id' => :'String',
|
|
53
|
+
:'relationships' => :'UserInvitationRelationships',
|
|
49
54
|
:'type' => :'UserInvitationsType'
|
|
50
55
|
}
|
|
51
56
|
end
|
|
@@ -74,6 +79,10 @@ module DatadogAPIClient::V2
|
|
|
74
79
|
self.id = attributes[:'id']
|
|
75
80
|
end
|
|
76
81
|
|
|
82
|
+
if attributes.key?(:'relationships')
|
|
83
|
+
self.relationships = attributes[:'relationships']
|
|
84
|
+
end
|
|
85
|
+
|
|
77
86
|
if attributes.key?(:'type')
|
|
78
87
|
self.type = attributes[:'type']
|
|
79
88
|
end
|
|
@@ -87,6 +96,7 @@ module DatadogAPIClient::V2
|
|
|
87
96
|
self.class == o.class &&
|
|
88
97
|
attributes == o.attributes &&
|
|
89
98
|
id == o.id &&
|
|
99
|
+
relationships == o.relationships &&
|
|
90
100
|
type == o.type
|
|
91
101
|
end
|
|
92
102
|
|
|
@@ -94,7 +104,7 @@ module DatadogAPIClient::V2
|
|
|
94
104
|
# @return [Integer] Hash code
|
|
95
105
|
# @!visibility private
|
|
96
106
|
def hash
|
|
97
|
-
[attributes, id, type].hash
|
|
107
|
+
[attributes, id, relationships, type].hash
|
|
98
108
|
end
|
|
99
109
|
end
|
|
100
110
|
end
|
|
@@ -24,11 +24,19 @@ module DatadogAPIClient::V2
|
|
|
24
24
|
# Team memberships response data
|
|
25
25
|
attr_accessor :data
|
|
26
26
|
|
|
27
|
+
# Teams response links.
|
|
28
|
+
attr_accessor :links
|
|
29
|
+
|
|
30
|
+
# Teams response metadata.
|
|
31
|
+
attr_accessor :meta
|
|
32
|
+
|
|
27
33
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
28
34
|
# @!visibility private
|
|
29
35
|
def self.attribute_map
|
|
30
36
|
{
|
|
31
|
-
:'data' => :'data'
|
|
37
|
+
:'data' => :'data',
|
|
38
|
+
:'links' => :'links',
|
|
39
|
+
:'meta' => :'meta'
|
|
32
40
|
}
|
|
33
41
|
end
|
|
34
42
|
|
|
@@ -36,7 +44,9 @@ module DatadogAPIClient::V2
|
|
|
36
44
|
# @!visibility private
|
|
37
45
|
def self.openapi_types
|
|
38
46
|
{
|
|
39
|
-
:'data' => :'Array<UserTeam>'
|
|
47
|
+
:'data' => :'Array<UserTeam>',
|
|
48
|
+
:'links' => :'TeamsResponseLinks',
|
|
49
|
+
:'meta' => :'TeamsResponseMeta'
|
|
40
50
|
}
|
|
41
51
|
end
|
|
42
52
|
|
|
@@ -61,6 +71,14 @@ module DatadogAPIClient::V2
|
|
|
61
71
|
self.data = value
|
|
62
72
|
end
|
|
63
73
|
end
|
|
74
|
+
|
|
75
|
+
if attributes.key?(:'links')
|
|
76
|
+
self.links = attributes[:'links']
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
if attributes.key?(:'meta')
|
|
80
|
+
self.meta = attributes[:'meta']
|
|
81
|
+
end
|
|
64
82
|
end
|
|
65
83
|
|
|
66
84
|
# Checks equality by comparing each attribute.
|
|
@@ -69,14 +87,16 @@ module DatadogAPIClient::V2
|
|
|
69
87
|
def ==(o)
|
|
70
88
|
return true if self.equal?(o)
|
|
71
89
|
self.class == o.class &&
|
|
72
|
-
data == o.data
|
|
90
|
+
data == o.data &&
|
|
91
|
+
links == o.links &&
|
|
92
|
+
meta == o.meta
|
|
73
93
|
end
|
|
74
94
|
|
|
75
95
|
# Calculates hash code according to all attributes.
|
|
76
96
|
# @return [Integer] Hash code
|
|
77
97
|
# @!visibility private
|
|
78
98
|
def hash
|
|
79
|
-
[data].hash
|
|
99
|
+
[data, links, meta].hash
|
|
80
100
|
end
|
|
81
101
|
end
|
|
82
102
|
end
|
data/spec/configuration_spec.rb
CHANGED
|
@@ -42,4 +42,21 @@ describe DatadogAPIClient::Configuration do
|
|
|
42
42
|
end
|
|
43
43
|
end
|
|
44
44
|
end
|
|
45
|
+
|
|
46
|
+
describe '#backoff_base' do
|
|
47
|
+
context 'when setting a valid backoff_base value > 2' do
|
|
48
|
+
it 'sets the backoff_base attribute' do
|
|
49
|
+
config.backoff_base = 3
|
|
50
|
+
expect(config.backoff_base).to eq(3)
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
context 'when setting an invalid backoff_base value < 2' do
|
|
56
|
+
it 'raises an ArgumentError' do
|
|
57
|
+
expect { config.backoff_base = 1 }.to raise_error(ArgumentError, 'backoff_base cannot be smaller than 2')
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
|
|
45
62
|
end
|
data/spec/retry_spec.rb
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
describe 'logs_archive retry test' do
|
|
4
|
+
before do
|
|
5
|
+
DatadogAPIClient.configure do |c|
|
|
6
|
+
c.enable_retry = true
|
|
7
|
+
c.backoff_base = 2
|
|
8
|
+
end
|
|
9
|
+
@api_instance = DatadogAPIClient::V2::LogsArchivesAPI.new
|
|
10
|
+
@base_path = @api_instance.api_client.build_request_url('')
|
|
11
|
+
@body = DatadogAPIClient::V2::LogsArchiveCreateRequest.new
|
|
12
|
+
allow_any_instance_of(DatadogAPIClient::APIClient).to receive(:sleep)
|
|
13
|
+
end
|
|
14
|
+
it 'should retry 3 times and sleep for the value of X-Ratelimit-Reset' do
|
|
15
|
+
fixture = File.read('spec/fixtures/logs_archive_unknown_nested_oneof.json')
|
|
16
|
+
stub_request(:post, "#{@base_path}api/v2/logs/config/archives")
|
|
17
|
+
.to_return(
|
|
18
|
+
{:body => fixture, :headers => {"Content-Type": "application/json", "X-Ratelimit-Reset" => "1"}, :status => 429},
|
|
19
|
+
{:body => fixture, :headers => {"Content-Type": "application/json", "X-Ratelimit-Reset" => "1"}, :status => 429},
|
|
20
|
+
{:body => fixture, :headers => {"Content-Type": "application/json", "X-Ratelimit-Reset" => "1"}, :status => 429},
|
|
21
|
+
{:body => fixture, :headers => {"Content-Type": "application/json"}, :status => 299}
|
|
22
|
+
)
|
|
23
|
+
data = @api_instance.create_logs_archive(@body)
|
|
24
|
+
expect(@api_instance::api_client).to have_received(:sleep).exactly(3).times.with(1)
|
|
25
|
+
expect(WebMock).to have_requested(:post, "#{@base_path}api/v2/logs/config/archives").times(4)
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
it 'should retry 3 times and sleep for 2,4,8 seconds' do
|
|
29
|
+
fixture = File.read('spec/fixtures/logs_archive_unknown_nested_oneof.json')
|
|
30
|
+
stub_request(:post, "#{@base_path}api/v2/logs/config/archives")
|
|
31
|
+
.to_return(
|
|
32
|
+
{:body => fixture, :headers => {"Content-Type": "application/json"}, :status => 500},
|
|
33
|
+
{:body => fixture, :headers => {"Content-Type": "application/json"}, :status => 500},
|
|
34
|
+
{:body => fixture, :headers => {"Content-Type": "application/json"}, :status => 500},
|
|
35
|
+
{:body => fixture, :headers => {"Content-Type": "application/json"}, :status => 299}
|
|
36
|
+
)
|
|
37
|
+
|
|
38
|
+
data = @api_instance.create_logs_archive(@body)
|
|
39
|
+
expect(@api_instance::api_client).to have_received(:sleep).exactly(1).times.with(2)
|
|
40
|
+
expect(@api_instance::api_client).to have_received(:sleep).exactly(1).times.with(4)
|
|
41
|
+
expect(@api_instance::api_client).to have_received(:sleep).exactly(1).times.with(8)
|
|
42
|
+
expect(WebMock).to have_requested(:post, "#{@base_path}api/v2/logs/config/archives").times(4)
|
|
43
|
+
end
|
|
44
|
+
end
|