From 856d3f06f613654547c5cb53c3cd8b02ff56f0c3 Mon Sep 17 00:00:00 2001 From: "ci.datadog-api-spec" Date: Tue, 19 May 2026 16:08:57 +0000 Subject: [PATCH] Regenerate client from commit 9b5ef83 of spec repo --- .generator/schemas/v2/openapi.yaml | 5054 ++++++----------- docs/datadog_api_client.v2.api.rst | 7 + docs/datadog_api_client.v2.model.rst | 1013 +--- .../UpdateCustomAttributeConfig.py | 41 - .../v2/case-management-type/UpdateCaseType.py | 29 - .../v2/case-management/AddCaseInsights.py | 35 - examples/v2/case-management/AggregateCases.py | 34 - .../v2/case-management/BulkUpdateCases.py | 33 - examples/v2/case-management/CountCases.py | 14 - .../CreateCaseAutomationRule.py | 45 - examples/v2/case-management/CreateCaseLink.py | 31 - examples/v2/case-management/CreateCaseView.py | 29 - .../CreateMaintenanceWindow.py | 32 - .../DeleteCaseAutomationRule.py | 15 - examples/v2/case-management/DeleteCaseLink.py | 14 - examples/v2/case-management/DeleteCaseView.py | 14 - .../DeleteMaintenanceWindow.py | 14 - .../DisableCaseAutomationRule.py | 17 - .../EnableCaseAutomationRule.py | 17 - .../v2/case-management/FavoriteCaseProject.py | 14 - .../case-management/GetCaseAutomationRule.py | 17 - examples/v2/case-management/GetCaseView.py | 16 - .../ListCaseAutomationRules.py | 16 - examples/v2/case-management/ListCaseLinks.py | 17 - .../v2/case-management/ListCaseTimeline.py | 16 - examples/v2/case-management/ListCaseViews.py | 16 - .../v2/case-management/ListCaseWatchers.py | 16 - .../case-management/ListMaintenanceWindows.py | 14 - .../ListUserCaseProjectFavorites.py | 14 - .../v2/case-management/RemoveCaseInsights.py | 35 - .../case-management/UnfavoriteCaseProject.py | 14 - examples/v2/case-management/UnwatchCase.py | 15 - .../UpdateCaseAutomationRule.py | 45 - .../v2/case-management/UpdateCaseComment.py | 25 - .../v2/case-management/UpdateCaseDueDate.py | 27 - .../UpdateCaseResolvedReason.py | 27 - examples/v2/case-management/UpdateCaseView.py | 25 - .../UpdateMaintenanceWindow.py | 25 - examples/v2/case-management/WatchCase.py | 15 - .../v2/model-lab-api/DeleteModelLabRun.py | 14 + .../GetModelLabArtifactContent.py | 17 + .../GetModelLabArtifactContent_2858422658.py | 17 + .../v2/model-lab-api/GetModelLabProject.py | 16 + examples/v2/model-lab-api/GetModelLabRun.py | 16 + .../ListModelLabProjectArtifacts.py | 16 + .../ListModelLabProjectFacetKeys.py | 14 + .../ListModelLabProjectFacetValues.py | 18 + .../v2/model-lab-api/ListModelLabProjects.py | 14 + .../model-lab-api/ListModelLabRunArtifacts.py | 16 + .../model-lab-api/ListModelLabRunFacetKeys.py | 16 + .../ListModelLabRunFacetValues.py | 19 + examples/v2/model-lab-api/ListModelLabRuns.py | 14 + examples/v2/model-lab-api/PinModelLabRun.py | 14 + .../v2/model-lab-api/StarModelLabProject.py | 14 + examples/v2/model-lab-api/UnpinModelLabRun.py | 14 + .../v2/model-lab-api/UnstarModelLabProject.py | 14 + .../UnstarModelLabProject_931927092.py | 14 + src/datadog_api_client/configuration.py | 52 +- .../v2/api/case_management_api.py | 1848 +----- .../v2/api/case_management_attribute_api.py | 66 +- .../v2/api/case_management_type_api.py | 51 +- .../v2/api/model_lab_api_api.py | 927 +++ src/datadog_api_client/v2/apis/__init__.py | 2 + .../v2/model/automation_rule.py | 72 - .../v2/model/automation_rule_action.py | 48 - .../v2/model/automation_rule_action_data.py | 56 - .../v2/model/automation_rule_action_type.py | 38 - .../v2/model/automation_rule_attributes.py | 91 - .../v2/model/automation_rule_create.py | 48 - .../automation_rule_create_attributes.py | 72 - .../v2/model/automation_rule_relationships.py | 55 - .../v2/model/automation_rule_response.py | 40 - .../v2/model/automation_rule_trigger.py | 53 - .../v2/model/automation_rule_trigger_data.py | 72 - .../v2/model/automation_rule_trigger_type.py | 52 - .../v2/model/automation_rule_update.py | 56 - .../model/automation_rule_update_request.py | 40 - .../v2/model/automation_rules_response.py | 40 - src/datadog_api_client/v2/model/case.py | 2 +- .../v2/model/case_aggregate_group.py | 40 - .../v2/model/case_aggregate_group_by.py | 46 - .../v2/model/case_aggregate_request.py | 40 - .../case_aggregate_request_attributes.py | 46 - .../v2/model/case_aggregate_request_data.py | 48 - .../v2/model/case_aggregate_response.py | 40 - .../case_aggregate_response_attributes.py | 46 - .../v2/model/case_aggregate_response_data.py | 52 - .../v2/model/case_assign.py | 2 +- .../v2/model/case_attributes.py | 2 +- .../v2/model/case_automation_rule_state.py | 38 - .../v2/model/case_bulk_action_type.py | 62 - .../v2/model/case_bulk_update_request.py | 40 - .../case_bulk_update_request_attributes.py | 61 - .../v2/model/case_bulk_update_request_data.py | 48 - .../v2/model/case_comment.py | 2 +- .../v2/model/case_count_group.py | 46 - .../v2/model/case_count_response.py | 40 - .../model/case_count_response_attributes.py | 40 - .../v2/model/case_count_response_data.py | 52 - .../v2/model/case_create.py | 2 +- src/datadog_api_client/v2/model/case_empty.py | 2 +- .../v2/model/case_insight.py | 52 - .../v2/model/case_insight_type.py | 80 - .../v2/model/case_insights_attributes.py | 47 - .../v2/model/case_insights_data.py | 48 - src/datadog_api_client/v2/model/case_link.py | 54 - .../v2/model/case_link_attributes.py | 65 - .../v2/model/case_link_create.py | 48 - .../v2/model/case_object_attributes.py | 2 +- .../v2/model/case_resource_type.py | 2 +- .../v2/model/case_type_create.py | 6 +- .../v2/model/case_type_create_request.py | 4 +- .../v2/model/case_type_resource.py | 6 +- .../v2/model/case_type_resource_attributes.py | 10 +- .../v2/model/case_type_resource_type.py | 2 +- .../v2/model/case_type_response.py | 4 +- .../v2/model/case_type_update.py | 53 - .../v2/model/case_types_response.py | 2 +- .../v2/model/case_update_attributes.py | 2 +- .../case_update_attributes_attributes.py | 2 +- .../v2/model/case_update_comment.py | 48 - .../model/case_update_comment_attributes.py | 33 - .../v2/model/case_update_comment_request.py | 40 - .../v2/model/case_update_custom_attribute.py | 4 +- .../v2/model/case_update_description.py | 2 +- .../v2/model/case_update_due_date.py | 48 - .../v2/model/case_update_due_date_request.py | 40 - .../v2/model/case_update_priority.py | 2 +- .../v2/model/case_update_resolved_reason.py | 50 - .../case_update_resolved_reason_attributes.py | 33 - .../case_update_resolved_reason_request.py | 40 - .../v2/model/case_update_status.py | 2 +- .../v2/model/case_update_title.py | 2 +- src/datadog_api_client/v2/model/case_view.py | 72 - .../v2/model/case_view_attributes.py | 75 - .../v2/model/case_view_create.py | 48 - .../v2/model/case_view_create_attributes.py | 55 - .../v2/model/case_view_create_request.py | 40 - .../v2/model/case_view_relationships.py | 65 - .../v2/model/case_view_response.py | 40 - .../v2/model/case_view_update.py | 53 - .../v2/model/case_view_update_attributes.py | 56 - .../v2/model/case_views_response.py | 40 - .../v2/model/case_watcher.py | 54 - .../v2/model/case_watcher_relationships.py | 40 - .../model/case_watcher_user_relationship.py | 40 - .../v2/model/case_watchers_response.py | 40 - .../v2/model/custom_attribute_config.py | 6 +- ...stom_attribute_config_attributes_create.py | 12 +- .../model/custom_attribute_config_create.py | 6 +- .../custom_attribute_config_create_request.py | 4 +- ...om_attribute_config_resource_attributes.py | 14 +- .../custom_attribute_config_resource_type.py | 2 +- .../model/custom_attribute_config_response.py | 4 +- .../model/custom_attribute_config_update.py | 60 - ...stom_attribute_config_update_attributes.py | 80 - .../custom_attribute_config_update_request.py | 40 - .../custom_attribute_configs_response.py | 2 +- .../v2/model/custom_attribute_type.py | 2 +- .../v2/model/custom_attribute_type_data.py | 42 - .../v2/model/custom_attribute_value.py | 6 +- .../v2/model/custom_attribute_values_union.py | 2 +- .../v2/model/maintenance_window.py | 56 - .../v2/model/maintenance_window_attributes.py | 82 - .../v2/model/maintenance_window_create.py | 48 - .../maintenance_window_create_attributes.py | 52 - .../model/maintenance_window_resource_type.py | 35 - .../v2/model/maintenance_window_response.py | 40 - .../v2/model/maintenance_window_update.py | 56 - .../maintenance_window_update_attributes.py | 65 - .../maintenance_window_update_request.py | 40 - .../v2/model/maintenance_windows_response.py | 40 - .../v2/model/model_lab_artifact_info.py | 64 + .../model/model_lab_artifact_object_info.py | 50 + .../model/model_lab_facet_keys_attributes.py | 47 + .../v2/model/model_lab_facet_keys_data.py | 54 + ...st.py => model_lab_facet_keys_response.py} | 16 +- ...e_type.py => model_lab_facet_keys_type.py} | 12 +- .../v2/model/model_lab_facet_type.py | 44 + .../model_lab_facet_values_attributes.py | 78 + .../v2/model/model_lab_facet_values_data.py | 54 + ....py => model_lab_facet_values_response.py} | 16 +- ...type.py => model_lab_facet_values_type.py} | 12 +- .../v2/model/model_lab_metric_stat_range.py | 45 + .../v2/model/model_lab_metric_summary.py | 104 + ...tributes.py => model_lab_numeric_range.py} | 22 +- ...date_request.py => model_lab_page_meta.py} | 20 +- .../v2/model/model_lab_page_meta_page.py | 95 + .../v2/model/model_lab_pagination_links.py | 73 + ...model_lab_project_artifacts_attributes.py} | 20 +- .../model/model_lab_project_artifacts_data.py | 58 + ...> model_lab_project_artifacts_response.py} | 16 +- .../model/model_lab_project_artifacts_type.py | 35 + .../v2/model/model_lab_project_attributes.py | 114 + .../v2/model/model_lab_project_data.py | 54 + ...ype.py => model_lab_project_facet_type.py} | 12 +- ...ponse.py => model_lab_project_response.py} | 16 +- ...urce_type.py => model_lab_project_type.py} | 12 +- .../v2/model/model_lab_projects_response.py | 65 + .../model_lab_run_artifacts_attributes.py | 46 + .../v2/model/model_lab_run_artifacts_data.py | 54 + ...py => model_lab_run_artifacts_response.py} | 16 +- ...ype.py => model_lab_run_artifacts_type.py} | 12 +- .../v2/model/model_lab_run_attributes.py | 185 + .../v2/model/model_lab_run_data.py | 54 + ..._group_value.py => model_lab_run_param.py} | 18 +- ...e_request.py => model_lab_run_response.py} | 16 +- .../v2/model/model_lab_run_status.py | 53 + ...resource_type.py => model_lab_run_type.py} | 12 +- .../v2/model/model_lab_runs_response.py | 65 + ...bute_select_option.py => model_lab_tag.py} | 14 +- .../v2/model/project_favorite.py | 46 - .../model/project_favorite_resource_type.py | 35 - .../v2/model/project_favorites_response.py | 40 - .../v2/model/timeline_cell.py | 8 +- .../v2/model/timeline_cell_author.py | 6 +- .../v2/model/timeline_cell_author_user.py | 6 +- .../timeline_cell_author_user_content.py | 10 +- .../model/timeline_cell_author_user_type.py | 2 +- .../v2/model/timeline_cell_content.py | 4 +- .../v2/model/timeline_cell_content_comment.py | 4 +- .../v2/model/timeline_cell_resource.py | 6 +- .../v2/model/timeline_cell_resource_type.py | 2 +- .../v2/model/timeline_cell_type.py | 2 +- .../v2/model/timeline_response.py | 2 +- src/datadog_api_client/v2/models/__init__.py | 270 +- ...lab_run_returns_no_content_response.frozen | 1 + ...l_lab_run_returns_no_content_response.yaml | 16 + ..._lab_run_returns_not_found_response.frozen | 1 + ...el_lab_run_returns_not_found_response.yaml | 18 + ...rtifact_content_returns_ok_response.frozen | 1 + ..._artifact_content_returns_ok_response.yaml | 18 + ..._project_returns_not_found_response.frozen | 1 + ...ab_project_returns_not_found_response.yaml | 18 + ...del_lab_project_returns_ok_response.frozen | 1 + ...model_lab_project_returns_ok_response.yaml | 18 + ..._lab_run_returns_not_found_response.frozen | 1 + ...el_lab_run_returns_not_found_response.yaml | 18 + ...a_model_lab_run_returns_ok_response.frozen | 1 + ...t_a_model_lab_run_returns_ok_response.yaml | 21 + ...oject_artifacts_returns_ok_response.frozen | 1 + ...project_artifacts_returns_ok_response.yaml | 18 + ...ject_facet_keys_returns_ok_response.frozen | 1 + ...roject_facet_keys_returns_ok_response.yaml | 18 + ...ct_facet_values_returns_ok_response.frozen | 1 + ...ject_facet_values_returns_ok_response.yaml | 18 + ...el_lab_projects_returns_ok_response.frozen | 1 + ...odel_lab_projects_returns_ok_response.yaml | 18 + ...b_run_artifacts_returns_ok_response.frozen | 1 + ...lab_run_artifacts_returns_ok_response.yaml | 18 + ..._run_facet_keys_returns_ok_response.frozen | 1 + ...ab_run_facet_keys_returns_ok_response.yaml | 18 + ...un_facet_values_returns_ok_response.frozen | 1 + ..._run_facet_values_returns_ok_response.yaml | 18 + ..._model_lab_runs_returns_ok_response.frozen | 1 + ...st_model_lab_runs_returns_ok_response.yaml | 26 + ...lab_run_returns_no_content_response.frozen | 1 + ...l_lab_run_returns_no_content_response.yaml | 30 + ..._lab_run_returns_not_found_response.frozen | 1 + ...el_lab_run_returns_not_found_response.yaml | 18 + ...project_returns_no_content_response.frozen | 1 + ...b_project_returns_no_content_response.yaml | 30 + ..._project_returns_not_found_response.frozen | 1 + ...ab_project_returns_not_found_response.yaml | 18 + ...lab_run_returns_no_content_response.frozen | 1 + ...l_lab_run_returns_no_content_response.yaml | 16 + ...project_returns_no_content_response.frozen | 1 + ...b_project_returns_no_content_response.yaml | 16 + tests/v2/features/case_management.feature | 852 --- .../case_management_attribute.feature | 30 - .../v2/features/case_management_type.feature | 27 - tests/v2/features/model_lab_api.feature | 359 ++ tests/v2/features/undo.json | 378 +- 273 files changed, 6150 insertions(+), 12217 deletions(-) delete mode 100644 examples/v2/case-management-attribute/UpdateCustomAttributeConfig.py delete mode 100644 examples/v2/case-management-type/UpdateCaseType.py delete mode 100644 examples/v2/case-management/AddCaseInsights.py delete mode 100644 examples/v2/case-management/AggregateCases.py delete mode 100644 examples/v2/case-management/BulkUpdateCases.py delete mode 100644 examples/v2/case-management/CountCases.py delete mode 100644 examples/v2/case-management/CreateCaseAutomationRule.py delete mode 100644 examples/v2/case-management/CreateCaseLink.py delete mode 100644 examples/v2/case-management/CreateCaseView.py delete mode 100644 examples/v2/case-management/CreateMaintenanceWindow.py delete mode 100644 examples/v2/case-management/DeleteCaseAutomationRule.py delete mode 100644 examples/v2/case-management/DeleteCaseLink.py delete mode 100644 examples/v2/case-management/DeleteCaseView.py delete mode 100644 examples/v2/case-management/DeleteMaintenanceWindow.py delete mode 100644 examples/v2/case-management/DisableCaseAutomationRule.py delete mode 100644 examples/v2/case-management/EnableCaseAutomationRule.py delete mode 100644 examples/v2/case-management/FavoriteCaseProject.py delete mode 100644 examples/v2/case-management/GetCaseAutomationRule.py delete mode 100644 examples/v2/case-management/GetCaseView.py delete mode 100644 examples/v2/case-management/ListCaseAutomationRules.py delete mode 100644 examples/v2/case-management/ListCaseLinks.py delete mode 100644 examples/v2/case-management/ListCaseTimeline.py delete mode 100644 examples/v2/case-management/ListCaseViews.py delete mode 100644 examples/v2/case-management/ListCaseWatchers.py delete mode 100644 examples/v2/case-management/ListMaintenanceWindows.py delete mode 100644 examples/v2/case-management/ListUserCaseProjectFavorites.py delete mode 100644 examples/v2/case-management/RemoveCaseInsights.py delete mode 100644 examples/v2/case-management/UnfavoriteCaseProject.py delete mode 100644 examples/v2/case-management/UnwatchCase.py delete mode 100644 examples/v2/case-management/UpdateCaseAutomationRule.py delete mode 100644 examples/v2/case-management/UpdateCaseComment.py delete mode 100644 examples/v2/case-management/UpdateCaseDueDate.py delete mode 100644 examples/v2/case-management/UpdateCaseResolvedReason.py delete mode 100644 examples/v2/case-management/UpdateCaseView.py delete mode 100644 examples/v2/case-management/UpdateMaintenanceWindow.py delete mode 100644 examples/v2/case-management/WatchCase.py create mode 100644 examples/v2/model-lab-api/DeleteModelLabRun.py create mode 100644 examples/v2/model-lab-api/GetModelLabArtifactContent.py create mode 100644 examples/v2/model-lab-api/GetModelLabArtifactContent_2858422658.py create mode 100644 examples/v2/model-lab-api/GetModelLabProject.py create mode 100644 examples/v2/model-lab-api/GetModelLabRun.py create mode 100644 examples/v2/model-lab-api/ListModelLabProjectArtifacts.py create mode 100644 examples/v2/model-lab-api/ListModelLabProjectFacetKeys.py create mode 100644 examples/v2/model-lab-api/ListModelLabProjectFacetValues.py create mode 100644 examples/v2/model-lab-api/ListModelLabProjects.py create mode 100644 examples/v2/model-lab-api/ListModelLabRunArtifacts.py create mode 100644 examples/v2/model-lab-api/ListModelLabRunFacetKeys.py create mode 100644 examples/v2/model-lab-api/ListModelLabRunFacetValues.py create mode 100644 examples/v2/model-lab-api/ListModelLabRuns.py create mode 100644 examples/v2/model-lab-api/PinModelLabRun.py create mode 100644 examples/v2/model-lab-api/StarModelLabProject.py create mode 100644 examples/v2/model-lab-api/UnpinModelLabRun.py create mode 100644 examples/v2/model-lab-api/UnstarModelLabProject.py create mode 100644 examples/v2/model-lab-api/UnstarModelLabProject_931927092.py create mode 100644 src/datadog_api_client/v2/api/model_lab_api_api.py delete mode 100644 src/datadog_api_client/v2/model/automation_rule.py delete mode 100644 src/datadog_api_client/v2/model/automation_rule_action.py delete mode 100644 src/datadog_api_client/v2/model/automation_rule_action_data.py delete mode 100644 src/datadog_api_client/v2/model/automation_rule_action_type.py delete mode 100644 src/datadog_api_client/v2/model/automation_rule_attributes.py delete mode 100644 src/datadog_api_client/v2/model/automation_rule_create.py delete mode 100644 src/datadog_api_client/v2/model/automation_rule_create_attributes.py delete mode 100644 src/datadog_api_client/v2/model/automation_rule_relationships.py delete mode 100644 src/datadog_api_client/v2/model/automation_rule_response.py delete mode 100644 src/datadog_api_client/v2/model/automation_rule_trigger.py delete mode 100644 src/datadog_api_client/v2/model/automation_rule_trigger_data.py delete mode 100644 src/datadog_api_client/v2/model/automation_rule_trigger_type.py delete mode 100644 src/datadog_api_client/v2/model/automation_rule_update.py delete mode 100644 src/datadog_api_client/v2/model/automation_rule_update_request.py delete mode 100644 src/datadog_api_client/v2/model/automation_rules_response.py delete mode 100644 src/datadog_api_client/v2/model/case_aggregate_group.py delete mode 100644 src/datadog_api_client/v2/model/case_aggregate_group_by.py delete mode 100644 src/datadog_api_client/v2/model/case_aggregate_request.py delete mode 100644 src/datadog_api_client/v2/model/case_aggregate_request_attributes.py delete mode 100644 src/datadog_api_client/v2/model/case_aggregate_request_data.py delete mode 100644 src/datadog_api_client/v2/model/case_aggregate_response.py delete mode 100644 src/datadog_api_client/v2/model/case_aggregate_response_attributes.py delete mode 100644 src/datadog_api_client/v2/model/case_aggregate_response_data.py delete mode 100644 src/datadog_api_client/v2/model/case_automation_rule_state.py delete mode 100644 src/datadog_api_client/v2/model/case_bulk_action_type.py delete mode 100644 src/datadog_api_client/v2/model/case_bulk_update_request.py delete mode 100644 src/datadog_api_client/v2/model/case_bulk_update_request_attributes.py delete mode 100644 src/datadog_api_client/v2/model/case_bulk_update_request_data.py delete mode 100644 src/datadog_api_client/v2/model/case_count_group.py delete mode 100644 src/datadog_api_client/v2/model/case_count_response.py delete mode 100644 src/datadog_api_client/v2/model/case_count_response_attributes.py delete mode 100644 src/datadog_api_client/v2/model/case_count_response_data.py delete mode 100644 src/datadog_api_client/v2/model/case_insight.py delete mode 100644 src/datadog_api_client/v2/model/case_insight_type.py delete mode 100644 src/datadog_api_client/v2/model/case_insights_attributes.py delete mode 100644 src/datadog_api_client/v2/model/case_insights_data.py delete mode 100644 src/datadog_api_client/v2/model/case_link.py delete mode 100644 src/datadog_api_client/v2/model/case_link_attributes.py delete mode 100644 src/datadog_api_client/v2/model/case_link_create.py delete mode 100644 src/datadog_api_client/v2/model/case_type_update.py delete mode 100644 src/datadog_api_client/v2/model/case_update_comment.py delete mode 100644 src/datadog_api_client/v2/model/case_update_comment_attributes.py delete mode 100644 src/datadog_api_client/v2/model/case_update_comment_request.py delete mode 100644 src/datadog_api_client/v2/model/case_update_due_date.py delete mode 100644 src/datadog_api_client/v2/model/case_update_due_date_request.py delete mode 100644 src/datadog_api_client/v2/model/case_update_resolved_reason.py delete mode 100644 src/datadog_api_client/v2/model/case_update_resolved_reason_attributes.py delete mode 100644 src/datadog_api_client/v2/model/case_update_resolved_reason_request.py delete mode 100644 src/datadog_api_client/v2/model/case_view.py delete mode 100644 src/datadog_api_client/v2/model/case_view_attributes.py delete mode 100644 src/datadog_api_client/v2/model/case_view_create.py delete mode 100644 src/datadog_api_client/v2/model/case_view_create_attributes.py delete mode 100644 src/datadog_api_client/v2/model/case_view_create_request.py delete mode 100644 src/datadog_api_client/v2/model/case_view_relationships.py delete mode 100644 src/datadog_api_client/v2/model/case_view_response.py delete mode 100644 src/datadog_api_client/v2/model/case_view_update.py delete mode 100644 src/datadog_api_client/v2/model/case_view_update_attributes.py delete mode 100644 src/datadog_api_client/v2/model/case_views_response.py delete mode 100644 src/datadog_api_client/v2/model/case_watcher.py delete mode 100644 src/datadog_api_client/v2/model/case_watcher_relationships.py delete mode 100644 src/datadog_api_client/v2/model/case_watcher_user_relationship.py delete mode 100644 src/datadog_api_client/v2/model/case_watchers_response.py delete mode 100644 src/datadog_api_client/v2/model/custom_attribute_config_update.py delete mode 100644 src/datadog_api_client/v2/model/custom_attribute_config_update_attributes.py delete mode 100644 src/datadog_api_client/v2/model/custom_attribute_config_update_request.py delete mode 100644 src/datadog_api_client/v2/model/custom_attribute_type_data.py delete mode 100644 src/datadog_api_client/v2/model/maintenance_window.py delete mode 100644 src/datadog_api_client/v2/model/maintenance_window_attributes.py delete mode 100644 src/datadog_api_client/v2/model/maintenance_window_create.py delete mode 100644 src/datadog_api_client/v2/model/maintenance_window_create_attributes.py delete mode 100644 src/datadog_api_client/v2/model/maintenance_window_resource_type.py delete mode 100644 src/datadog_api_client/v2/model/maintenance_window_response.py delete mode 100644 src/datadog_api_client/v2/model/maintenance_window_update.py delete mode 100644 src/datadog_api_client/v2/model/maintenance_window_update_attributes.py delete mode 100644 src/datadog_api_client/v2/model/maintenance_window_update_request.py delete mode 100644 src/datadog_api_client/v2/model/maintenance_windows_response.py create mode 100644 src/datadog_api_client/v2/model/model_lab_artifact_info.py create mode 100644 src/datadog_api_client/v2/model/model_lab_artifact_object_info.py create mode 100644 src/datadog_api_client/v2/model/model_lab_facet_keys_attributes.py create mode 100644 src/datadog_api_client/v2/model/model_lab_facet_keys_data.py rename src/datadog_api_client/v2/model/{case_link_create_request.py => model_lab_facet_keys_response.py} (55%) rename src/datadog_api_client/v2/model/{case_watcher_resource_type.py => model_lab_facet_keys_type.py} (63%) create mode 100644 src/datadog_api_client/v2/model/model_lab_facet_type.py create mode 100644 src/datadog_api_client/v2/model/model_lab_facet_values_attributes.py create mode 100644 src/datadog_api_client/v2/model/model_lab_facet_values_data.py rename src/datadog_api_client/v2/model/{maintenance_window_create_request.py => model_lab_facet_values_response.py} (54%) rename src/datadog_api_client/v2/model/{case_aggregate_resource_type.py => model_lab_facet_values_type.py} (62%) create mode 100644 src/datadog_api_client/v2/model/model_lab_metric_stat_range.py create mode 100644 src/datadog_api_client/v2/model/model_lab_metric_summary.py rename src/datadog_api_client/v2/model/{case_update_due_date_attributes.py => model_lab_numeric_range.py} (54%) rename src/datadog_api_client/v2/model/{case_type_update_request.py => model_lab_page_meta.py} (51%) create mode 100644 src/datadog_api_client/v2/model/model_lab_page_meta_page.py create mode 100644 src/datadog_api_client/v2/model/model_lab_pagination_links.py rename src/datadog_api_client/v2/model/{case_links_response.py => model_lab_project_artifacts_attributes.py} (53%) create mode 100644 src/datadog_api_client/v2/model/model_lab_project_artifacts_data.py rename src/datadog_api_client/v2/model/{case_insights_request.py => model_lab_project_artifacts_response.py} (51%) create mode 100644 src/datadog_api_client/v2/model/model_lab_project_artifacts_type.py create mode 100644 src/datadog_api_client/v2/model/model_lab_project_attributes.py create mode 100644 src/datadog_api_client/v2/model/model_lab_project_data.py rename src/datadog_api_client/v2/model/{case_bulk_resource_type.py => model_lab_project_facet_type.py} (65%) rename src/datadog_api_client/v2/model/{case_link_response.py => model_lab_project_response.py} (55%) rename src/datadog_api_client/v2/model/{case_link_resource_type.py => model_lab_project_type.py} (64%) create mode 100644 src/datadog_api_client/v2/model/model_lab_projects_response.py create mode 100644 src/datadog_api_client/v2/model/model_lab_run_artifacts_attributes.py create mode 100644 src/datadog_api_client/v2/model/model_lab_run_artifacts_data.py rename src/datadog_api_client/v2/model/{automation_rule_create_request.py => model_lab_run_artifacts_response.py} (53%) rename src/datadog_api_client/v2/model/{case_automation_rule_resource_type.py => model_lab_run_artifacts_type.py} (62%) create mode 100644 src/datadog_api_client/v2/model/model_lab_run_attributes.py create mode 100644 src/datadog_api_client/v2/model/model_lab_run_data.py rename src/datadog_api_client/v2/model/{case_count_group_value.py => model_lab_run_param.py} (60%) rename src/datadog_api_client/v2/model/{case_view_update_request.py => model_lab_run_response.py} (58%) create mode 100644 src/datadog_api_client/v2/model/model_lab_run_status.py rename src/datadog_api_client/v2/model/{case_view_resource_type.py => model_lab_run_type.py} (67%) create mode 100644 src/datadog_api_client/v2/model/model_lab_runs_response.py rename src/datadog_api_client/v2/model/{custom_attribute_select_option.py => model_lab_tag.py} (67%) delete mode 100644 src/datadog_api_client/v2/model/project_favorite.py delete mode 100644 src/datadog_api_client/v2/model/project_favorite_resource_type.py delete mode 100644 src/datadog_api_client/v2/model/project_favorites_response.py create mode 100644 tests/v2/cassettes/test_scenarios/test_delete_a_model_lab_run_returns_no_content_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_delete_a_model_lab_run_returns_no_content_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_delete_a_model_lab_run_returns_not_found_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_delete_a_model_lab_run_returns_not_found_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_download_artifact_content_returns_ok_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_download_artifact_content_returns_ok_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_get_a_model_lab_project_returns_not_found_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_get_a_model_lab_project_returns_not_found_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_get_a_model_lab_project_returns_ok_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_get_a_model_lab_project_returns_ok_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_get_a_model_lab_run_returns_not_found_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_get_a_model_lab_run_returns_not_found_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_get_a_model_lab_run_returns_ok_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_get_a_model_lab_run_returns_ok_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_list_model_lab_project_artifacts_returns_ok_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_list_model_lab_project_artifacts_returns_ok_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_list_model_lab_project_facet_keys_returns_ok_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_list_model_lab_project_facet_keys_returns_ok_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_list_model_lab_project_facet_values_returns_ok_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_list_model_lab_project_facet_values_returns_ok_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_list_model_lab_projects_returns_ok_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_list_model_lab_projects_returns_ok_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_list_model_lab_run_artifacts_returns_ok_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_list_model_lab_run_artifacts_returns_ok_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_list_model_lab_run_facet_keys_returns_ok_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_list_model_lab_run_facet_keys_returns_ok_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_list_model_lab_run_facet_values_returns_ok_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_list_model_lab_run_facet_values_returns_ok_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_list_model_lab_runs_returns_ok_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_list_model_lab_runs_returns_ok_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_pin_a_model_lab_run_returns_no_content_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_pin_a_model_lab_run_returns_no_content_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_pin_a_model_lab_run_returns_not_found_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_pin_a_model_lab_run_returns_not_found_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_star_a_model_lab_project_returns_no_content_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_star_a_model_lab_project_returns_no_content_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_star_a_model_lab_project_returns_not_found_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_star_a_model_lab_project_returns_not_found_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_unpin_a_model_lab_run_returns_no_content_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_unpin_a_model_lab_run_returns_no_content_response.yaml create mode 100644 tests/v2/cassettes/test_scenarios/test_unstar_a_model_lab_project_returns_no_content_response.frozen create mode 100644 tests/v2/cassettes/test_scenarios/test_unstar_a_model_lab_project_returns_no_content_response.yaml create mode 100644 tests/v2/features/model_lab_api.feature diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index 6def5f9367..dc5063005b 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -249,7 +249,7 @@ components: schema: $ref: "#/components/schemas/CaseSortableField" CaseTypeIDPathParameter: - description: The UUID of the case type. + description: Case type's UUID example: "f98a5a5b-e0ff-45d4-b2f5-afe6e74de505" in: path name: case_type_id @@ -257,7 +257,7 @@ components: schema: type: string CellIDPathParameter: - description: The UUID of the timeline cell (comment) to update. + description: Timeline cell's UUID example: "f98a5a5b-e0ff-45d4-b2f5-afe6e74de504" in: path name: cell_id @@ -853,22 +853,6 @@ components: required: true schema: type: string - LinkIDPathParameter: - description: "The UUID of the case link." - in: path - name: link_id - required: true - schema: - example: "804cd682-55f6-4541-ab00-b608b282ea7d" - type: string - MaintenanceWindowIDPathParameter: - description: The UUID of the maintenance window. - example: "a1b2c3d4-e5f6-7890-abcd-ef1234567890" - in: path - name: maintenance_window_id - required: true - schema: - type: string MembershipSort: description: >- Field to sort memberships by. Supported values: `name`, `uuid`, `-name`, `-uuid`. Defaults to `uuid`. @@ -948,6 +932,24 @@ components: required: false schema: type: string + ModelLabProjectIDPathParameter: + description: The ID of the Model Lab project. + in: path + name: project_id + required: true + schema: + example: 1 + format: int64 + type: integer + ModelLabRunIDPathParameter: + description: The ID of the Model Lab run. + in: path + name: run_id + required: true + schema: + example: 42 + format: int64 + type: integer NDMPageNumber: description: Specific page number to return. Defaults to 0. in: query @@ -1439,14 +1441,6 @@ components: schema: example: "1" type: string - RuleIDPathParameter: - description: The UUID of the automation rule. - example: "e6773723-fe58-49ff-9975-dff00f14e28d" - in: path - name: rule_id - required: true - schema: - type: string RuleId: description: The ID of the rule. in: path @@ -1625,22 +1619,6 @@ components: schema: example: "00000000-0000-9999-0000-000000000000" type: string - UserUUIDPathParameter: - description: The UUID of the user to add or remove as a watcher. - example: "8146583c-0b5f-11ec-abf8-da7ad0900001" - in: path - name: user_uuid - required: true - schema: - type: string - ViewIDPathParameter: - description: The UUID of the case view. - example: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - in: path - name: view_id - required: true - schema: - type: string WorkflowId: description: The ID of the workflow. in: path @@ -7648,219 +7626,6 @@ components: description: Whether to auto-transition cases when self-assigned. type: boolean type: object - AutomationRule: - description: An automation rule that executes an action (such as running a Datadog workflow or assigning an AI agent) when a specified case event occurs within a project. - properties: - attributes: - $ref: "#/components/schemas/AutomationRuleAttributes" - id: - description: Automation rule identifier. - example: "e6773723-fe58-49ff-9975-dff00f14e28d" - type: string - relationships: - $ref: "#/components/schemas/AutomationRuleRelationships" - type: - $ref: "#/components/schemas/CaseAutomationRuleResourceType" - required: - - id - - type - - attributes - type: object - AutomationRuleAction: - description: Defines what happens when the rule triggers. Combines an action type with action-specific configuration data. - properties: - data: - $ref: "#/components/schemas/AutomationRuleActionData" - type: - $ref: "#/components/schemas/AutomationRuleActionType" - required: - - type - - data - type: object - AutomationRuleActionData: - description: Configuration for the action to execute, dependent on the action type. - properties: - agent_type: - description: The type of AI agent to assign. Required when the action type is `assign_agent`. - type: string - assigned_agent_id: - description: The identifier of the AI agent to assign to the case. Required when the action type is `assign_agent`. - type: string - handle: - description: The handle of the Datadog workflow to execute. Required when the action type is `execute_workflow`. - example: "workflow-handle-123" - type: string - type: object - AutomationRuleActionType: - description: The type of automated action to perform when the rule triggers. `execute_workflow` runs a Datadog workflow; `assign_agent` assigns an AI agent to the case. - enum: - - execute_workflow - - assign_agent - example: execute_workflow - type: string - x-enum-varnames: - - EXECUTE_WORKFLOW - - ASSIGN_AGENT - AutomationRuleAttributes: - description: Core attributes of an automation rule, including its name, trigger condition, action to execute, and current state. - properties: - action: - $ref: "#/components/schemas/AutomationRuleAction" - created_at: - description: Timestamp when the automation rule was created. - example: "2024-01-01T00:00:00.000Z" - format: date-time - readOnly: true - type: string - modified_at: - description: Timestamp when the automation rule was last modified. - format: date-time - readOnly: true - type: string - name: - description: A human-readable name for the automation rule, used to identify the rule in the UI and API responses. - example: "Auto-assign workflow" - type: string - state: - $ref: "#/components/schemas/CaseAutomationRuleState" - trigger: - $ref: "#/components/schemas/AutomationRuleTrigger" - required: - - name - - trigger - - action - - state - - created_at - type: object - AutomationRuleCreate: - description: Data object for creating an automation rule. - properties: - attributes: - $ref: "#/components/schemas/AutomationRuleCreateAttributes" - type: - $ref: "#/components/schemas/CaseAutomationRuleResourceType" - required: - - type - - attributes - type: object - AutomationRuleCreateAttributes: - description: Attributes required to create an automation rule. - properties: - action: - $ref: "#/components/schemas/AutomationRuleAction" - name: - description: Name of the automation rule. - example: "Auto-assign workflow" - type: string - state: - $ref: "#/components/schemas/CaseAutomationRuleState" - trigger: - $ref: "#/components/schemas/AutomationRuleTrigger" - required: - - name - - trigger - - action - type: object - AutomationRuleCreateRequest: - description: Request payload for creating an automation rule. - properties: - data: - $ref: "#/components/schemas/AutomationRuleCreate" - required: - - data - type: object - AutomationRuleRelationships: - description: Related resources for the automation rule, including the users who created and last modified it. - properties: - created_by: - $ref: "#/components/schemas/NullableUserRelationship" - modified_by: - $ref: "#/components/schemas/NullableUserRelationship" - type: object - AutomationRuleResponse: - description: Response containing a single automation rule. - properties: - data: - $ref: "#/components/schemas/AutomationRule" - required: - - data - type: object - AutomationRuleTrigger: - description: Defines when the rule activates. Combines a trigger type (the case event to listen for) with optional trigger data (conditions that narrow when the trigger fires). - properties: - data: - $ref: "#/components/schemas/AutomationRuleTriggerData" - type: - $ref: "#/components/schemas/AutomationRuleTriggerType" - required: - - type - type: object - AutomationRuleTriggerData: - description: Additional configuration for the trigger, dependent on the trigger type. For `status_transitioned` triggers, specify `from_status_name` and `to_status_name`. For `attribute_value_changed` triggers, specify `field` and `change_type`. - properties: - approval_type: - description: The approval outcome to match. Used with `case_review_approved` triggers. - type: string - change_type: - description: "The kind of attribute change to match. Allowed values: `VALUE_ADDED`, `VALUE_DELETED`, `ANY_CHANGES`. Used with `attribute_value_changed` triggers." - type: string - field: - description: The case attribute field name to monitor for changes. Used with `attribute_value_changed` triggers. - type: string - from_status_name: - description: The originating status name. Used with `status_transitioned` triggers to match transitions from this status. - type: string - to_status_name: - description: The destination status name. Used with `status_transitioned` triggers to match transitions to this status. - type: string - type: object - AutomationRuleTriggerType: - description: The case event that activates the automation rule. - enum: - - case_created - - status_transitioned - - attribute_value_changed - - event_correlation_signal_correlated - - case_review_approved - - comment_added - example: case_created - type: string - x-enum-varnames: - - CASE_CREATED - - STATUS_TRANSITIONED - - ATTRIBUTE_VALUE_CHANGED - - EVENT_CORRELATION_SIGNAL_CORRELATED - - CASE_REVIEW_APPROVED - - COMMENT_ADDED - AutomationRuleUpdate: - description: Data object for updating an automation rule. - properties: - attributes: - $ref: "#/components/schemas/AutomationRuleCreateAttributes" - type: - $ref: "#/components/schemas/CaseAutomationRuleResourceType" - required: - - type - type: object - AutomationRuleUpdateRequest: - description: Request payload for updating an automation rule. - properties: - data: - $ref: "#/components/schemas/AutomationRuleUpdate" - required: - - data - type: object - AutomationRulesResponse: - description: Response containing a list of automation rules for a project. - properties: - data: - description: List of automation rules. - items: - $ref: "#/components/schemas/AutomationRule" - type: array - required: - - data - type: object AwsAccountId: description: The ID of the AWS account. example: "123456789012" @@ -11125,128 +10890,6 @@ components: - IN_PROGRESS - COMPLETED - FAILED - CaseAggregateGroup: - description: A single group within the aggregation results, containing the group key and its associated count values. - properties: - group: - description: "The value of the field being grouped on (for example, `OPEN` when grouping by status)." - example: "OPEN" - type: string - value: - description: The count of cases in this group. - example: - - 42.0 - items: - format: double - type: number - type: array - required: - - group - - value - type: object - CaseAggregateGroupBy: - description: Configuration for grouping aggregated results by one or more case fields. - properties: - groups: - description: Fields to group by. - example: - - "status" - items: - type: string - type: array - limit: - description: Maximum number of groups to return. - example: 14 - format: int32 - maximum: 1000 - type: integer - required: - - groups - - limit - type: object - CaseAggregateRequest: - description: Request payload for aggregating case counts with grouping. Use this to get faceted breakdowns of cases (for example, count of cases grouped by priority and status). - properties: - data: - $ref: "#/components/schemas/CaseAggregateRequestData" - required: - - data - type: object - CaseAggregateRequestAttributes: - description: Attributes for the aggregation request, including the search query and grouping configuration. - properties: - group_by: - $ref: "#/components/schemas/CaseAggregateGroupBy" - query_filter: - description: "A search query to filter which cases are included in the aggregation. Uses the same syntax as the Case Management search bar." - example: "service:case-api" - type: string - required: - - query_filter - - group_by - type: object - CaseAggregateRequestData: - description: Data object wrapping the aggregation query type and attributes. - properties: - attributes: - $ref: "#/components/schemas/CaseAggregateRequestAttributes" - type: - $ref: "#/components/schemas/CaseAggregateResourceType" - required: - - attributes - - type - type: object - CaseAggregateResourceType: - description: JSON:API resource type for case aggregation requests. - enum: - - aggregate - example: aggregate - type: string - x-enum-varnames: - - AGGREGATE - CaseAggregateResponse: - description: Response containing aggregated case counts grouped by the requested fields. - properties: - data: - $ref: "#/components/schemas/CaseAggregateResponseData" - required: - - data - type: object - CaseAggregateResponseAttributes: - description: Attributes of the aggregation result, including the total count across all groups and the per-group breakdowns. - properties: - groups: - description: Aggregated groups. - items: - $ref: "#/components/schemas/CaseAggregateGroup" - type: array - total: - description: Total count of aggregated cases. - example: 100.0 - format: double - type: number - required: - - total - - groups - type: object - CaseAggregateResponseData: - description: Data object containing the aggregation results, including total count and per-group breakdowns. - properties: - attributes: - $ref: "#/components/schemas/CaseAggregateResponseAttributes" - id: - description: Aggregate response identifier. - example: "agg-result-001" - type: string - type: - description: Aggregate resource type. - example: "aggregate" - type: string - required: - - type - - id - - attributes - type: object CaseAssign: description: Case assign properties: @@ -11339,102 +10982,6 @@ components: example: "3b010bde-09ce-4449-b745-71dd5f861963" type: string type: object - CaseAutomationRuleResourceType: - default: rule - description: JSON:API resource type for case automation rules. - enum: - - rule - example: rule - type: string - x-enum-varnames: - - RULE - CaseAutomationRuleState: - description: Whether the automation rule is active. Enabled rules trigger on matching case events; disabled rules are inactive but preserve their configuration. - enum: - - ENABLED - - DISABLED - example: ENABLED - type: string - x-enum-varnames: - - ENABLED - - DISABLED - CaseBulkActionType: - description: "The type of action to apply in a bulk update. Allowed values are `priority`, `status`, `assign`, `unassign`, `archive`, `unarchive`, `jira`, `servicenow`, `linear`, `update_project`." - enum: - - priority - - status - - assign - - unassign - - archive - - unarchive - - jira - - servicenow - - linear - - update_project - example: priority - type: string - x-enum-varnames: - - PRIORITY - - STATUS - - ASSIGN - - UNASSIGN - - ARCHIVE - - UNARCHIVE - - JIRA - - SERVICENOW - - LINEAR - - UPDATE_PROJECT - CaseBulkResourceType: - description: JSON:API resource type for bulk case operations. - enum: - - bulk - example: bulk - type: string - x-enum-varnames: - - BULK - CaseBulkUpdateRequest: - description: Request payload for applying a single action (such as changing priority, status, or assignment) to multiple cases at once. - properties: - data: - $ref: "#/components/schemas/CaseBulkUpdateRequestData" - required: - - data - type: object - CaseBulkUpdateRequestAttributes: - description: Attributes for the bulk update, specifying which cases to update and the action to apply. - properties: - case_ids: - description: An array of case identifiers to apply the bulk action to. - example: - - "case-id-1" - - "case-id-2" - items: - type: string - type: array - payload: - additionalProperties: - type: string - description: A key-value map of action-specific parameters. The required keys depend on the action type (for example, `priority` for the priority action, `assignee_id` for assign). - example: - priority: "P1" - type: object - type: - $ref: "#/components/schemas/CaseBulkActionType" - required: - - case_ids - - type - type: object - CaseBulkUpdateRequestData: - description: Data object wrapping the bulk update type and attributes. - properties: - attributes: - $ref: "#/components/schemas/CaseBulkUpdateRequestAttributes" - type: - $ref: "#/components/schemas/CaseBulkResourceType" - required: - - attributes - - type - type: object CaseComment: description: Case comment properties: @@ -11464,75 +11011,6 @@ components: required: - data type: object - CaseCountGroup: - description: A facet group containing counts broken down by the distinct values of a case field (for example, status or priority). - properties: - group: - description: "The name of the field being grouped on (for example, `status` or `priority`)." - example: "status" - type: string - group_values: - description: Values within this group. - items: - $ref: "#/components/schemas/CaseCountGroupValue" - type: array - required: - - group - - group_values - type: object - CaseCountGroupValue: - description: A single value within a count group, representing the number of cases with that specific field value. - properties: - count: - description: Count of cases for this value. - example: 42 - format: int64 - type: integer - value: - description: The group value. - example: "OPEN" - type: string - required: - - value - - count - type: object - CaseCountResponse: - description: Response containing the total number of cases matching a query, optionally grouped by specified fields. - properties: - data: - $ref: "#/components/schemas/CaseCountResponseData" - required: - - data - type: object - CaseCountResponseAttributes: - description: Attributes for the count response, including the total count and optional facet breakdowns. - properties: - groups: - description: List of facet groups, one per field specified in `group_bys`. - items: - $ref: "#/components/schemas/CaseCountGroup" - type: array - required: - - groups - type: object - CaseCountResponseData: - description: Data object containing the count results, including per-field group breakdowns. - properties: - attributes: - $ref: "#/components/schemas/CaseCountResponseAttributes" - id: - description: Count response identifier. - example: "count-result-001" - type: string - type: - description: Count resource type. - example: "count" - type: string - required: - - type - - id - - attributes - type: object CaseCreate: description: Case creation data properties: @@ -11616,86 +11094,6 @@ components: required: - data type: object - CaseInsight: - description: A reference to an external Datadog resource that provides investigative context for a case, such as a security signal, monitor alert, error tracking issue, or incident. - properties: - ref: - description: "The URL path or deep link to the insight resource within Datadog (for example, `/monitors/12345?q=total`)." - example: "/monitors/12345?q=total" - type: string - resource_id: - description: The unique identifier of the referenced Datadog resource (for example, a monitor ID, incident ID, or signal ID). - example: "12345" - type: string - type: - $ref: "#/components/schemas/CaseInsightType" - required: - - type - - ref - - resource_id - type: object - CaseInsightType: - description: The type of Datadog resource linked to the case as contextual evidence. Each type corresponds to a different Datadog product signal (for example, a security finding, a monitor alert, or an incident). - enum: - - SECURITY_SIGNAL - - MONITOR - - EVENT_CORRELATION - - ERROR_TRACKING - - CLOUD_COST_RECOMMENDATION - - INCIDENT - - SENSITIVE_DATA_SCANNER_ISSUE - - EVENT - - WATCHDOG_STORY - - WIDGET - - SECURITY_FINDING - - INSIGHT_SCORECARD_CAMPAIGN - - RESOURCE_POLICY - - APM_RECOMMENDATION - - SCM_URL - - PROFILING_DOWNSIZING_EXPERIMENT - example: SECURITY_SIGNAL - type: string - x-enum-varnames: - - SECURITY_SIGNAL - - MONITOR - - EVENT_CORRELATION - - ERROR_TRACKING - - CLOUD_COST_RECOMMENDATION - - INCIDENT - - SENSITIVE_DATA_SCANNER_ISSUE - - EVENT - - WATCHDOG_STORY - - WIDGET - - SECURITY_FINDING - - INSIGHT_SCORECARD_CAMPAIGN - - RESOURCE_POLICY - - APM_RECOMMENDATION - - SCM_URL - - PROFILING_DOWNSIZING_EXPERIMENT - CaseInsightsAttributes: - description: Attributes for adding or removing insights from a case. - properties: - insights: - description: Array of insights to add to or remove from a case. - items: - $ref: "#/components/schemas/CaseInsight" - maxItems: 100 - minItems: 1 - type: array - required: - - insights - type: object - CaseInsightsData: - description: Data object containing the insights to add or remove. - properties: - attributes: - $ref: "#/components/schemas/CaseInsightsAttributes" - type: - $ref: "#/components/schemas/CaseResourceType" - required: - - type - - attributes - type: object CaseInsightsItems: description: An insight of the case. properties: @@ -11712,106 +11110,6 @@ components: example: "SECURITY_FINDING" type: string type: object - CaseInsightsRequest: - description: Request payload for adding or removing case insights. - properties: - data: - $ref: "#/components/schemas/CaseInsightsData" - required: - - data - type: object - CaseLink: - description: "A directional link representing a relationship between two entities. At least one entity must be a case." - properties: - attributes: - $ref: "#/components/schemas/CaseLinkAttributes" - id: - description: "The case link identifier." - example: "804cd682-55f6-4541-ab00-b608b282ea7d" - type: string - type: - $ref: "#/components/schemas/CaseLinkResourceType" - required: - - id - - type - - attributes - type: object - CaseLinkAttributes: - description: "Attributes describing a directional relationship between two entities (cases, incidents, or pages)." - properties: - child_entity_id: - description: "The UUID of the child (target) entity in the relationship." - example: "4417921d-0866-4a38-822c-6f2a0f65f77d" - type: string - child_entity_type: - description: "The type of the child entity. Allowed values: `CASE`, `INCIDENT`, `PAGE`, `AGENT_CONVERSATION`." - example: "CASE" - type: string - parent_entity_id: - description: "The UUID of the parent (source) entity in the relationship." - example: "bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f" - type: string - parent_entity_type: - description: "The type of the parent entity. Allowed values: `CASE`, `INCIDENT`, `PAGE`, `AGENT_CONVERSATION`." - example: "CASE" - type: string - relationship: - description: "The type of directional relationship. Allowed values: `RELATES_TO` (bidirectional association), `CAUSES` (parent causes child), `BLOCKS` (parent blocks child), `DUPLICATES` (parent duplicates child), `PARENT_OF` (hierarchical), `SUCCESSOR_OF` (sequence), `ESCALATES_TO` (priority escalation)." - example: "BLOCKS" - type: string - required: - - relationship - - parent_entity_id - - parent_entity_type - - child_entity_id - - child_entity_type - type: object - CaseLinkCreate: - description: "Data object for creating a case link." - properties: - attributes: - $ref: "#/components/schemas/CaseLinkAttributes" - type: - $ref: "#/components/schemas/CaseLinkResourceType" - required: - - type - - attributes - type: object - CaseLinkCreateRequest: - description: "Request payload for creating a link between two entities." - properties: - data: - $ref: "#/components/schemas/CaseLinkCreate" - required: - - data - type: object - CaseLinkResourceType: - description: "JSON:API resource type for case links." - enum: - - link - example: link - type: string - x-enum-varnames: - - LINK - CaseLinkResponse: - description: "Response containing a single case link." - properties: - data: - $ref: "#/components/schemas/CaseLink" - required: - - data - type: object - CaseLinksResponse: - description: "Response containing a list of case links." - properties: - data: - description: "A list of case links." - items: - $ref: "#/components/schemas/CaseLink" - type: array - required: - - data - type: object CaseManagementProject: description: Case management project. properties: @@ -12054,7 +11352,7 @@ components: description: An attribute value. type: string type: array - description: Key-value pairs of case attributes. Each key maps to an array of string values, used for flexible metadata such as labels or tags. + description: The definition of `CaseObjectAttributes` object. type: object CasePriority: default: NOT_DEFINED @@ -12089,7 +11387,7 @@ components: type: object CaseResourceType: default: case - description: JSON:API resource type for cases. + description: Case resource type enum: - case example: case @@ -12169,7 +11467,7 @@ components: x-enum-varnames: - STANDARD CaseTypeCreate: - description: Data object for creating a case type. + description: Case type properties: attributes: $ref: "#/components/schemas/CaseTypeResourceAttributes" @@ -12180,7 +11478,7 @@ components: - type type: object CaseTypeCreateRequest: - description: Request payload for creating a case type. + description: Case type create request properties: data: $ref: "#/components/schemas/CaseTypeCreate" @@ -12188,7 +11486,7 @@ components: - data type: object CaseTypeResource: - description: A case type that defines a classification category for cases. Each case type can have its own custom attributes, statuses, and automation rules. + description: The definition of `CaseType` object. properties: attributes: $ref: "#/components/schemas/CaseTypeResourceAttributes" @@ -12200,24 +11498,24 @@ components: $ref: "#/components/schemas/CaseTypeResourceType" type: object CaseTypeResourceAttributes: - description: "Attributes of a case type, which define a classification category for cases. Organizations use case types to model different workflows (for example, Security Incident, Bug Report, Change Request)." + description: Case Type resource attributes properties: deleted_at: - description: Timestamp when the case type was marked as deleted. A null value indicates the case type is active. + description: Timestamp of when the case type was deleted format: date-time nullable: true readOnly: true type: string description: - description: A detailed description explaining when this case type should be used. + description: Case type description. example: "Investigations done in case management" type: string emoji: - description: An emoji icon representing the case type in the UI. + description: Case type emoji. example: "🕵🏻‍♂️" type: string name: - description: The display name of the case type, shown in the Case Management UI when creating or viewing cases. + description: Case type name. example: "Investigation" type: string required: @@ -12225,7 +11523,7 @@ components: type: object CaseTypeResourceType: default: case_type - description: JSON:API resource type for case types. + description: Case type resource type enum: - case_type example: case_type @@ -12233,31 +11531,13 @@ components: x-enum-varnames: - CASE_TYPE CaseTypeResponse: - description: Response containing a single case type. + description: Case type response properties: data: $ref: "#/components/schemas/CaseTypeResource" type: object - CaseTypeUpdate: - description: Data object for updating a case type. - properties: - attributes: - $ref: "#/components/schemas/CaseTypeResourceAttributes" - type: - $ref: "#/components/schemas/CaseTypeResourceType" - required: - - type - type: object - CaseTypeUpdateRequest: - description: Request payload for updating a case type. - properties: - data: - $ref: "#/components/schemas/CaseTypeUpdate" - required: - - data - type: object CaseTypesResponse: - description: Response containing a list of case types. + description: Case types response. properties: data: description: List of case types @@ -12292,35 +11572,6 @@ components: required: - data type: object - CaseUpdateComment: - description: Data object for updating a case comment. - properties: - attributes: - $ref: "#/components/schemas/CaseUpdateCommentAttributes" - type: - $ref: "#/components/schemas/CaseResourceType" - required: - - type - - attributes - type: object - CaseUpdateCommentAttributes: - description: Attributes for updating a comment. - properties: - comment: - description: The updated comment message. - example: "Updated comment text" - type: string - required: - - comment - type: object - CaseUpdateCommentRequest: - description: Request payload for updating a comment on a case timeline. - properties: - data: - $ref: "#/components/schemas/CaseUpdateComment" - required: - - data - type: object CaseUpdateCustomAttribute: description: Case update custom attribute properties: @@ -12369,35 +11620,6 @@ components: required: - data type: object - CaseUpdateDueDate: - description: Data object for updating a case's due date. - properties: - attributes: - $ref: "#/components/schemas/CaseUpdateDueDateAttributes" - type: - $ref: "#/components/schemas/CaseResourceType" - required: - - attributes - - type - type: object - CaseUpdateDueDateAttributes: - description: Attributes for setting or clearing a case's due date. - properties: - due_date: - description: "The target resolution date for the case, in `YYYY-MM-DD` format. Set to `null` to clear the due date." - example: "2026-12-31" - type: string - required: - - due_date - type: object - CaseUpdateDueDateRequest: - description: Request payload for updating a case's due date. - properties: - data: - $ref: "#/components/schemas/CaseUpdateDueDate" - required: - - data - type: object CaseUpdatePriority: description: Case priority status properties: @@ -12425,35 +11647,6 @@ components: required: - data type: object - CaseUpdateResolvedReason: - description: Data object for updating a case's resolved reason. - properties: - attributes: - $ref: "#/components/schemas/CaseUpdateResolvedReasonAttributes" - type: - $ref: "#/components/schemas/CaseResourceType" - required: - - attributes - - type - type: object - CaseUpdateResolvedReasonAttributes: - description: Attributes for setting the resolution reason on a security case. - properties: - security_resolved_reason: - description: "The reason the security case was resolved (for example, `FALSE_POSITIVE`, `TRUE_POSITIVE`, `BENIGN_POSITIVE`)." - example: "FALSE_POSITIVE" - type: string - required: - - security_resolved_reason - type: object - CaseUpdateResolvedReasonRequest: - description: Request payload for updating the resolution reason on a closed security case. - properties: - data: - $ref: "#/components/schemas/CaseUpdateResolvedReason" - required: - - data - type: object CaseUpdateStatus: description: Case update status properties: @@ -12511,217 +11704,6 @@ components: required: - data type: object - CaseView: - description: A saved case view that provides a filtered, reusable list of cases matching a specific query. Views act as persistent dashboards for monitoring case subsets. - properties: - attributes: - $ref: "#/components/schemas/CaseViewAttributes" - id: - description: The view's identifier. - example: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - type: string - relationships: - $ref: "#/components/schemas/CaseViewRelationships" - type: - $ref: "#/components/schemas/CaseViewResourceType" - required: - - id - - type - - attributes - type: object - CaseViewAttributes: - description: Attributes of a case view, including the filter query and optional notification rule. - properties: - created_at: - description: Timestamp when the view was created. - example: "2024-01-01T00:00:00.000Z" - format: date-time - readOnly: true - type: string - modified_at: - description: Timestamp when the view was last modified. - format: date-time - readOnly: true - type: string - name: - description: A human-readable name for the view, displayed in the Case Management UI. - example: Open bugs - type: string - np_rule_id: - description: The identifier of a notification rule linked to this view. When set, users subscribed to the view receive alerts for matching cases. - type: string - query: - description: "The search query that determines which cases appear in this view. Uses the same syntax as the Case Management search bar (for example, `status:open priority:P1`)." - example: "status:open type:bug" - type: string - required: - - name - - query - - created_at - type: object - CaseViewCreate: - description: Data object for creating a case view. - properties: - attributes: - $ref: "#/components/schemas/CaseViewCreateAttributes" - type: - $ref: "#/components/schemas/CaseViewResourceType" - required: - - type - - attributes - type: object - CaseViewCreateAttributes: - description: Attributes required to create a case view. - properties: - name: - description: The name of the view. - example: Open bugs - type: string - np_rule_id: - description: The identifier of a notification rule linked to this view. When set, users subscribed to the view receive alerts for matching cases. - type: string - project_id: - description: The UUID of the project this view belongs to. Views are scoped to a single project. - example: e555e290-ed65-49bd-ae18-8acbfcf18db7 - type: string - query: - description: The query used to filter cases in this view. - example: "status:open type:bug" - type: string - required: - - name - - query - - project_id - type: object - CaseViewCreateRequest: - description: Request payload for creating a case view. - properties: - data: - $ref: "#/components/schemas/CaseViewCreate" - required: - - data - type: object - CaseViewRelationships: - description: Related resources for the case view, including the creator, last modifier, and associated project. - properties: - created_by: - $ref: "#/components/schemas/NullableUserRelationship" - modified_by: - $ref: "#/components/schemas/NullableUserRelationship" - project: - $ref: "#/components/schemas/ProjectRelationship" - type: object - CaseViewResourceType: - default: view - description: "JSON:API resource type for case views." - enum: - - view - example: view - type: string - x-enum-varnames: - - VIEW - CaseViewResponse: - description: Response containing a single case view. - properties: - data: - $ref: "#/components/schemas/CaseView" - required: - - data - type: object - CaseViewUpdate: - description: Data object for updating a case view. - properties: - attributes: - $ref: "#/components/schemas/CaseViewUpdateAttributes" - type: - $ref: "#/components/schemas/CaseViewResourceType" - required: - - type - type: object - CaseViewUpdateAttributes: - description: Attributes that can be updated on a case view. All fields are optional; only provided fields are changed. - properties: - name: - description: The name of the view. - type: string - np_rule_id: - description: The identifier of a notification rule linked to this view. When set, users subscribed to the view receive alerts for matching cases. - type: string - query: - description: The query used to filter cases in this view. - type: string - type: object - CaseViewUpdateRequest: - description: Request payload for updating a case view. - properties: - data: - $ref: "#/components/schemas/CaseViewUpdate" - required: - - data - type: object - CaseViewsResponse: - description: Response containing a list of case views. - properties: - data: - description: A list of case views. - items: - $ref: "#/components/schemas/CaseView" - type: array - required: - - data - type: object - CaseWatcher: - description: Represents a user who is subscribed to notifications for a case. Watchers receive updates when the case's status, priority, assignee, or comments change. - properties: - id: - description: The primary identifier of the case watcher. - example: "8146583c-0b5f-11ec-abf8-da7ad0900001" - type: string - relationships: - $ref: "#/components/schemas/CaseWatcherRelationships" - type: - $ref: "#/components/schemas/CaseWatcherResourceType" - required: - - id - - type - - relationships - type: object - CaseWatcherRelationships: - description: Relationships for a case watcher, linking to the underlying user resource. - properties: - user: - $ref: "#/components/schemas/CaseWatcherUserRelationship" - required: - - user - type: object - CaseWatcherResourceType: - default: watcher - description: JSON:API resource type for case watchers. - enum: - - watcher - example: watcher - type: string - x-enum-varnames: - - WATCHER - CaseWatcherUserRelationship: - description: The user relationship for a case watcher. - properties: - data: - $ref: "#/components/schemas/UserRelationshipData" - required: - - data - type: object - CaseWatchersResponse: - description: Response containing the list of users watching a case. - properties: - data: - description: List of case watchers. - items: - $ref: "#/components/schemas/CaseWatcher" - type: array - required: - - data - type: object CasesResponse: description: Response with cases properties: @@ -21375,7 +20357,7 @@ components: $ref: "#/components/schemas/CsmServerlessCoverageAnalysisData" type: object CustomAttributeConfig: - description: "A custom attribute configuration that defines an organization-specific metadata field on cases. Custom attributes are scoped to a case type and can hold text, URLs, numbers, or predefined select options." + description: The definition of `CustomAttributeConfig` object. properties: attributes: $ref: "#/components/schemas/CustomAttributeConfigResourceAttributes" @@ -21387,22 +20369,22 @@ components: $ref: "#/components/schemas/CustomAttributeConfigResourceType" type: object CustomAttributeConfigAttributesCreate: - description: Attributes required to create a custom attribute configuration. + description: Custom attribute config resource attributes properties: description: - description: A description explaining the purpose and expected values for this custom attribute. + description: Custom attribute description. example: "AWS Region, must be a valid region supported by AWS" type: string display_name: - description: The human-readable label shown in the Case Management UI for this custom attribute. + description: Custom attribute name. example: "AWS Region" type: string is_multi: - description: "If `true`, this attribute accepts an array of values. If `false`, only a single value is allowed." + description: Whether multiple values can be set example: true type: boolean key: - description: The programmatic key used to reference this custom attribute in search queries and API calls. + description: Custom attribute key. This will be the value use to search on this custom attribute example: "aws_region" type: string type: @@ -21414,7 +20396,7 @@ components: - is_multi type: object CustomAttributeConfigCreate: - description: Data object for creating a custom attribute configuration. + description: Custom attribute config properties: attributes: $ref: "#/components/schemas/CustomAttributeConfigAttributesCreate" @@ -21425,7 +20407,7 @@ components: - type type: object CustomAttributeConfigCreateRequest: - description: Request payload for creating a custom attribute configuration. + description: Custom attribute config create request properties: data: $ref: "#/components/schemas/CustomAttributeConfigCreate" @@ -21433,26 +20415,26 @@ components: - data type: object CustomAttributeConfigResourceAttributes: - description: "Attributes of a custom attribute configuration, defining an organization-specific metadata field that can be added to cases of a given type." + description: Custom attribute resource attributes properties: case_type_id: - description: The UUID of the case type this custom attribute belongs to. + description: Custom attribute config identifier. example: "aeadc05e-98a8-11ec-ac2c-da7ad0900001" type: string description: - description: A description explaining the purpose and expected values for this custom attribute. + description: Custom attribute description. example: "AWS Region, must be a valid region supported by AWS" type: string display_name: - description: The human-readable label shown in the Case Management UI for this custom attribute. + description: Custom attribute name. example: "AWS Region" type: string is_multi: - description: "If `true`, this attribute accepts an array of values. If `false`, only a single value is allowed." + description: Whether multiple values can be set example: true type: boolean key: - description: The programmatic key used to reference this custom attribute in search queries and API calls. + description: Custom attribute key. This will be the value use to search on this custom attribute example: "aws_region" type: string type: @@ -21466,7 +20448,7 @@ components: type: object CustomAttributeConfigResourceType: default: custom_attribute - description: JSON:API resource type for custom attribute configurations. + description: Custom attributes config JSON:API resource type enum: - custom_attribute example: custom_attribute @@ -21474,50 +20456,13 @@ components: x-enum-varnames: - CUSTOM_ATTRIBUTE CustomAttributeConfigResponse: - description: Response containing a single custom attribute configuration. + description: Custom attribute config response. properties: data: $ref: "#/components/schemas/CustomAttributeConfig" type: object - CustomAttributeConfigUpdate: - description: Data object for updating a custom attribute configuration. - properties: - attributes: - $ref: "#/components/schemas/CustomAttributeConfigUpdateAttributes" - type: - $ref: "#/components/schemas/CustomAttributeConfigResourceType" - required: - - type - type: object - CustomAttributeConfigUpdateAttributes: - description: Attributes that can be updated on a custom attribute configuration. All fields are optional; only provided fields are changed. - properties: - description: - description: A description explaining the purpose and expected values for this custom attribute. - example: "Updated description." - type: string - display_name: - description: The human-readable label shown in the Case Management UI for this custom attribute. - example: "AWS Region" - type: string - map_from: - description: An external field identifier to auto-populate this attribute from (used for integrations with external systems). - type: string - type: - $ref: "#/components/schemas/CustomAttributeType" - type_data: - $ref: "#/components/schemas/CustomAttributeTypeData" - type: object - CustomAttributeConfigUpdateRequest: - description: Request payload for updating a custom attribute configuration. - properties: - data: - $ref: "#/components/schemas/CustomAttributeConfigUpdate" - required: - - data - type: object CustomAttributeConfigsResponse: - description: Response containing a list of custom attribute configurations. + description: Custom attribute configs response. properties: data: description: List of custom attribute configs of case type @@ -21526,37 +20471,27 @@ components: type: array type: object CustomAttributeMultiNumberValue: - description: An array of numeric values for a multi-value NUMBER-type custom attribute. + description: Values of multi NUMBER custom attribute items: description: NUMBER value format: double type: number type: array CustomAttributeMultiStringValue: - description: An array of string values for a multi-value TEXT, URL, or SELECT-type custom attribute. + description: Value of multi TEXT/URL/NUMBER/SELECT custom attribute items: description: TEXT/URL/NUMBER/SELECT Value type: string type: array CustomAttributeNumberValue: - description: A numeric value for a NUMBER-type custom attribute. + description: Value of NUMBER custom attribute format: double type: number - CustomAttributeSelectOption: - description: A selectable option for a SELECT-type custom attribute. - properties: - value: - description: Option value. - example: "us-east-1" - type: string - required: - - value - type: object CustomAttributeStringValue: - description: A string value for a TEXT, URL, or SELECT-type custom attribute. + description: Value of TEXT/URL/NUMBER/SELECT custom attribute type: string CustomAttributeType: - description: "The data type of the custom attribute, which determines the allowed values and UI input control." + description: Custom attributes type enum: - URL - TEXT @@ -21569,17 +20504,8 @@ components: - TEXT - NUMBER - SELECT - CustomAttributeTypeData: - description: "Type-specific configuration for the custom attribute. For SELECT-type attributes, this contains the list of allowed options." - properties: - options: - description: Options for SELECT type custom attributes. - items: - $ref: "#/components/schemas/CustomAttributeSelectOption" - type: array - type: object CustomAttributeValue: - description: A typed value for a custom attribute on a specific case. + description: Custom attribute values properties: is_multi: description: If true, value must be an array @@ -21595,7 +20521,7 @@ components: - value type: object CustomAttributeValuesUnion: - description: The value of a custom attribute. The accepted format depends on the attribute's type and whether it accepts multiple values. + description: Union of supported value for a custom attribute example: "" oneOf: - $ref: "#/components/schemas/CustomAttributeStringValue" @@ -46366,167 +45292,6 @@ components: - type - id type: object - MaintenanceWindow: - description: A maintenance window that defines a scheduled time period during which case-related notifications and automation rules are suppressed. Each maintenance window applies to cases matching a specified query. - properties: - attributes: - $ref: "#/components/schemas/MaintenanceWindowAttributes" - id: - description: The maintenance window's identifier. - example: "a1b2c3d4-e5f6-7890-abcd-ef1234567890" - type: string - type: - $ref: "#/components/schemas/MaintenanceWindowResourceType" - required: - - id - - type - - attributes - type: object - MaintenanceWindowAttributes: - description: Attributes of a maintenance window, including its schedule and the query that determines which cases are affected. - properties: - created_by: - description: The UUID of the user who created this maintenance window. Read-only. - readOnly: true - type: string - end_at: - description: The ISO 8601 timestamp when the maintenance window ends and normal notification behavior resumes. - example: "2026-06-01T06:00:00Z" - format: date-time - type: string - name: - description: "A human-readable name for the maintenance window (for example, `Database migration - Dec 15`)." - example: "Weekly maintenance" - type: string - query: - description: A case search query that determines which cases are affected during the maintenance window. Uses the same syntax as the Case Management search bar. - example: "project:SEC" - type: string - start_at: - description: The ISO 8601 timestamp when the maintenance window begins and notifications start being suppressed. - example: "2026-06-01T00:00:00Z" - format: date-time - type: string - updated_by: - description: The UUID of the user who last modified this maintenance window. Read-only. - readOnly: true - type: string - required: - - name - - query - - start_at - - end_at - type: object - MaintenanceWindowCreate: - description: Data object for creating a maintenance window. - properties: - attributes: - $ref: "#/components/schemas/MaintenanceWindowCreateAttributes" - type: - $ref: "#/components/schemas/MaintenanceWindowResourceType" - required: - - type - - attributes - type: object - MaintenanceWindowCreateAttributes: - description: Attributes required to create a maintenance window. - properties: - end_at: - description: The end time of the maintenance window. - example: "2026-06-01T06:00:00Z" - format: date-time - type: string - name: - description: The name of the maintenance window. - example: "Weekly maintenance" - type: string - query: - description: The query to filter event management cases for this maintenance window. - example: "project:SEC" - type: string - start_at: - description: The start time of the maintenance window. - example: "2026-06-01T00:00:00Z" - format: date-time - type: string - required: - - name - - query - - start_at - - end_at - type: object - MaintenanceWindowCreateRequest: - description: Request payload for creating a maintenance window. - properties: - data: - $ref: "#/components/schemas/MaintenanceWindowCreate" - required: - - data - type: object - MaintenanceWindowResourceType: - default: maintenance_window - description: JSON:API resource type for maintenance windows. - enum: - - maintenance_window - example: maintenance_window - type: string - x-enum-varnames: - - MAINTENANCE_WINDOW - MaintenanceWindowResponse: - description: Response containing a single maintenance window. - properties: - data: - $ref: "#/components/schemas/MaintenanceWindow" - required: - - data - type: object - MaintenanceWindowUpdate: - description: Data object for updating a maintenance window. - properties: - attributes: - $ref: "#/components/schemas/MaintenanceWindowUpdateAttributes" - type: - $ref: "#/components/schemas/MaintenanceWindowResourceType" - required: - - type - type: object - MaintenanceWindowUpdateAttributes: - description: Attributes that can be updated on a maintenance window. All fields are optional; only provided fields are changed. - properties: - end_at: - description: The end time of the maintenance window. - format: date-time - type: string - name: - description: The name of the maintenance window. - type: string - query: - description: The query to filter event management cases for this maintenance window. - type: string - start_at: - description: The start time of the maintenance window. - format: date-time - type: string - type: object - MaintenanceWindowUpdateRequest: - description: Request payload for updating a maintenance window. - properties: - data: - $ref: "#/components/schemas/MaintenanceWindowUpdate" - required: - - data - type: object - MaintenanceWindowsResponse: - description: Response containing a list of maintenance windows. - properties: - data: - description: List of maintenance windows. - items: - $ref: "#/components/schemas/MaintenanceWindow" - type: array - required: - - data - type: object ManagedOrgsData: description: The managed organizations resource. properties: @@ -48346,6 +47111,758 @@ components: maxLength: 255 type: string type: object + ModelLabArtifactInfo: + description: Information about a project-level artifact file. + properties: + artifact_path: + description: The full artifact path relative to the project's artifact root. + example: projects/1/artifacts/model.pkl + type: string + created_at: + description: The date and time the artifact was created. + example: "2024-01-20T10:00:00Z" + format: date-time + type: string + file_size: + description: The size of the file in bytes. + format: int64 + nullable: true + type: integer + filename: + description: The filename of the artifact. + example: model.pkl + type: string + required: + - filename + - artifact_path + - created_at + type: object + ModelLabArtifactObjectInfo: + description: Information about an artifact file or directory within a run. + properties: + file_size: + description: The size of the file in bytes. + format: int64 + nullable: true + type: integer + is_dir: + description: Whether this artifact entry is a directory. + example: false + type: boolean + path: + description: The path of the artifact relative to the run's artifact root. + example: model/weights.pt + type: string + required: + - path + - is_dir + type: object + ModelLabFacetKeysAttributes: + description: Available facet key names for filtering resources. + properties: + metrics: + description: The list of available metric facet keys. + example: + - accuracy + items: + type: string + nullable: true + type: array + parameters: + description: The list of available parameter facet keys. + example: + - learning_rate + items: + type: string + type: array + tags: + description: The list of available tag facet keys. + example: + - model + items: + type: string + type: array + required: + - parameters + - tags + - metrics + type: object + ModelLabFacetKeysData: + description: A facet keys JSON:API resource object. + properties: + attributes: + $ref: "#/components/schemas/ModelLabFacetKeysAttributes" + id: + description: The unique identifier of the facet keys resource. + example: "1" + type: string + type: + $ref: "#/components/schemas/ModelLabFacetKeysType" + required: + - id + - type + - attributes + type: object + ModelLabFacetKeysResponse: + description: Response containing available facet keys. + properties: + data: + $ref: "#/components/schemas/ModelLabFacetKeysData" + required: + - data + type: object + ModelLabFacetKeysType: + description: The JSON:API type for a facet keys resource. + enum: + - facet_keys + example: facet_keys + type: string + x-enum-varnames: + - FACET_KEYS + ModelLabFacetType: + description: The type of facet for filtering Model Lab runs. + enum: + - parameter + - attribute + - tag + - metric + example: tag + type: string + x-enum-varnames: + - PARAMETER + - ATTRIBUTE + - TAG + - METRIC + ModelLabFacetValuesAttributes: + description: Available values for a specific facet key. + properties: + facet_name: + description: The name of the facet. + example: model + type: string + facet_type: + description: The type of the facet. + example: tag + type: string + metric_stat_ranges: + description: The ranges for each metric statistic. + items: + $ref: "#/components/schemas/ModelLabMetricStatRange" + type: array + numeric_range: + $ref: "#/components/schemas/ModelLabNumericRange" + values: + description: The list of available string values for this facet. + example: + - gpt4 + items: + type: string + type: array + required: + - facet_type + - facet_name + - values + type: object + ModelLabFacetValuesData: + description: A facet values JSON:API resource object. + properties: + attributes: + $ref: "#/components/schemas/ModelLabFacetValuesAttributes" + id: + description: The unique identifier of the facet values resource. + example: "1" + type: string + type: + $ref: "#/components/schemas/ModelLabFacetValuesType" + required: + - id + - type + - attributes + type: object + ModelLabFacetValuesResponse: + description: Response containing available values for a facet key. + properties: + data: + $ref: "#/components/schemas/ModelLabFacetValuesData" + required: + - data + type: object + ModelLabFacetValuesType: + description: The JSON:API type for a facet values resource. + enum: + - facet_values + example: facet_values + type: string + x-enum-varnames: + - FACET_VALUES + ModelLabMetricStatRange: + description: The range of values for a specific metric statistic. + properties: + max: + description: The maximum value of the statistic. + example: 1.0 + format: double + type: number + min: + description: The minimum value of the statistic. + example: 0.0 + format: double + type: number + stat: + description: The metric statistic name. + example: mean + type: string + required: + - stat + - min + - max + type: object + ModelLabMetricSummary: + description: Summary statistics for a metric recorded during a Model Lab run. + properties: + count: + description: The total number of recorded values. + example: 100 + format: int64 + type: integer + first_step: + description: The first step at which the metric was recorded. + format: int64 + nullable: true + type: integer + key: + description: The metric name. + example: accuracy + type: string + last_step: + description: The last step at which the metric was recorded. + format: int64 + nullable: true + type: integer + latest: + description: The most recently recorded value. + format: double + nullable: true + type: number + max: + description: The maximum recorded value. + format: double + nullable: true + type: number + mean: + description: The mean of recorded values. + format: double + nullable: true + type: number + min: + description: The minimum recorded value. + format: double + nullable: true + type: number + stddev: + description: The standard deviation of recorded values. + format: double + nullable: true + type: number + required: + - key + - count + type: object + ModelLabNumericRange: + description: The numeric range of values for a facet. + properties: + max: + description: The maximum value. + example: 1.0 + format: double + type: number + min: + description: The minimum value. + example: 0.0 + format: double + type: number + required: + - min + - max + type: object + ModelLabPageMeta: + description: Pagination metadata for a list response. + properties: + page: + $ref: "#/components/schemas/ModelLabPageMetaPage" + required: + - page + type: object + ModelLabPageMetaPage: + description: Pagination details for a list response. + properties: + first_number: + description: The first page number. + format: int64 + type: integer + last_number: + description: The last page number. + format: int64 + type: integer + next_number: + description: The next page number. + format: int64 + nullable: true + type: integer + number: + description: The current page number. + example: 1 + format: int64 + type: integer + prev_number: + description: The previous page number. + format: int64 + nullable: true + type: integer + size: + description: The number of items per page. + example: 25 + format: int64 + type: integer + total: + description: The total number of items. + example: 100 + format: int64 + type: integer + type: + description: The pagination type. + type: string + required: + - number + - size + - total + type: object + ModelLabPaginationLinks: + description: Pagination links for navigating list responses. + properties: + first: + description: Link to the first page. + type: string + last: + description: Link to the last page. + type: string + next: + description: Link to the next page. + nullable: true + type: string + prev: + description: Link to the previous page. + nullable: true + type: string + self: + description: Link to the current page. + type: string + type: object + ModelLabProjectArtifactsAttributes: + description: Artifact listing for a Model Lab project. + properties: + files: + description: The list of artifact files associated with the project. + items: + $ref: "#/components/schemas/ModelLabArtifactInfo" + type: array + required: + - files + type: object + ModelLabProjectArtifactsData: + description: A project artifacts JSON:API resource object. + properties: + attributes: + $ref: "#/components/schemas/ModelLabProjectArtifactsAttributes" + id: + description: The unique identifier of the project artifacts resource. + example: "1" + type: string + type: + $ref: "#/components/schemas/ModelLabProjectArtifactsType" + required: + - id + - type + - attributes + type: object + ModelLabProjectArtifactsResponse: + description: Response containing the artifact listing for a Model Lab project. + properties: + data: + $ref: "#/components/schemas/ModelLabProjectArtifactsData" + required: + - data + type: object + ModelLabProjectArtifactsType: + description: The JSON:API type for a project artifacts resource. + enum: + - project_files + example: project_files + type: string + x-enum-varnames: + - PROJECT_FILES + ModelLabProjectAttributes: + description: Attributes of a Model Lab project. + properties: + artifact_storage_location: + description: The storage location for project artifacts. + example: s3://bucket/active-project + type: string + created_at: + description: The date and time the project was created. + example: "2024-01-20T10:00:00Z" + format: date-time + type: string + deleted_at: + description: The date and time the project was soft-deleted. + format: date-time + nullable: true + type: string + description: + description: A description of the project. + example: A machine learning training project. + type: string + external_url: + description: An optional external URL associated with the project. + nullable: true + type: string + is_starred: + description: Whether the project is starred by the current user. + example: false + type: boolean + name: + description: The name of the project. + example: active-project + type: string + owner_id: + description: The UUID of the project owner. + nullable: true + type: string + tags: + description: The list of tags associated with the project. + items: + $ref: "#/components/schemas/ModelLabTag" + type: array + updated_at: + description: The date and time the project was last updated. + example: "2024-01-20T11:00:00Z" + format: date-time + type: string + required: + - name + - description + - artifact_storage_location + - created_at + - updated_at + - tags + - is_starred + type: object + ModelLabProjectData: + description: A Model Lab project JSON:API resource object. + properties: + attributes: + $ref: "#/components/schemas/ModelLabProjectAttributes" + id: + description: The unique identifier of the project. + example: "2" + type: string + type: + $ref: "#/components/schemas/ModelLabProjectType" + required: + - id + - type + - attributes + type: object + ModelLabProjectFacetType: + description: The type of facet for filtering Model Lab projects. + enum: + - tag + example: tag + type: string + x-enum-varnames: + - TAG + ModelLabProjectResponse: + description: Response containing a single Model Lab project. + properties: + data: + $ref: "#/components/schemas/ModelLabProjectData" + required: + - data + type: object + ModelLabProjectType: + description: The JSON:API type for a Model Lab project resource. + enum: + - projects + example: projects + type: string + x-enum-varnames: + - PROJECTS + ModelLabProjectsResponse: + description: Response containing a list of Model Lab projects with pagination metadata. + properties: + data: + description: The list of projects. + items: + $ref: "#/components/schemas/ModelLabProjectData" + type: array + links: + $ref: "#/components/schemas/ModelLabPaginationLinks" + meta: + $ref: "#/components/schemas/ModelLabPageMeta" + required: + - data + - meta + type: object + ModelLabRunArtifactsAttributes: + description: Artifact listing for a Model Lab run. + properties: + files: + description: The list of artifact files and directories. + items: + $ref: "#/components/schemas/ModelLabArtifactObjectInfo" + type: array + path_in_project: + description: The path of the run's artifacts relative to the project's artifact root. + example: runs/42 + type: string + required: + - path_in_project + - files + type: object + ModelLabRunArtifactsData: + description: A run artifacts JSON:API resource object. + properties: + attributes: + $ref: "#/components/schemas/ModelLabRunArtifactsAttributes" + id: + description: The unique identifier of the artifacts resource. + example: "42" + type: string + type: + $ref: "#/components/schemas/ModelLabRunArtifactsType" + required: + - id + - type + - attributes + type: object + ModelLabRunArtifactsResponse: + description: Response containing the artifact listing for a Model Lab run. + properties: + data: + $ref: "#/components/schemas/ModelLabRunArtifactsData" + required: + - data + type: object + ModelLabRunArtifactsType: + description: The JSON:API type for a run artifacts resource. + enum: + - artifacts + example: artifacts + type: string + x-enum-varnames: + - ARTIFACTS + ModelLabRunAttributes: + description: Attributes of a Model Lab run. + properties: + completed_at: + description: The date and time the run completed. + format: date-time + nullable: true + type: string + created_at: + description: The date and time the run was created. + example: "2024-01-20T10:00:00Z" + format: date-time + type: string + deleted_at: + description: The date and time the run was soft-deleted. + format: date-time + nullable: true + type: string + descendant_match: + description: Whether a descendant run matched the applied filters. + example: false + type: boolean + description: + description: A description of the run. + example: Fine-tuning run with custom hyperparameters. + type: string + duration: + description: The duration of the run in seconds. + format: double + nullable: true + type: number + external_url: + description: An optional external URL associated with the run. + nullable: true + type: string + has_children: + description: Whether the run has child runs. + example: false + type: boolean + is_pinned: + description: Whether the run is pinned by the current user. + example: false + type: boolean + metric_summaries: + description: Summary statistics for metrics recorded during the run. + items: + $ref: "#/components/schemas/ModelLabMetricSummary" + type: array + mlflow_artifact_location: + description: The MLflow artifact storage location for this run. + example: s3://bucket/active-run + type: string + name: + description: The name of the run. + example: training-run-1 + type: string + owner_id: + description: The UUID of the run owner. + nullable: true + type: string + params: + description: The list of parameters used for the run. + items: + $ref: "#/components/schemas/ModelLabRunParam" + nullable: true + type: array + project_id: + description: The ID of the project this run belongs to. + example: 101 + format: int64 + type: integer + started_at: + description: The date and time the run started. + example: "2024-01-20T10:00:00Z" + format: date-time + type: string + status: + $ref: "#/components/schemas/ModelLabRunStatus" + tags: + description: The list of tags associated with the run. + items: + $ref: "#/components/schemas/ModelLabTag" + type: array + updated_at: + description: The date and time the run was last updated. + example: "2024-01-20T11:00:00Z" + format: date-time + type: string + required: + - project_id + - name + - description + - status + - mlflow_artifact_location + - started_at + - created_at + - updated_at + - tags + - params + - metric_summaries + - is_pinned + - has_children + - descendant_match + type: object + ModelLabRunData: + description: A Model Lab run JSON:API resource object. + properties: + attributes: + $ref: "#/components/schemas/ModelLabRunAttributes" + id: + description: The unique identifier of the run. + example: "42" + type: string + type: + $ref: "#/components/schemas/ModelLabRunType" + required: + - id + - type + - attributes + type: object + ModelLabRunParam: + description: A key-value parameter for a Model Lab run. + properties: + key: + description: The parameter key. + example: algorithm + type: string + value: + description: The parameter value. + example: gpt4 + type: string + required: + - key + - value + type: object + ModelLabRunResponse: + description: Response containing a single Model Lab run. + properties: + data: + $ref: "#/components/schemas/ModelLabRunData" + required: + - data + type: object + ModelLabRunStatus: + description: The status of a Model Lab run. + enum: + - pending + - running + - completed + - failed + - killed + - unresponsive + - paused + example: running + type: string + x-enum-varnames: + - PENDING + - RUNNING + - COMPLETED + - FAILED + - KILLED + - UNRESPONSIVE + - PAUSED + ModelLabRunType: + description: The JSON:API type for a Model Lab run resource. + enum: + - runs + example: runs + type: string + x-enum-varnames: + - RUNS + ModelLabRunsResponse: + description: Response containing a list of Model Lab runs with pagination metadata. + properties: + data: + description: The list of runs. + items: + $ref: "#/components/schemas/ModelLabRunData" + type: array + links: + $ref: "#/components/schemas/ModelLabPaginationLinks" + meta: + $ref: "#/components/schemas/ModelLabPageMeta" + required: + - data + - meta + type: object + ModelLabTag: + description: A key-value tag attached to a resource. + properties: + key: + description: The tag key. + example: model + type: string + value: + description: The tag value. + example: opus + type: string + required: + - key + - value + type: object MonitorAlertTriggerAttributes: description: Attributes for a monitor alert trigger. properties: @@ -59900,39 +59417,6 @@ components: required: - data type: object - ProjectFavorite: - description: Represents a case project that the current user has bookmarked for quick access. Favorited projects appear prominently in the Case Management UI. - properties: - id: - description: The UUID of the favorited project. - example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" - type: string - type: - $ref: "#/components/schemas/ProjectFavoriteResourceType" - required: - - id - - type - type: object - ProjectFavoriteResourceType: - default: project_favorite - description: "JSON:API resource type for project favorites." - enum: - - project_favorite - example: project_favorite - type: string - x-enum-varnames: - - PROJECT_FAVORITE - ProjectFavoritesResponse: - description: Response containing the list of projects the current user has favorited. - properties: - data: - description: List of project favorites. - items: - $ref: "#/components/schemas/ProjectFavorite" - type: array - required: - - data - type: object ProjectNotificationSettings: description: Project notification settings. properties: @@ -83066,7 +82550,7 @@ components: - restrictions type: object TimelineCell: - description: "Attributes of a timeline cell, representing a single event in a case's chronological activity log (for example, a comment, status change, or assignment update)." + description: timeline cell properties: author: $ref: "#/components/schemas/TimelineCellAuthor" @@ -83091,11 +82575,11 @@ components: $ref: "#/components/schemas/TimelineCellType" type: object TimelineCellAuthor: - description: The author of the timeline cell. Currently only user authors are supported. + description: author of the timeline cell oneOf: - $ref: "#/components/schemas/TimelineCellAuthorUser" TimelineCellAuthorUser: - description: A user who authored a timeline cell. + description: timeline cell user author properties: content: $ref: "#/components/schemas/TimelineCellAuthorUserContent" @@ -83103,23 +82587,23 @@ components: $ref: "#/components/schemas/TimelineCellAuthorUserType" type: object TimelineCellAuthorUserContent: - description: Profile information for the user who authored the timeline cell. + description: user author content. properties: email: - description: The email address of the user. + description: user email type: string handle: - description: The Datadog handle of the user. + description: user handle type: string id: - description: The UUID of the user. + description: user UUID type: string name: - description: The display name of the user. + description: user name type: string type: object TimelineCellAuthorUserType: - description: The type of timeline cell author. Currently only `USER` is supported. + description: user author type. enum: - USER example: USER @@ -83127,18 +82611,18 @@ components: x-enum-varnames: - USER TimelineCellContent: - description: The content payload of a timeline cell, varying by cell type. + description: timeline cell content oneOf: - $ref: "#/components/schemas/TimelineCellContentComment" TimelineCellContentComment: - description: The content of a comment timeline cell. + description: comment content properties: message: - description: The text content of the comment. Supports Markdown formatting. + description: comment message type: string type: object TimelineCellResource: - description: A timeline cell resource representing a single entry in a case's activity timeline. + description: Timeline cell JSON:API resource properties: attributes: $ref: "#/components/schemas/TimelineCell" @@ -83155,7 +82639,7 @@ components: type: object TimelineCellResourceType: default: timeline_cell - description: JSON:API resource type for timeline cells. + description: Timeline cell JSON:API resource type enum: - timeline_cell example: timeline_cell @@ -83163,7 +82647,7 @@ components: x-enum-varnames: - TIMELINE_CELL TimelineCellType: - description: The type of content in the timeline cell. Currently only `COMMENT` is supported in this endpoint. + description: Timeline cell content type enum: - COMMENT example: COMMENT @@ -83171,7 +82655,7 @@ components: x-enum-varnames: - COMMENT TimelineResponse: - description: Response containing the chronological list of timeline cells for a case. + description: Timeline response properties: data: description: The `TimelineResponse` `data`. @@ -87808,7 +87292,6 @@ components: bits_investigations_read: View Bits AI investigations. bits_investigations_write: Create and manage Bits AI investigations. cases_read: View Cases. - cases_shared_settings_write: Update shared case management settings. cases_write: Create and update cases. ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. ci_visibility_read: View CI Visibility. @@ -87830,8 +87313,6 @@ components: embeddable_graphs_share: Generate public links to share embeddable graphs externally. error_tracking_read: Read Error Tracking data. error_tracking_write: Edit Error Tracking issues. - event_correlation_config_read: View event correlation configurations. - event_correlation_config_write: Create and update event correlation configurations. events_read: Read Events data. hosts_read: List hosts and their attributes. incident_notification_settings_read: View Incident Notification Rule Settings. @@ -94660,336 +94141,6 @@ paths: summary: Create a case tags: - Case Management - /api/v2/cases/aggregate: - post: - description: Performs an aggregation query over cases, grouping results by specified fields and returning counts per group along with a total. Useful for dashboards and analytics. - operationId: AggregateCases - requestBody: - content: - application/json: - examples: - default: - value: - data: - attributes: - group_by: - groups: - - "status" - limit: 14 - query_filter: "service:case-api" - type: aggregate - schema: - $ref: "#/components/schemas/CaseAggregateRequest" - description: Case aggregate request payload. - required: true - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - attributes: - groups: - - group: OPEN - value: - - 42.0 - total: 100.0 - id: agg-result-001 - type: aggregate - schema: - $ref: "#/components/schemas/CaseAggregateResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: Aggregate cases - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/cases/bulk: - post: - description: Applies a single action (such as changing priority, status, assignment, or archiving) to multiple cases at once. The list of case IDs and the action type with its payload are specified in the request body. - operationId: BulkUpdateCases - requestBody: - content: - application/json: - examples: - default: - value: - data: - attributes: - case_ids: - - "case-id-1" - - "case-id-2" - payload: - priority: "P1" - type: priority - type: bulk - schema: - $ref: "#/components/schemas/CaseBulkUpdateRequest" - description: Case bulk update request payload. - required: true - responses: - "200": - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Bulk update cases - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/cases/count: - get: - description: Returns case counts, optionally grouped by one or more fields (for example, status, priority). Supports a query filter to narrow the scope. - operationId: CountCases - parameters: - - description: Filter query for cases. - in: query - name: query_filter - required: false - schema: - type: string - - description: Comma-separated fields to group by. - example: "status,priority" - in: query - name: group_bys - required: false - schema: - type: string - - description: Maximum facet values to return. - in: query - name: limit - required: false - schema: - type: integer - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - attributes: - groups: - - group: status - group_values: - - count: 42 - value: OPEN - id: count-result-001 - type: count - schema: - $ref: "#/components/schemas/CaseCountResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: Count cases - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/cases/link: - get: - description: Returns all links associated with a case. Links define relationships (for example, BLOCKS) between cases. Requires entity_type and entity_id query parameters. - operationId: ListCaseLinks - parameters: - - description: "The entity type to look up links for. Use `CASE` to find links for a specific case." - in: query - name: entity_type - required: true - schema: - example: "CASE" - type: string - - description: "The UUID of the entity to look up links for." - in: query - name: entity_id - required: true - schema: - example: "bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f" - type: string - - description: "Optional filter to only return links of a specific relationship type (for example, `BLOCKS` or `CAUSES`)." - in: query - name: relationship - required: false - schema: - example: "BLOCKS" - type: string - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - - attributes: - child_entity_id: 4417921d-0866-4a38-822c-6f2a0f65f77d - child_entity_type: CASE - parent_entity_id: bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f - parent_entity_type: CASE - relationship: BLOCKS - id: 804cd682-55f6-4541-ab00-b608b282ea7d - type: link - schema: - $ref: "#/components/schemas/CaseLinksResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: List case links - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - post: - description: Creates a directional link between two cases (for example, case A blocks case B). The parent and child cases and their relationship type must be specified. - operationId: CreateCaseLink - requestBody: - content: - application/json: - examples: - default: - value: - data: - attributes: - child_entity_id: 4417921d-0866-4a38-822c-6f2a0f65f77d - child_entity_type: CASE - parent_entity_id: bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f - parent_entity_type: CASE - relationship: BLOCKS - type: link - schema: - $ref: "#/components/schemas/CaseLinkCreateRequest" - description: "Case link create request." - required: true - responses: - "201": - content: - application/json: - examples: - default: - value: - data: - attributes: - child_entity_id: 4417921d-0866-4a38-822c-6f2a0f65f77d - child_entity_type: CASE - parent_entity_id: bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f - parent_entity_type: CASE - relationship: BLOCKS - id: 804cd682-55f6-4541-ab00-b608b282ea7d - type: link - schema: - $ref: "#/components/schemas/CaseLinkResponse" - description: Created - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Create a case link - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/cases/link/{link_id}: - delete: - description: Deletes an existing link between cases by link ID. - operationId: DeleteCaseLink - parameters: - - $ref: "#/components/parameters/LinkIDPathParameter" - responses: - "204": - description: No Content - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Delete a case link - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/cases/projects: get: description: >- @@ -95081,44 +94232,6 @@ paths: summary: Create a project tags: - Case Management - /api/v2/cases/projects/favorites: - get: - description: Returns the list of case projects that the current authenticated user has marked as favorites. - operationId: ListUserCaseProjectFavorites - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - - id: e555e290-ed65-49bd-ae18-8acbfcf18db7 - type: project_favorite - schema: - $ref: "#/components/schemas/ProjectFavoritesResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: List project favorites - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/cases/projects/{project_id}: delete: description: Remove a project using the project's `id`. @@ -95238,65 +94351,6 @@ paths: summary: Update a project tags: - Case Management - /api/v2/cases/projects/{project_id}/favorites: - delete: - description: Removes a case project from the current user's favorites list. - operationId: UnfavoriteCaseProject - parameters: - - $ref: "#/components/parameters/ProjectIDPathParameter" - responses: - "204": - description: No Content - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Unfavorite a project - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - post: - description: Marks a case project as a favorite for the current authenticated user. - operationId: FavoriteCaseProject - parameters: - - $ref: "#/components/parameters/ProjectIDPathParameter" - responses: - "204": - description: No Content - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Favorite a project - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/cases/projects/{project_id}/notification_rules: get: description: >- @@ -95505,418 +94559,6 @@ paths: summary: Update a notification rule tags: - Case Management - /api/v2/cases/projects/{project_id}/rules: - get: - description: Returns all automation rules configured for a project. Automation rules allow automatic actions to be triggered by case events like creation, status transitions, or attribute changes. - operationId: ListCaseAutomationRules - parameters: - - description: The UUID of the project that owns the automation rules. - example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" - in: path - name: project_id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - - attributes: - action: - data: - handle: workflow-handle-123 - type: execute_workflow - created_at: "2024-01-01T00:00:00.000Z" - name: Auto-assign workflow - state: ENABLED - trigger: - type: case_created - id: e6773723-fe58-49ff-9975-dff00f14e28d - type: rule - schema: - $ref: "#/components/schemas/AutomationRulesResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: List automation rules - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - post: - description: Creates an automation rule for a project. The rule defines a trigger event (for example, case created, status transitioned) and an action to execute. - operationId: CreateCaseAutomationRule - parameters: - - description: The UUID of the project that owns the automation rules. - example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" - in: path - name: project_id - required: true - schema: - type: string - requestBody: - content: - application/json: - examples: - default: - value: - data: - attributes: - action: - data: - handle: workflow-handle-123 - type: execute_workflow - name: Auto-assign workflow - state: ENABLED - trigger: - type: case_created - type: rule - schema: - $ref: "#/components/schemas/AutomationRuleCreateRequest" - description: Automation rule payload. - required: true - responses: - "201": - content: - application/json: - examples: - default: - value: - data: - attributes: - action: - data: - handle: workflow-handle-123 - type: execute_workflow - created_at: "2024-01-01T00:00:00.000Z" - name: Auto-assign workflow - state: ENABLED - trigger: - type: case_created - id: e6773723-fe58-49ff-9975-dff00f14e28d - type: rule - schema: - $ref: "#/components/schemas/AutomationRuleResponse" - description: Created - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Create an automation rule - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/cases/projects/{project_id}/rules/{rule_id}: - delete: - description: Permanently deletes an automation rule from a project. - operationId: DeleteCaseAutomationRule - parameters: - - description: The UUID of the project that owns the automation rules. - example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" - in: path - name: project_id - required: true - schema: - type: string - - $ref: "#/components/parameters/RuleIDPathParameter" - responses: - "204": - description: No Content - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Delete an automation rule - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - get: - description: Returns a single automation rule identified by its UUID, including its trigger, action, and current state (enabled/disabled). - operationId: GetCaseAutomationRule - parameters: - - description: The UUID of the project that owns the automation rules. - example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" - in: path - name: project_id - required: true - schema: - type: string - - $ref: "#/components/parameters/RuleIDPathParameter" - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - attributes: - action: - data: - handle: workflow-handle-123 - type: execute_workflow - created_at: "2024-01-01T00:00:00.000Z" - name: Auto-assign workflow - state: ENABLED - trigger: - type: case_created - id: e6773723-fe58-49ff-9975-dff00f14e28d - type: rule - schema: - $ref: "#/components/schemas/AutomationRuleResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: Get an automation rule - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - put: - description: Updates the trigger, action, name, or state of an existing automation rule. - operationId: UpdateCaseAutomationRule - parameters: - - description: The UUID of the project that owns the automation rules. - example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" - in: path - name: project_id - required: true - schema: - type: string - - $ref: "#/components/parameters/RuleIDPathParameter" - requestBody: - content: - application/json: - examples: - default: - value: - data: - attributes: - action: - data: - handle: workflow-handle-123 - type: execute_workflow - name: Auto-assign workflow - state: ENABLED - trigger: - type: case_created - type: rule - schema: - $ref: "#/components/schemas/AutomationRuleUpdateRequest" - description: Automation rule payload. - required: true - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - attributes: - action: - data: - handle: workflow-handle-123 - type: execute_workflow - created_at: "2024-01-01T00:00:00.000Z" - name: Auto-assign workflow - state: ENABLED - trigger: - type: case_created - id: e6773723-fe58-49ff-9975-dff00f14e28d - type: rule - schema: - $ref: "#/components/schemas/AutomationRuleResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Update an automation rule - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/cases/projects/{project_id}/rules/{rule_id}/disable: - post: - description: Disables an automation rule so it no longer triggers on case events. The rule configuration is preserved. - operationId: DisableCaseAutomationRule - parameters: - - description: The UUID of the project that owns the automation rules. - example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" - in: path - name: project_id - required: true - schema: - type: string - - $ref: "#/components/parameters/RuleIDPathParameter" - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - attributes: - action: - data: - handle: workflow-handle-123 - type: execute_workflow - created_at: "2024-01-01T00:00:00.000Z" - name: Auto-assign workflow - state: DISABLED - trigger: - type: case_created - id: e6773723-fe58-49ff-9975-dff00f14e28d - type: rule - schema: - $ref: "#/components/schemas/AutomationRuleResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Disable an automation rule - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/cases/projects/{project_id}/rules/{rule_id}/enable: - post: - description: Enables a previously disabled automation rule so it triggers on matching case events. - operationId: EnableCaseAutomationRule - parameters: - - description: The UUID of the project that owns the automation rules. - example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" - in: path - name: project_id - required: true - schema: - type: string - - $ref: "#/components/parameters/RuleIDPathParameter" - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - attributes: - action: - data: - handle: workflow-handle-123 - type: execute_workflow - created_at: "2024-01-01T00:00:00.000Z" - name: Auto-assign workflow - state: ENABLED - trigger: - type: case_created - id: e6773723-fe58-49ff-9975-dff00f14e28d - type: rule - schema: - $ref: "#/components/schemas/AutomationRuleResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Enable an automation rule - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/cases/types: get: description: Get all case types @@ -96045,65 +94687,6 @@ paths: summary: Delete a case type tags: - Case Management Type - put: - description: Updates the name, emoji, or description of an existing case type. - operationId: UpdateCaseType - parameters: - - $ref: "#/components/parameters/CaseTypeIDPathParameter" - requestBody: - content: - application/json: - examples: - default: - value: - data: - attributes: - description: Investigations done in case management - emoji: "🕵🏻‍♂️" - name: Investigation - type: case_type - schema: - $ref: "#/components/schemas/CaseTypeUpdateRequest" - description: Case type payload. - required: true - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - attributes: - description: Investigations done in case management - emoji: "🕵🏻‍♂️" - name: Investigation - id: 00000000-0000-0000-0000-000000000001 - type: case_type - schema: - $ref: "#/components/schemas/CaseTypeResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_shared_settings_write - summary: Update a case type - tags: - - Case Management Type - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/cases/types/{case_type_id}/custom_attributes: get: description: Get all custom attribute config of case type @@ -96218,305 +94801,6 @@ paths: summary: Delete custom attributes config tags: - Case Management Attribute - put: - description: Updates the display name, description, type, or options of an existing custom attribute configuration for a case type. - operationId: UpdateCustomAttributeConfig - parameters: - - $ref: "#/components/parameters/CaseTypeIDPathParameter" - - $ref: "#/components/parameters/CaseCustomAttributeIDPathParameter" - requestBody: - content: - application/json: - examples: - default: - value: - data: - attributes: - description: Updated description. - display_name: AWS Region - type: custom_attribute - schema: - $ref: "#/components/schemas/CustomAttributeConfigUpdateRequest" - description: Custom attribute config payload. - required: true - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - attributes: - case_type_id: 00000000-0000-0000-0000-000000000006 - description: Updated description. - display_name: AWS Region - is_multi: true - key: aws_region - type: TEXT - id: 00000000-0000-0000-0000-000000000005 - type: custom_attribute - schema: - $ref: "#/components/schemas/CustomAttributeConfigResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_shared_settings_write - summary: Update custom attribute config - tags: - - Case Management Attribute - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/cases/views: - get: - description: Returns all saved case views for a given project. Views are saved search queries that allow quick access to filtered lists of cases. - operationId: ListCaseViews - parameters: - - description: Filter views by project identifier. - example: e555e290-ed65-49bd-ae18-8acbfcf18db7 - in: query - name: project_id - required: true - schema: - type: string - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - - attributes: - created_at: "2024-01-01T00:00:00.000Z" - name: Open bugs - query: "status:open type:bug" - id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - type: view - schema: - $ref: "#/components/schemas/CaseViewsResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: List case views - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - post: - description: Creates a new saved case view with a name, filter query, and associated project. Optionally, a notification rule can be linked to the view. - operationId: CreateCaseView - requestBody: - content: - application/json: - examples: - default: - value: - data: - attributes: - name: Open bugs - project_id: e555e290-ed65-49bd-ae18-8acbfcf18db7 - query: "status:open type:bug" - type: view - schema: - $ref: "#/components/schemas/CaseViewCreateRequest" - description: Case view payload. - required: true - responses: - "201": - content: - application/json: - examples: - default: - value: - data: - attributes: - created_at: "2024-01-01T00:00:00.000Z" - name: Open bugs - query: "status:open type:bug" - id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - type: view - schema: - $ref: "#/components/schemas/CaseViewResponse" - description: Created - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Create a case view - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/cases/views/{view_id}: - delete: - description: Permanently deletes a saved case view. - operationId: DeleteCaseView - parameters: - - $ref: "#/components/parameters/ViewIDPathParameter" - responses: - "204": - description: No Content - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Delete a case view - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - get: - description: Returns a single saved case view identified by its UUID, including its query, associated project, and timestamps. - operationId: GetCaseView - parameters: - - $ref: "#/components/parameters/ViewIDPathParameter" - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - attributes: - created_at: "2024-01-01T00:00:00.000Z" - name: Open bugs - query: "status:open type:bug" - id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - type: view - schema: - $ref: "#/components/schemas/CaseViewResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: Get a case view - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - put: - description: Updates the name, query, or notification rule of an existing case view. - operationId: UpdateCaseView - parameters: - - $ref: "#/components/parameters/ViewIDPathParameter" - requestBody: - content: - application/json: - examples: - default: - value: - data: - attributes: - name: Updated view name - type: view - schema: - $ref: "#/components/schemas/CaseViewUpdateRequest" - description: Case view payload. - required: true - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - attributes: - created_at: "2024-01-01T00:00:00.000Z" - name: Updated view name - query: "status:open type:bug" - id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - type: view - schema: - $ref: "#/components/schemas/CaseViewResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Update a case view - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/cases/{case_id}: get: description: >- @@ -96835,50 +95119,6 @@ paths: summary: Delete case comment tags: - Case Management - put: - description: Updates the text content of an existing comment on a case timeline. The comment is identified by its cell ID. - operationId: UpdateCaseComment - parameters: - - $ref: "#/components/parameters/CaseIDPathParameter" - - $ref: "#/components/parameters/CellIDPathParameter" - requestBody: - content: - application/json: - examples: - default: - value: - data: - attributes: - comment: Updated comment text - type: case - schema: - $ref: "#/components/schemas/CaseUpdateCommentRequest" - description: Case update comment payload. - required: true - responses: - "200": - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Update case comment - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/cases/{case_id}/custom_attributes/{custom_attribute_key}: delete: description: Delete custom attribute from case @@ -96975,224 +95215,13 @@ paths: $ref: "#/components/schemas/CaseResponse" description: OK "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Update case custom attribute - tags: - - Case Management - /api/v2/cases/{case_id}/description: - post: - description: Update case description - operationId: UpdateCaseDescription - parameters: - - $ref: "#/components/parameters/CaseIDPathParameter" - requestBody: - content: - application/json: - examples: - default: - value: - data: - attributes: - description: Seeing some weird memory increase... We shouldn't ignore this - type: case - schema: - $ref: "#/components/schemas/CaseUpdateDescriptionRequest" - description: Case description update payload - required: true - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - attributes: - created_at: "2024-01-01T00:00:00+00:00" - key: CASEM-1234 - priority: NOT_DEFINED - status: OPEN - status_name: Open - title: Memory leak investigation on API - id: 00000000-0000-0000-0000-000000000001 - relationships: - project: - data: - id: 00000000-0000-0000-0000-000000000002 - type: project - type: case - schema: - $ref: "#/components/schemas/CaseResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Update case description - tags: - - Case Management - /api/v2/cases/{case_id}/due_date: - post: - description: Sets or updates the due date for a case. The due date is a calendar date (without a time component) indicating when the case should be resolved. - operationId: UpdateCaseDueDate - parameters: - - $ref: "#/components/parameters/CaseIDPathParameter" - requestBody: - content: - application/json: - examples: - default: - value: - data: - attributes: - due_date: "2026-12-31" - type: case - schema: - $ref: "#/components/schemas/CaseUpdateDueDateRequest" - description: Case due date update payload. - required: true - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - attributes: - created_at: "2024-01-01T00:00:00+00:00" - key: CASEM-1234 - priority: NOT_DEFINED - status: OPEN - status_name: Open - title: Memory leak investigation on API - id: 00000000-0000-0000-0000-000000000001 - relationships: - project: - data: - id: 00000000-0000-0000-0000-000000000002 - type: project - type: case - schema: - $ref: "#/components/schemas/CaseResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Update case due date - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/cases/{case_id}/insights: - delete: - description: Removes one or more previously added insights from a case by specifying their type and resource identifier in the request body. - operationId: RemoveCaseInsights - parameters: - - $ref: "#/components/parameters/CaseIDPathParameter" - requestBody: - content: - application/json: - examples: - default: - value: - data: - attributes: - insights: - - ref: "/monitors/12345?q=total" - resource_id: "12345" - type: SECURITY_SIGNAL - type: case - schema: - $ref: "#/components/schemas/CaseInsightsRequest" - description: Case insights request. - required: true - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - attributes: - created_at: "2024-01-01T00:00:00+00:00" - key: CASEM-1234 - priority: NOT_DEFINED - status: OPEN - status_name: Open - title: Memory leak investigation on API - id: 00000000-0000-0000-0000-000000000001 - relationships: - project: - data: - id: 00000000-0000-0000-0000-000000000002 - type: project - type: case - schema: - $ref: "#/components/schemas/CaseResponse" - description: OK - "400": - content: - application/json: - schema: - $ref: "#/components/schemas/JSONAPIErrorResponse" - description: Bad Request + $ref: "#/components/responses/BadRequestResponse" "401": - content: - application/json: - schema: - $ref: "#/components/schemas/JSONAPIErrorResponse" - description: Unauthorized + $ref: "#/components/responses/UnauthorizedResponse" "403": - content: - application/json: - schema: - $ref: "#/components/schemas/JSONAPIErrorResponse" - description: Forbidden + $ref: "#/components/responses/ForbiddenResponse" "404": - content: - application/json: - schema: - $ref: "#/components/schemas/JSONAPIErrorResponse" - description: Not Found + $ref: "#/components/responses/NotFoundResponse" "429": $ref: "#/components/responses/TooManyRequestsResponse" security: @@ -97200,16 +95229,13 @@ paths: appKeyAuth: [] - AuthZ: - cases_write - summary: Remove insights from a case + summary: Update case custom attribute tags: - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - put: - description: >- - Adds one or more insights to a case. Insights are references to related Datadog resources (such as monitors, security signals, incidents, or error tracking issues) that provide investigative context. Up to 100 insights can be added per request. Each insight requires a type (see `CaseInsightType` for allowed values), a ref (URL path to the resource), and a resource_id. - operationId: AddCaseInsights + /api/v2/cases/{case_id}/description: + post: + description: Update case description + operationId: UpdateCaseDescription parameters: - $ref: "#/components/parameters/CaseIDPathParameter" requestBody: @@ -97220,14 +95246,11 @@ paths: value: data: attributes: - insights: - - ref: "/monitors/12345?q=total" - resource_id: "12345" - type: SECURITY_SIGNAL + description: Seeing some weird memory increase... We shouldn't ignore this type: case schema: - $ref: "#/components/schemas/CaseInsightsRequest" - description: Case insights request. + $ref: "#/components/schemas/CaseUpdateDescriptionRequest" + description: Case description update payload required: true responses: "200": @@ -97255,29 +95278,13 @@ paths: $ref: "#/components/schemas/CaseResponse" description: OK "400": - content: - application/json: - schema: - $ref: "#/components/schemas/JSONAPIErrorResponse" - description: Bad Request + $ref: "#/components/responses/BadRequestResponse" "401": - content: - application/json: - schema: - $ref: "#/components/schemas/JSONAPIErrorResponse" - description: Unauthorized + $ref: "#/components/responses/UnauthorizedResponse" "403": - content: - application/json: - schema: - $ref: "#/components/schemas/JSONAPIErrorResponse" - description: Forbidden + $ref: "#/components/responses/ForbiddenResponse" "404": - content: - application/json: - schema: - $ref: "#/components/schemas/JSONAPIErrorResponse" - description: Not Found + $ref: "#/components/responses/NotFoundResponse" "429": $ref: "#/components/responses/TooManyRequestsResponse" security: @@ -97285,12 +95292,9 @@ paths: appKeyAuth: [] - AuthZ: - cases_write - summary: Add insights to a case + summary: Update case description tags: - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/cases/{case_id}/priority: post: description: Update case priority @@ -97794,72 +95798,6 @@ paths: x-unstable: |- **Note**: This endpoint is in preview and is subject to change. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/cases/{case_id}/resolved_reason: - post: - description: Sets the resolved reason for a security case (for example, FALSE_POSITIVE, TRUE_POSITIVE). Applicable to security-type cases. - operationId: UpdateCaseResolvedReason - parameters: - - $ref: "#/components/parameters/CaseIDPathParameter" - requestBody: - content: - application/json: - examples: - default: - value: - data: - attributes: - security_resolved_reason: "FALSE_POSITIVE" - type: case - schema: - $ref: "#/components/schemas/CaseUpdateResolvedReasonRequest" - description: Case resolved reason update payload. - required: true - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - attributes: - created_at: "2024-01-01T00:00:00+00:00" - key: CASEM-1234 - priority: NOT_DEFINED - status: OPEN - status_name: Open - title: Memory leak investigation on API - id: 00000000-0000-0000-0000-000000000001 - relationships: - project: - data: - id: 00000000-0000-0000-0000-000000000002 - type: project - type: case - schema: - $ref: "#/components/schemas/CaseResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Update case resolved reason - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/cases/{case_id}/status: post: description: Update case status @@ -97924,72 +95862,6 @@ paths: summary: Update case status tags: - Case Management - /api/v2/cases/{case_id}/timelines: - get: - description: Returns the timeline of events for a case, including comments, status changes, and other activity. Supports pagination and sort order. - operationId: ListCaseTimeline - parameters: - - $ref: "#/components/parameters/CaseIDPathParameter" - - description: Number of timeline cells to return per page. - in: query - name: page[size] - required: false - schema: - default: 100 - type: integer - - description: Zero-based page number for pagination. - in: query - name: page[number] - required: false - schema: - default: 0 - type: integer - - description: "If `true`, returns timeline cells in chronological order (oldest first). Defaults to `false` (newest first)." - in: query - name: sort[ascending] - required: false - schema: - default: false - type: boolean - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - - attributes: - cell_content: - message: This is a comment - created_at: "2024-01-01T00:00:00+00:00" - type: COMMENT - id: 00000000-0000-0000-0000-000000000001 - type: timeline_cell - schema: - $ref: "#/components/schemas/TimelineResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: Get case timeline - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/cases/{case_id}/title: post: description: Update case title @@ -98175,112 +96047,6 @@ paths: summary: Unassign case tags: - Case Management - /api/v2/cases/{case_id}/watchers: - get: - description: Returns the list of users who are watching a case. Watchers receive notifications about updates to the case. - operationId: ListCaseWatchers - parameters: - - $ref: "#/components/parameters/CaseIDPathParameter" - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - - id: 8146583c-0b5f-11ec-abf8-da7ad0900001 - relationships: - user: - data: - id: 8146583c-0b5f-11ec-abf8-da7ad0900001 - type: user - type: watcher - schema: - $ref: "#/components/schemas/CaseWatchersResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: List case watchers - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/cases/{case_id}/watchers/{user_uuid}: - delete: - description: Removes a user from the watchers list of a case. The user no longer receives notifications about updates to the case. - operationId: UnwatchCase - parameters: - - $ref: "#/components/parameters/CaseIDPathParameter" - - $ref: "#/components/parameters/UserUUIDPathParameter" - responses: - "204": - description: No Content - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Unwatch a case - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - post: - description: Adds a user (identified by their UUID) as a watcher of a case. The user receives notifications about subsequent updates to the case. - operationId: WatchCase - parameters: - - $ref: "#/components/parameters/CaseIDPathParameter" - - $ref: "#/components/parameters/UserUUIDPathParameter" - responses: - "201": - description: Created - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Watch a case - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/catalog/entity: get: description: Get a list of entities from Software Catalog. @@ -121924,199 +119690,6 @@ paths: operator: OR permissions: - logs_read_data - /api/v2/maintenance_windows: - get: - description: Returns all configured maintenance windows for event management cases. Maintenance windows define time periods during which case notifications and automation rules are suppressed for cases matching a given query. - operationId: ListMaintenanceWindows - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - - attributes: - end_at: "2026-06-01T06:00:00Z" - name: Weekly maintenance - query: "project:SEC" - start_at: "2026-06-01T00:00:00Z" - id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - type: maintenance_window - schema: - $ref: "#/components/schemas/MaintenanceWindowsResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - event_correlation_config_read - summary: List maintenance windows - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - post: - description: Creates a maintenance window for event management cases with a name, case filter query, and time range (start and end). - operationId: CreateMaintenanceWindow - requestBody: - content: - application/json: - examples: - default: - value: - data: - attributes: - end_at: "2026-06-01T06:00:00Z" - name: Weekly maintenance - query: "project:SEC" - start_at: "2026-06-01T00:00:00Z" - type: maintenance_window - schema: - $ref: "#/components/schemas/MaintenanceWindowCreateRequest" - description: Maintenance window payload. - required: true - responses: - "201": - content: - application/json: - examples: - default: - value: - data: - attributes: - end_at: "2026-06-01T06:00:00Z" - name: Weekly maintenance - query: "project:SEC" - start_at: "2026-06-01T00:00:00Z" - id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - type: maintenance_window - schema: - $ref: "#/components/schemas/MaintenanceWindowResponse" - description: Created - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - event_correlation_config_write - summary: Create a maintenance window - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/maintenance_windows/{maintenance_window_id}: - delete: - description: Permanently deletes a maintenance window. - operationId: DeleteMaintenanceWindow - parameters: - - $ref: "#/components/parameters/MaintenanceWindowIDPathParameter" - responses: - "204": - description: No Content - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - event_correlation_config_write - summary: Delete a maintenance window - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). - put: - description: Updates the name, query, start time, or end time of an existing maintenance window. - operationId: UpdateMaintenanceWindow - parameters: - - $ref: "#/components/parameters/MaintenanceWindowIDPathParameter" - requestBody: - content: - application/json: - examples: - default: - value: - data: - attributes: - end_at: "2026-06-01T06:00:00Z" - name: Weekly maintenance - query: "project:SEC" - start_at: "2026-06-01T00:00:00Z" - type: maintenance_window - schema: - $ref: "#/components/schemas/MaintenanceWindowUpdateRequest" - description: Maintenance window payload. - required: true - responses: - "200": - content: - application/json: - examples: - default: - value: - data: - attributes: - end_at: "2026-06-01T06:00:00Z" - name: Weekly maintenance - query: "project:SEC" - start_at: "2026-06-01T00:00:00Z" - id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - type: maintenance_window - schema: - $ref: "#/components/schemas/MaintenanceWindowResponse" - description: OK - "400": - $ref: "#/components/responses/BadRequestResponse" - "401": - $ref: "#/components/responses/UnauthorizedResponse" - "403": - $ref: "#/components/responses/ForbiddenResponse" - "404": - $ref: "#/components/responses/NotFoundResponse" - "429": - $ref: "#/components/responses/TooManyRequestsResponse" - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - event_correlation_config_write - summary: Update a maintenance window - tags: - - Case Management - x-unstable: |- - **Note**: This endpoint is in preview and is subject to change. - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/metrics: get: description: |- @@ -123118,6 +120691,947 @@ paths: "x-permission": operator: OPEN permissions: [] + /api/v2/model-lab-api/artifacts/content: + get: + description: Download the raw content of a Model Lab artifact file. + operationId: GetModelLabArtifactContent + parameters: + - description: ID of the project. + in: query + name: project_id + required: true + schema: + example: "1" + type: string + - description: Path to the artifact relative to the project directory. + in: query + name: artifact_path + required: true + schema: + example: runs/42/model/weights.pt + type: string + responses: + "200": + content: + application/octet-stream: + examples: + default: + value: "" + schema: + format: binary + type: string + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Get Model Lab artifact content + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/facet-keys: + get: + description: List all available facet keys for filtering Model Lab runs. + operationId: ListModelLabRunFacetKeys + parameters: + - description: Filter by project ID. + in: query + name: filter[project_id] + required: true + schema: + example: 101 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + metrics: + - accuracy + - loss + parameters: + - learning_rate + - algorithm + tags: + - model + - stage + id: "1" + type: facet_keys + schema: + $ref: "#/components/schemas/ModelLabFacetKeysResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List Model Lab run facet keys + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/facet-values: + get: + description: List available facet values for a specific run facet key. + operationId: ListModelLabRunFacetValues + parameters: + - description: Filter by project ID. + in: query + name: filter[project_id] + required: true + schema: + example: 101 + format: int64 + type: integer + - description: "Facet type. Valid values: parameter, attribute, tag, metric." + in: query + name: facet_type + required: true + schema: + $ref: "#/components/schemas/ModelLabFacetType" + - description: Facet name. + in: query + name: facet_name + required: true + schema: + example: algorithm + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + facet_name: algorithm + facet_type: parameter + values: + - gpt4 + - dbscan + id: "1" + type: facet_values + schema: + $ref: "#/components/schemas/ModelLabFacetValuesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List Model Lab run facet values + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/project-facet-keys: + get: + description: List all available facet keys for filtering Model Lab projects. + operationId: ListModelLabProjectFacetKeys + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + metrics: [] + parameters: [] + tags: + - model + - stage + id: "1" + type: facet_keys + schema: + $ref: "#/components/schemas/ModelLabFacetKeysResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List Model Lab project facet keys + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/project-facet-values: + get: + description: List available facet values for a specific project facet key. + operationId: ListModelLabProjectFacetValues + parameters: + - description: "Facet type. Valid values: tag." + in: query + name: facet_type + required: true + schema: + $ref: "#/components/schemas/ModelLabProjectFacetType" + - description: Facet name. + in: query + name: facet_name + required: true + schema: + example: model + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + facet_name: model + facet_type: tag + values: + - opus + - gpt4 + id: "1" + type: facet_values + schema: + $ref: "#/components/schemas/ModelLabFacetValuesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List Model Lab project facet values + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/projects: + get: + description: List all Model Lab projects for the current organization. + operationId: ListModelLabProjects + parameters: + - description: Text search filter for project name or description. + in: query + name: filter + required: false + schema: + type: string + - description: Filter by owner UUID. + in: query + name: filter[owner_id] + required: false + schema: + format: uuid + type: string + - description: "Filter by tags. Format: key:value,key2:value2." + in: query + name: filter[tags] + required: false + schema: + type: string + - description: "Sort field. Valid values: name, created_at, updated_at. Prefix with '-' for descending order (e.g., -updated_at)." + in: query + name: sort + required: false + schema: + default: "-updated_at" + type: string + - description: Number of items per page. Maximum is 100. + in: query + name: page[size] + required: false + schema: + default: 25 + maximum: 100 + type: integer + - description: Page number (1-indexed). + in: query + name: page[number] + required: false + schema: + default: 1 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + artifact_storage_location: s3://bucket/active-project + created_at: "2024-01-20T10:00:00Z" + description: A machine learning training project. + is_starred: false + name: active-project + tags: + - key: model + value: opus + updated_at: "2024-01-20T11:00:00Z" + id: "2" + type: projects + meta: + page: + number: 1 + size: 25 + total: 1 + schema: + $ref: "#/components/schemas/ModelLabProjectsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List Model Lab projects + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/projects/{project_id}: + get: + description: Get a single Model Lab project by its ID. + operationId: GetModelLabProject + parameters: + - $ref: "#/components/parameters/ModelLabProjectIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + artifact_storage_location: s3://bucket/active-project + created_at: "2024-01-20T10:00:00Z" + description: A machine learning training project. + is_starred: false + name: active-project + tags: + - key: model + value: opus + updated_at: "2024-01-20T11:00:00Z" + id: "2" + type: projects + schema: + $ref: "#/components/schemas/ModelLabProjectResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Get a Model Lab project + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/projects/{project_id}/artifacts: + get: + description: List all artifact files for a specific Model Lab project. + operationId: ListModelLabProjectArtifacts + parameters: + - $ref: "#/components/parameters/ModelLabProjectIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + files: + - artifact_path: projects/1/artifacts/model.pkl + created_at: "2024-01-20T10:00:00Z" + file_size: 204800 + filename: model.pkl + id: "1" + type: project_files + schema: + $ref: "#/components/schemas/ModelLabProjectArtifactsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List Model Lab project artifacts + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/projects/{project_id}/star: + delete: + description: Remove the star from a Model Lab project for the current user. + operationId: UnstarModelLabProject + parameters: + - $ref: "#/components/parameters/ModelLabProjectIDPathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Remove star from a Model Lab project + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Star a Model Lab project for the current user. + operationId: StarModelLabProject + parameters: + - $ref: "#/components/parameters/ModelLabProjectIDPathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Star a Model Lab project + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/runs: + get: + description: List all Model Lab runs for the current organization. + operationId: ListModelLabRuns + parameters: + - description: Filter by run ID(s). Comma-separated list for multiple IDs. + in: query + name: filter[id] + required: false + schema: + type: string + - description: Text search filter for run name or description. + in: query + name: filter + required: false + schema: + type: string + - description: Filter by owner UUID. + in: query + name: filter[owner_id] + required: false + schema: + type: string + - description: "Filter by run status. Valid values: pending, running, completed, failed, killed, unresponsive, paused." + in: query + name: filter[status] + required: false + schema: + $ref: "#/components/schemas/ModelLabRunStatus" + - description: Filter by project ID. + in: query + name: filter[project_id] + required: false + schema: + format: int64 + type: integer + - description: "Filter by tags. Format: key:value,key2:value2." + in: query + name: filter[tags] + required: false + schema: + type: string + - description: "Filter by params. Format: key:value,key2:>0.5,key3:true." + in: query + name: filter[params] + required: false + schema: + type: string + - description: Filter by parent run ID. Use 'null' to return only root runs (runs with no parent). + in: query + name: filter[parent_run_id] + required: false + schema: + type: string + - description: Sort pinned runs before non-pinned runs. Pinned runs are ordered by pin time descending. + in: query + name: pinned_first + required: false + schema: + type: boolean + - description: Include all runs pinned by the current user, regardless of other filters. + in: query + name: include_pinned + required: false + schema: + type: boolean + - description: When true, also return runs whose descendants match the active filters. The descendant_match field in each result indicates whether the run was included via a descendant match. + in: query + name: include_descendant_matches + required: false + schema: + type: boolean + - description: "Sort field. Valid values: name, created_at, updated_at, duration. Prefix with '-' for descending order (e.g., -updated_at)." + in: query + name: sort + required: false + schema: + default: "-updated_at" + type: string + - description: Number of items per page. Maximum is 100. + in: query + name: page[size] + required: false + schema: + default: 25 + maximum: 100 + type: integer + - description: Page number (1-indexed). + in: query + name: page[number] + required: false + schema: + default: 1 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-20T10:00:00Z" + descendant_match: false + description: Fine-tuning run with custom hyperparameters. + has_children: false + is_pinned: false + metric_summaries: [] + mlflow_artifact_location: s3://bucket/active-run + name: active-run + params: + - key: algorithm + value: gpt4 + project_id: 101 + started_at: "2024-01-20T10:00:00Z" + status: running + tags: + - key: model + value: opus + updated_at: "2024-01-20T11:00:00Z" + id: "2" + type: runs + meta: + page: + number: 1 + size: 25 + total: 1 + schema: + $ref: "#/components/schemas/ModelLabRunsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List Model Lab runs + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/runs/{run_id}: + delete: + description: Delete a Model Lab run by its ID. + operationId: DeleteModelLabRun + parameters: + - $ref: "#/components/parameters/ModelLabRunIDPathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Delete a Model Lab run + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a single Model Lab run by its ID. + operationId: GetModelLabRun + parameters: + - $ref: "#/components/parameters/ModelLabRunIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-20T10:00:00Z" + descendant_match: false + description: Fine-tuning run with custom hyperparameters. + has_children: false + is_pinned: false + metric_summaries: [] + mlflow_artifact_location: s3://bucket/active-run + name: active-run + params: + - key: algorithm + value: gpt4 + project_id: 101 + started_at: "2024-01-20T10:00:00Z" + status: running + tags: + - key: model + value: opus + updated_at: "2024-01-20T11:00:00Z" + id: "2" + type: runs + schema: + $ref: "#/components/schemas/ModelLabRunResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Get a Model Lab run + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/runs/{run_id}/artifacts: + get: + description: List artifact files for a specific Model Lab run. + operationId: ListModelLabRunArtifacts + parameters: + - $ref: "#/components/parameters/ModelLabRunIDPathParameter" + - description: Optional subdirectory path within the run's artifacts. + in: query + name: path + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + files: + - file_size: 204800 + is_dir: false + path: model/weights.pt + - is_dir: true + path: model + path_in_project: runs/42 + id: "42" + type: artifacts + schema: + $ref: "#/components/schemas/ModelLabRunArtifactsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List Model Lab run artifacts + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/runs/{run_id}/pin: + delete: + description: Remove the pin from a Model Lab run for the current user. + operationId: UnpinModelLabRun + parameters: + - $ref: "#/components/parameters/ModelLabRunIDPathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Unpin a Model Lab run + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Pin a Model Lab run for the current user. + operationId: PinModelLabRun + parameters: + - $ref: "#/components/parameters/ModelLabRunIDPathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Pin a Model Lab run + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/monitor/notification_rule: get: description: Returns a list of all monitor notification rules. @@ -154768,6 +153282,8 @@ tags: description: For more information about the Datadog Microsoft Teams integration, see the integration page. url: https://docs.datadoghq.com/integrations/microsoft_teams/ name: Microsoft Teams Integration + - description: Manage Model Lab projects, runs, artifacts, and facets for ML experiment tracking. + name: Model Lab API - description: |- [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and notifies your team when a defined threshold has exceeded. diff --git a/docs/datadog_api_client.v2.api.rst b/docs/datadog_api_client.v2.api.rst index beff7d5fe4..f97716ab7f 100644 --- a/docs/datadog_api_client.v2.api.rst +++ b/docs/datadog_api_client.v2.api.rst @@ -445,6 +445,13 @@ datadog\_api\_client.v2.api.microsoft\_teams\_integration\_api module :members: :show-inheritance: +datadog\_api\_client.v2.api.model\_lab\_api\_api module +------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.api.model_lab_api_api + :members: + :show-inheritance: + datadog\_api\_client.v2.api.monitors\_api module ------------------------------------------------ diff --git a/docs/datadog_api_client.v2.model.rst b/docs/datadog_api_client.v2.model.rst index 9359c8014e..eef846ff92 100644 --- a/docs/datadog_api_client.v2.model.rst +++ b/docs/datadog_api_client.v2.model.rst @@ -1964,118 +1964,6 @@ datadog\_api\_client.v2.model.auto\_transition\_assigned\_cases module :members: :show-inheritance: -datadog\_api\_client.v2.model.automation\_rule module ------------------------------------------------------ - -.. automodule:: datadog_api_client.v2.model.automation_rule - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.automation\_rule\_action module -------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.automation_rule_action - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.automation\_rule\_action\_data module -------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.automation_rule_action_data - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.automation\_rule\_action\_type module -------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.automation_rule_action_type - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.automation\_rule\_attributes module ------------------------------------------------------------------ - -.. automodule:: datadog_api_client.v2.model.automation_rule_attributes - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.automation\_rule\_create module -------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.automation_rule_create - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.automation\_rule\_create\_attributes module -------------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.automation_rule_create_attributes - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.automation\_rule\_create\_request module ----------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.automation_rule_create_request - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.automation\_rule\_relationships module --------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.automation_rule_relationships - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.automation\_rule\_response module ---------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.automation_rule_response - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.automation\_rule\_trigger module --------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.automation_rule_trigger - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.automation\_rule\_trigger\_data module --------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.automation_rule_trigger_data - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.automation\_rule\_trigger\_type module --------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.automation_rule_trigger_type - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.automation\_rule\_update module -------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.automation_rule_update - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.automation\_rule\_update\_request module ----------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.automation_rule_update_request - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.automation\_rules\_response module ----------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.automation_rules_response - :members: - :show-inheritance: - datadog\_api\_client.v2.model.aws\_account\_create\_request module ------------------------------------------------------------------ @@ -3616,69 +3504,6 @@ datadog\_api\_client.v2.model.case3rd\_party\_ticket\_status module :members: :show-inheritance: -datadog\_api\_client.v2.model.case\_aggregate\_group module ------------------------------------------------------------ - -.. automodule:: datadog_api_client.v2.model.case_aggregate_group - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_aggregate\_group\_by module ---------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_aggregate_group_by - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_aggregate\_request module -------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_aggregate_request - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_aggregate\_request\_attributes module -------------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_aggregate_request_attributes - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_aggregate\_request\_data module -------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_aggregate_request_data - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_aggregate\_resource\_type module --------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_aggregate_resource_type - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_aggregate\_response module --------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_aggregate_response - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_aggregate\_response\_attributes module --------------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_aggregate_response_attributes - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_aggregate\_response\_data module --------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_aggregate_response_data - :members: - :show-inheritance: - datadog\_api\_client.v2.model.case\_assign module ------------------------------------------------- @@ -3707,55 +3532,6 @@ datadog\_api\_client.v2.model.case\_attributes module :members: :show-inheritance: -datadog\_api\_client.v2.model.case\_automation\_rule\_resource\_type module ---------------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_automation_rule_resource_type - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_automation\_rule\_state module ------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_automation_rule_state - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_bulk\_action\_type module -------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_bulk_action_type - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_bulk\_resource\_type module ---------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_bulk_resource_type - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_bulk\_update\_request module ----------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_bulk_update_request - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_bulk\_update\_request\_attributes module ----------------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_bulk_update_request_attributes - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_bulk\_update\_request\_data module ----------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_bulk_update_request_data - :members: - :show-inheritance: - datadog\_api\_client.v2.model.case\_comment module -------------------------------------------------- @@ -3777,41 +3553,6 @@ datadog\_api\_client.v2.model.case\_comment\_request module :members: :show-inheritance: -datadog\_api\_client.v2.model.case\_count\_group module -------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_count_group - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_count\_group\_value module --------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_count_group_value - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_count\_response module ----------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_count_response - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_count\_response\_attributes module ----------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_count_response_attributes - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_count\_response\_data module ----------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_count_response_data - :members: - :show-inheritance: - datadog\_api\_client.v2.model.case\_create module ------------------------------------------------- @@ -3861,34 +3602,6 @@ datadog\_api\_client.v2.model.case\_empty\_request module :members: :show-inheritance: -datadog\_api\_client.v2.model.case\_insight module --------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_insight - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_insight\_type module --------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_insight_type - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_insights\_attributes module ---------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_insights_attributes - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_insights\_data module ---------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_insights_data - :members: - :show-inheritance: - datadog\_api\_client.v2.model.case\_insights\_items module ---------------------------------------------------------- @@ -3896,62 +3609,6 @@ datadog\_api\_client.v2.model.case\_insights\_items module :members: :show-inheritance: -datadog\_api\_client.v2.model.case\_insights\_request module ------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_insights_request - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_link module ------------------------------------------------ - -.. automodule:: datadog_api_client.v2.model.case_link - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_link\_attributes module ------------------------------------------------------------ - -.. automodule:: datadog_api_client.v2.model.case_link_attributes - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_link\_create module -------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_link_create - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_link\_create\_request module ----------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_link_create_request - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_link\_resource\_type module ---------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_link_resource_type - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_link\_response module ---------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_link_response - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_links\_response module ----------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_links_response - :members: - :show-inheritance: - datadog\_api\_client.v2.model.case\_management\_project module -------------------------------------------------------------- @@ -4190,20 +3847,6 @@ datadog\_api\_client.v2.model.case\_type\_response module :members: :show-inheritance: -datadog\_api\_client.v2.model.case\_type\_update module -------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_type_update - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_type\_update\_request module ----------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_type_update_request - :members: - :show-inheritance: - datadog\_api\_client.v2.model.case\_types\_response module ---------------------------------------------------------- @@ -4232,27 +3875,6 @@ datadog\_api\_client.v2.model.case\_update\_attributes\_request module :members: :show-inheritance: -datadog\_api\_client.v2.model.case\_update\_comment module ----------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_update_comment - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_update\_comment\_attributes module ----------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_update_comment_attributes - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_update\_comment\_request module -------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_update_comment_request - :members: - :show-inheritance: - datadog\_api\_client.v2.model.case\_update\_custom\_attribute module -------------------------------------------------------------------- @@ -4288,27 +3910,6 @@ datadog\_api\_client.v2.model.case\_update\_description\_request module :members: :show-inheritance: -datadog\_api\_client.v2.model.case\_update\_due\_date module ------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_update_due_date - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_update\_due\_date\_attributes module ------------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_update_due_date_attributes - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_update\_due\_date\_request module ---------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_update_due_date_request - :members: - :show-inheritance: - datadog\_api\_client.v2.model.case\_update\_priority module ----------------------------------------------------------- @@ -4330,27 +3931,6 @@ datadog\_api\_client.v2.model.case\_update\_priority\_request module :members: :show-inheritance: -datadog\_api\_client.v2.model.case\_update\_resolved\_reason module -------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_update_resolved_reason - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_update\_resolved\_reason\_attributes module -------------------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_update_resolved_reason_attributes - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_update\_resolved\_reason\_request module ----------------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_update_resolved_reason_request - :members: - :show-inheritance: - datadog\_api\_client.v2.model.case\_update\_status module --------------------------------------------------------- @@ -4393,125 +3973,6 @@ datadog\_api\_client.v2.model.case\_update\_title\_request module :members: :show-inheritance: -datadog\_api\_client.v2.model.case\_view module ------------------------------------------------ - -.. automodule:: datadog_api_client.v2.model.case_view - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_view\_attributes module ------------------------------------------------------------ - -.. automodule:: datadog_api_client.v2.model.case_view_attributes - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_view\_create module -------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_view_create - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_view\_create\_attributes module -------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_view_create_attributes - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_view\_create\_request module ----------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_view_create_request - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_view\_relationships module --------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_view_relationships - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_view\_resource\_type module ---------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_view_resource_type - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_view\_response module ---------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_view_response - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_view\_update module -------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_view_update - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_view\_update\_attributes module -------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_view_update_attributes - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_view\_update\_request module ----------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_view_update_request - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_views\_response module ----------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_views_response - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_watcher module --------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_watcher - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_watcher\_relationships module ------------------------------------------------------------------ - -.. automodule:: datadog_api_client.v2.model.case_watcher_relationships - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_watcher\_resource\_type module ------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_watcher_resource_type - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_watcher\_user\_relationship module ----------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_watcher_user_relationship - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.case\_watchers\_response module -------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.case_watchers_response - :members: - :show-inheritance: - datadog\_api\_client.v2.model.cases\_response module ---------------------------------------------------- @@ -8684,27 +8145,6 @@ datadog\_api\_client.v2.model.custom\_attribute\_config\_response module :members: :show-inheritance: -datadog\_api\_client.v2.model.custom\_attribute\_config\_update module ----------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.custom_attribute_config_update - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.custom\_attribute\_config\_update\_attributes module ----------------------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.custom_attribute_config_update_attributes - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.custom\_attribute\_config\_update\_request module -------------------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.custom_attribute_config_update_request - :members: - :show-inheritance: - datadog\_api\_client.v2.model.custom\_attribute\_configs\_response module ------------------------------------------------------------------------- @@ -8712,13 +8152,6 @@ datadog\_api\_client.v2.model.custom\_attribute\_configs\_response module :members: :show-inheritance: -datadog\_api\_client.v2.model.custom\_attribute\_select\_option module ----------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.custom_attribute_select_option - :members: - :show-inheritance: - datadog\_api\_client.v2.model.custom\_attribute\_type module ------------------------------------------------------------ @@ -8726,13 +8159,6 @@ datadog\_api\_client.v2.model.custom\_attribute\_type module :members: :show-inheritance: -datadog\_api\_client.v2.model.custom\_attribute\_type\_data module ------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.custom_attribute_type_data - :members: - :show-inheritance: - datadog\_api\_client.v2.model.custom\_attribute\_value module ------------------------------------------------------------- @@ -19719,161 +19145,84 @@ datadog\_api\_client.v2.model.maintenance\_data module datadog\_api\_client.v2.model.maintenance\_data\_attributes module ------------------------------------------------------------------ -.. automodule:: datadog_api_client.v2.model.maintenance_data_attributes - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.maintenance\_data\_attributes\_components\_affected\_items module ------------------------------------------------------------------------------------------------ - -.. automodule:: datadog_api_client.v2.model.maintenance_data_attributes_components_affected_items - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.maintenance\_data\_attributes\_status module --------------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.maintenance_data_attributes_status - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.maintenance\_data\_attributes\_updates\_items module ----------------------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.maintenance_data_attributes_updates_items - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.maintenance\_data\_attributes\_updates\_items\_components\_affected\_items module ---------------------------------------------------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.maintenance_data_attributes_updates_items_components_affected_items - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.maintenance\_data\_relationships module ---------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.maintenance_data_relationships - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.maintenance\_data\_relationships\_created\_by\_user module ----------------------------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.maintenance_data_relationships_created_by_user - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.maintenance\_data\_relationships\_created\_by\_user\_data module ----------------------------------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.maintenance_data_relationships_created_by_user_data - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.maintenance\_data\_relationships\_last\_modified\_by\_user module ------------------------------------------------------------------------------------------------ - -.. automodule:: datadog_api_client.v2.model.maintenance_data_relationships_last_modified_by_user - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.maintenance\_data\_relationships\_last\_modified\_by\_user\_data module ------------------------------------------------------------------------------------------------------ - -.. automodule:: datadog_api_client.v2.model.maintenance_data_relationships_last_modified_by_user_data - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.maintenance\_data\_relationships\_status\_page module ------------------------------------------------------------------------------------ - -.. automodule:: datadog_api_client.v2.model.maintenance_data_relationships_status_page - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.maintenance\_data\_relationships\_status\_page\_data module ------------------------------------------------------------------------------------------ - -.. automodule:: datadog_api_client.v2.model.maintenance_data_relationships_status_page_data +.. automodule:: datadog_api_client.v2.model.maintenance_data_attributes :members: :show-inheritance: -datadog\_api\_client.v2.model.maintenance\_window module --------------------------------------------------------- +datadog\_api\_client.v2.model.maintenance\_data\_attributes\_components\_affected\_items module +----------------------------------------------------------------------------------------------- -.. automodule:: datadog_api_client.v2.model.maintenance_window +.. automodule:: datadog_api_client.v2.model.maintenance_data_attributes_components_affected_items :members: :show-inheritance: -datadog\_api\_client.v2.model.maintenance\_window\_attributes module --------------------------------------------------------------------- +datadog\_api\_client.v2.model.maintenance\_data\_attributes\_status module +-------------------------------------------------------------------------- -.. automodule:: datadog_api_client.v2.model.maintenance_window_attributes +.. automodule:: datadog_api_client.v2.model.maintenance_data_attributes_status :members: :show-inheritance: -datadog\_api\_client.v2.model.maintenance\_window\_create module ----------------------------------------------------------------- +datadog\_api\_client.v2.model.maintenance\_data\_attributes\_updates\_items module +---------------------------------------------------------------------------------- -.. automodule:: datadog_api_client.v2.model.maintenance_window_create +.. automodule:: datadog_api_client.v2.model.maintenance_data_attributes_updates_items :members: :show-inheritance: -datadog\_api\_client.v2.model.maintenance\_window\_create\_attributes module ----------------------------------------------------------------------------- +datadog\_api\_client.v2.model.maintenance\_data\_attributes\_updates\_items\_components\_affected\_items module +--------------------------------------------------------------------------------------------------------------- -.. automodule:: datadog_api_client.v2.model.maintenance_window_create_attributes +.. automodule:: datadog_api_client.v2.model.maintenance_data_attributes_updates_items_components_affected_items :members: :show-inheritance: -datadog\_api\_client.v2.model.maintenance\_window\_create\_request module -------------------------------------------------------------------------- +datadog\_api\_client.v2.model.maintenance\_data\_relationships module +--------------------------------------------------------------------- -.. automodule:: datadog_api_client.v2.model.maintenance_window_create_request +.. automodule:: datadog_api_client.v2.model.maintenance_data_relationships :members: :show-inheritance: -datadog\_api\_client.v2.model.maintenance\_window\_resource\_type module ------------------------------------------------------------------------- +datadog\_api\_client.v2.model.maintenance\_data\_relationships\_created\_by\_user module +---------------------------------------------------------------------------------------- -.. automodule:: datadog_api_client.v2.model.maintenance_window_resource_type +.. automodule:: datadog_api_client.v2.model.maintenance_data_relationships_created_by_user :members: :show-inheritance: -datadog\_api\_client.v2.model.maintenance\_window\_response module ------------------------------------------------------------------- +datadog\_api\_client.v2.model.maintenance\_data\_relationships\_created\_by\_user\_data module +---------------------------------------------------------------------------------------------- -.. automodule:: datadog_api_client.v2.model.maintenance_window_response +.. automodule:: datadog_api_client.v2.model.maintenance_data_relationships_created_by_user_data :members: :show-inheritance: -datadog\_api\_client.v2.model.maintenance\_window\_update module ----------------------------------------------------------------- +datadog\_api\_client.v2.model.maintenance\_data\_relationships\_last\_modified\_by\_user module +----------------------------------------------------------------------------------------------- -.. automodule:: datadog_api_client.v2.model.maintenance_window_update +.. automodule:: datadog_api_client.v2.model.maintenance_data_relationships_last_modified_by_user :members: :show-inheritance: -datadog\_api\_client.v2.model.maintenance\_window\_update\_attributes module ----------------------------------------------------------------------------- +datadog\_api\_client.v2.model.maintenance\_data\_relationships\_last\_modified\_by\_user\_data module +----------------------------------------------------------------------------------------------------- -.. automodule:: datadog_api_client.v2.model.maintenance_window_update_attributes +.. automodule:: datadog_api_client.v2.model.maintenance_data_relationships_last_modified_by_user_data :members: :show-inheritance: -datadog\_api\_client.v2.model.maintenance\_window\_update\_request module -------------------------------------------------------------------------- +datadog\_api\_client.v2.model.maintenance\_data\_relationships\_status\_page module +----------------------------------------------------------------------------------- -.. automodule:: datadog_api_client.v2.model.maintenance_window_update_request +.. automodule:: datadog_api_client.v2.model.maintenance_data_relationships_status_page :members: :show-inheritance: -datadog\_api\_client.v2.model.maintenance\_windows\_response module -------------------------------------------------------------------- +datadog\_api\_client.v2.model.maintenance\_data\_relationships\_status\_page\_data module +----------------------------------------------------------------------------------------- -.. automodule:: datadog_api_client.v2.model.maintenance_windows_response +.. automodule:: datadog_api_client.v2.model.maintenance_data_relationships_status_page_data :members: :show-inheritance: @@ -20829,6 +20178,279 @@ datadog\_api\_client.v2.model.microsoft\_teams\_workflows\_webhook\_response\_at :members: :show-inheritance: +datadog\_api\_client.v2.model.model\_lab\_artifact\_info module +--------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_artifact_info + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_artifact\_object\_info module +----------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_artifact_object_info + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_facet\_keys\_attributes module +------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.model_lab_facet_keys_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_facet\_keys\_data module +------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.model_lab_facet_keys_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_facet\_keys\_response module +---------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_facet_keys_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_facet\_keys\_type module +------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.model_lab_facet_keys_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_facet\_type module +------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.model_lab_facet_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_facet\_values\_attributes module +-------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_facet_values_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_facet\_values\_data module +-------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_facet_values_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_facet\_values\_response module +------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.model_lab_facet_values_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_facet\_values\_type module +-------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_facet_values_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_metric\_stat\_range module +-------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_metric_stat_range + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_metric\_summary module +---------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_metric_summary + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_numeric\_range module +--------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_numeric_range + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_page\_meta module +----------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_page_meta + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_page\_meta\_page module +----------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_page_meta_page + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_pagination\_links module +------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.model_lab_pagination_links + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_project\_artifacts\_attributes module +------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_project_artifacts_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_project\_artifacts\_data module +------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_project_artifacts_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_project\_artifacts\_response module +----------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_project_artifacts_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_project\_artifacts\_type module +------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_project_artifacts_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_project\_attributes module +-------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_project_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_project\_data module +-------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_project_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_project\_facet\_type module +--------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_project_facet_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_project\_response module +------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.model_lab_project_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_project\_type module +-------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_project_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_projects\_response module +------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_projects_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_run\_artifacts\_attributes module +--------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_run_artifacts_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_run\_artifacts\_data module +--------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_run_artifacts_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_run\_artifacts\_response module +------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_run_artifacts_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_run\_artifacts\_type module +--------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_run_artifacts_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_run\_attributes module +---------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_run_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_run\_data module +---------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_run_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_run\_param module +----------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_run_param + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_run\_response module +-------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_run_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_run\_status module +------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.model_lab_run_status + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_run\_type module +---------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_run_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_runs\_response module +--------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_runs_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.model\_lab\_tag module +---------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.model_lab_tag + :members: + :show-inheritance: + datadog\_api\_client.v2.model.monitor\_alert\_trigger\_attributes module ------------------------------------------------------------------------ @@ -26177,27 +25799,6 @@ datadog\_api\_client.v2.model.project\_create\_request module :members: :show-inheritance: -datadog\_api\_client.v2.model.project\_favorite module ------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.project_favorite - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.project\_favorite\_resource\_type module ----------------------------------------------------------------------- - -.. automodule:: datadog_api_client.v2.model.project_favorite_resource_type - :members: - :show-inheritance: - -datadog\_api\_client.v2.model.project\_favorites\_response module ------------------------------------------------------------------ - -.. automodule:: datadog_api_client.v2.model.project_favorites_response - :members: - :show-inheritance: - datadog\_api\_client.v2.model.project\_notification\_settings module -------------------------------------------------------------------- diff --git a/examples/v2/case-management-attribute/UpdateCustomAttributeConfig.py b/examples/v2/case-management-attribute/UpdateCustomAttributeConfig.py deleted file mode 100644 index b9c07f0d9f..0000000000 --- a/examples/v2/case-management-attribute/UpdateCustomAttributeConfig.py +++ /dev/null @@ -1,41 +0,0 @@ -""" -Update custom attribute config returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_attribute_api import CaseManagementAttributeApi -from datadog_api_client.v2.model.custom_attribute_config_resource_type import CustomAttributeConfigResourceType -from datadog_api_client.v2.model.custom_attribute_config_update import CustomAttributeConfigUpdate -from datadog_api_client.v2.model.custom_attribute_config_update_attributes import CustomAttributeConfigUpdateAttributes -from datadog_api_client.v2.model.custom_attribute_config_update_request import CustomAttributeConfigUpdateRequest -from datadog_api_client.v2.model.custom_attribute_select_option import CustomAttributeSelectOption -from datadog_api_client.v2.model.custom_attribute_type import CustomAttributeType -from datadog_api_client.v2.model.custom_attribute_type_data import CustomAttributeTypeData - -body = CustomAttributeConfigUpdateRequest( - data=CustomAttributeConfigUpdate( - attributes=CustomAttributeConfigUpdateAttributes( - description="Updated description.", - display_name="AWS Region", - type=CustomAttributeType.NUMBER, - type_data=CustomAttributeTypeData( - options=[ - CustomAttributeSelectOption( - value="us-east-1", - ), - ], - ), - ), - type=CustomAttributeConfigResourceType.CUSTOM_ATTRIBUTE, - ), -) - -configuration = Configuration() -configuration.unstable_operations["update_custom_attribute_config"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementAttributeApi(api_client) - response = api_instance.update_custom_attribute_config( - case_type_id="case_type_id", custom_attribute_id="custom_attribute_id", body=body - ) - - print(response) diff --git a/examples/v2/case-management-type/UpdateCaseType.py b/examples/v2/case-management-type/UpdateCaseType.py deleted file mode 100644 index e8fd717d25..0000000000 --- a/examples/v2/case-management-type/UpdateCaseType.py +++ /dev/null @@ -1,29 +0,0 @@ -""" -Update a case type returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_type_api import CaseManagementTypeApi -from datadog_api_client.v2.model.case_type_resource_attributes import CaseTypeResourceAttributes -from datadog_api_client.v2.model.case_type_resource_type import CaseTypeResourceType -from datadog_api_client.v2.model.case_type_update import CaseTypeUpdate -from datadog_api_client.v2.model.case_type_update_request import CaseTypeUpdateRequest - -body = CaseTypeUpdateRequest( - data=CaseTypeUpdate( - attributes=CaseTypeResourceAttributes( - description="Investigations done in case management", - emoji="🕵🏻\u200d♂️", - name="Investigation", - ), - type=CaseTypeResourceType.CASE_TYPE, - ), -) - -configuration = Configuration() -configuration.unstable_operations["update_case_type"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementTypeApi(api_client) - response = api_instance.update_case_type(case_type_id="case_type_id", body=body) - - print(response) diff --git a/examples/v2/case-management/AddCaseInsights.py b/examples/v2/case-management/AddCaseInsights.py deleted file mode 100644 index 23d03eb654..0000000000 --- a/examples/v2/case-management/AddCaseInsights.py +++ /dev/null @@ -1,35 +0,0 @@ -""" -Add insights to a case returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi -from datadog_api_client.v2.model.case_insight import CaseInsight -from datadog_api_client.v2.model.case_insight_type import CaseInsightType -from datadog_api_client.v2.model.case_insights_attributes import CaseInsightsAttributes -from datadog_api_client.v2.model.case_insights_data import CaseInsightsData -from datadog_api_client.v2.model.case_insights_request import CaseInsightsRequest -from datadog_api_client.v2.model.case_resource_type import CaseResourceType - -body = CaseInsightsRequest( - data=CaseInsightsData( - attributes=CaseInsightsAttributes( - insights=[ - CaseInsight( - ref="/monitors/12345?q=total", - resource_id="12345", - type=CaseInsightType.SECURITY_SIGNAL, - ), - ], - ), - type=CaseResourceType.CASE, - ), -) - -configuration = Configuration() -configuration.unstable_operations["add_case_insights"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.add_case_insights(case_id="case_id", body=body) - - print(response) diff --git a/examples/v2/case-management/AggregateCases.py b/examples/v2/case-management/AggregateCases.py deleted file mode 100644 index 8f2186119a..0000000000 --- a/examples/v2/case-management/AggregateCases.py +++ /dev/null @@ -1,34 +0,0 @@ -""" -Aggregate cases returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi -from datadog_api_client.v2.model.case_aggregate_group_by import CaseAggregateGroupBy -from datadog_api_client.v2.model.case_aggregate_request import CaseAggregateRequest -from datadog_api_client.v2.model.case_aggregate_request_attributes import CaseAggregateRequestAttributes -from datadog_api_client.v2.model.case_aggregate_request_data import CaseAggregateRequestData -from datadog_api_client.v2.model.case_aggregate_resource_type import CaseAggregateResourceType - -body = CaseAggregateRequest( - data=CaseAggregateRequestData( - attributes=CaseAggregateRequestAttributes( - group_by=CaseAggregateGroupBy( - groups=[ - "status", - ], - limit=14, - ), - query_filter="service:case-api", - ), - type=CaseAggregateResourceType.AGGREGATE, - ), -) - -configuration = Configuration() -configuration.unstable_operations["aggregate_cases"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.aggregate_cases(body=body) - - print(response) diff --git a/examples/v2/case-management/BulkUpdateCases.py b/examples/v2/case-management/BulkUpdateCases.py deleted file mode 100644 index af1299b5a1..0000000000 --- a/examples/v2/case-management/BulkUpdateCases.py +++ /dev/null @@ -1,33 +0,0 @@ -""" -Bulk update cases returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi -from datadog_api_client.v2.model.case_bulk_action_type import CaseBulkActionType -from datadog_api_client.v2.model.case_bulk_resource_type import CaseBulkResourceType -from datadog_api_client.v2.model.case_bulk_update_request import CaseBulkUpdateRequest -from datadog_api_client.v2.model.case_bulk_update_request_attributes import CaseBulkUpdateRequestAttributes -from datadog_api_client.v2.model.case_bulk_update_request_data import CaseBulkUpdateRequestData - -body = CaseBulkUpdateRequest( - data=CaseBulkUpdateRequestData( - attributes=CaseBulkUpdateRequestAttributes( - case_ids=[ - "case-id-1", - "case-id-2", - ], - payload=dict( - priority="P1", - ), - type=CaseBulkActionType.PRIORITY, - ), - type=CaseBulkResourceType.BULK, - ), -) - -configuration = Configuration() -configuration.unstable_operations["bulk_update_cases"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - api_instance.bulk_update_cases(body=body) diff --git a/examples/v2/case-management/CountCases.py b/examples/v2/case-management/CountCases.py deleted file mode 100644 index d9abbef7f5..0000000000 --- a/examples/v2/case-management/CountCases.py +++ /dev/null @@ -1,14 +0,0 @@ -""" -Count cases returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["count_cases"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.count_cases() - - print(response) diff --git a/examples/v2/case-management/CreateCaseAutomationRule.py b/examples/v2/case-management/CreateCaseAutomationRule.py deleted file mode 100644 index a595ea3fdb..0000000000 --- a/examples/v2/case-management/CreateCaseAutomationRule.py +++ /dev/null @@ -1,45 +0,0 @@ -""" -Create an automation rule returns "Created" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi -from datadog_api_client.v2.model.automation_rule_action import AutomationRuleAction -from datadog_api_client.v2.model.automation_rule_action_data import AutomationRuleActionData -from datadog_api_client.v2.model.automation_rule_action_type import AutomationRuleActionType -from datadog_api_client.v2.model.automation_rule_create import AutomationRuleCreate -from datadog_api_client.v2.model.automation_rule_create_attributes import AutomationRuleCreateAttributes -from datadog_api_client.v2.model.automation_rule_create_request import AutomationRuleCreateRequest -from datadog_api_client.v2.model.automation_rule_trigger import AutomationRuleTrigger -from datadog_api_client.v2.model.automation_rule_trigger_data import AutomationRuleTriggerData -from datadog_api_client.v2.model.automation_rule_trigger_type import AutomationRuleTriggerType -from datadog_api_client.v2.model.case_automation_rule_resource_type import CaseAutomationRuleResourceType -from datadog_api_client.v2.model.case_automation_rule_state import CaseAutomationRuleState - -body = AutomationRuleCreateRequest( - data=AutomationRuleCreate( - attributes=AutomationRuleCreateAttributes( - action=AutomationRuleAction( - data=AutomationRuleActionData( - handle="workflow-handle-123", - ), - type=AutomationRuleActionType.EXECUTE_WORKFLOW, - ), - name="Auto-assign workflow", - state=CaseAutomationRuleState.ENABLED, - trigger=AutomationRuleTrigger( - data=AutomationRuleTriggerData(), - type=AutomationRuleTriggerType.CASE_CREATED, - ), - ), - type=CaseAutomationRuleResourceType.RULE, - ), -) - -configuration = Configuration() -configuration.unstable_operations["create_case_automation_rule"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.create_case_automation_rule(project_id="project_id", body=body) - - print(response) diff --git a/examples/v2/case-management/CreateCaseLink.py b/examples/v2/case-management/CreateCaseLink.py deleted file mode 100644 index 9b3fa3c4e1..0000000000 --- a/examples/v2/case-management/CreateCaseLink.py +++ /dev/null @@ -1,31 +0,0 @@ -""" -Create a case link returns "Created" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi -from datadog_api_client.v2.model.case_link_attributes import CaseLinkAttributes -from datadog_api_client.v2.model.case_link_create import CaseLinkCreate -from datadog_api_client.v2.model.case_link_create_request import CaseLinkCreateRequest -from datadog_api_client.v2.model.case_link_resource_type import CaseLinkResourceType - -body = CaseLinkCreateRequest( - data=CaseLinkCreate( - attributes=CaseLinkAttributes( - child_entity_id="4417921d-0866-4a38-822c-6f2a0f65f77d", - child_entity_type="CASE", - parent_entity_id="bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f", - parent_entity_type="CASE", - relationship="BLOCKS", - ), - type=CaseLinkResourceType.LINK, - ), -) - -configuration = Configuration() -configuration.unstable_operations["create_case_link"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.create_case_link(body=body) - - print(response) diff --git a/examples/v2/case-management/CreateCaseView.py b/examples/v2/case-management/CreateCaseView.py deleted file mode 100644 index 968988aa3d..0000000000 --- a/examples/v2/case-management/CreateCaseView.py +++ /dev/null @@ -1,29 +0,0 @@ -""" -Create a case view returns "Created" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi -from datadog_api_client.v2.model.case_view_create import CaseViewCreate -from datadog_api_client.v2.model.case_view_create_attributes import CaseViewCreateAttributes -from datadog_api_client.v2.model.case_view_create_request import CaseViewCreateRequest -from datadog_api_client.v2.model.case_view_resource_type import CaseViewResourceType - -body = CaseViewCreateRequest( - data=CaseViewCreate( - attributes=CaseViewCreateAttributes( - name="Open bugs", - project_id="e555e290-ed65-49bd-ae18-8acbfcf18db7", - query="status:open type:bug", - ), - type=CaseViewResourceType.VIEW, - ), -) - -configuration = Configuration() -configuration.unstable_operations["create_case_view"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.create_case_view(body=body) - - print(response) diff --git a/examples/v2/case-management/CreateMaintenanceWindow.py b/examples/v2/case-management/CreateMaintenanceWindow.py deleted file mode 100644 index 78e8d4e8e9..0000000000 --- a/examples/v2/case-management/CreateMaintenanceWindow.py +++ /dev/null @@ -1,32 +0,0 @@ -""" -Create a maintenance window returns "Created" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi -from datadog_api_client.v2.model.maintenance_window_create import MaintenanceWindowCreate -from datadog_api_client.v2.model.maintenance_window_create_attributes import MaintenanceWindowCreateAttributes -from datadog_api_client.v2.model.maintenance_window_create_request import MaintenanceWindowCreateRequest -from datadog_api_client.v2.model.maintenance_window_resource_type import MaintenanceWindowResourceType -from datetime import datetime -from dateutil.tz import tzutc - -body = MaintenanceWindowCreateRequest( - data=MaintenanceWindowCreate( - attributes=MaintenanceWindowCreateAttributes( - end_at=datetime(2026, 6, 1, 6, 0, tzinfo=tzutc()), - name="Weekly maintenance", - query="project:SEC", - start_at=datetime(2026, 6, 1, 0, 0, tzinfo=tzutc()), - ), - type=MaintenanceWindowResourceType.MAINTENANCE_WINDOW, - ), -) - -configuration = Configuration() -configuration.unstable_operations["create_maintenance_window"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.create_maintenance_window(body=body) - - print(response) diff --git a/examples/v2/case-management/DeleteCaseAutomationRule.py b/examples/v2/case-management/DeleteCaseAutomationRule.py deleted file mode 100644 index 62147cc666..0000000000 --- a/examples/v2/case-management/DeleteCaseAutomationRule.py +++ /dev/null @@ -1,15 +0,0 @@ -""" -Delete an automation rule returns "No Content" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["delete_case_automation_rule"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - api_instance.delete_case_automation_rule( - project_id="project_id", - rule_id="rule_id", - ) diff --git a/examples/v2/case-management/DeleteCaseLink.py b/examples/v2/case-management/DeleteCaseLink.py deleted file mode 100644 index 78f94f2113..0000000000 --- a/examples/v2/case-management/DeleteCaseLink.py +++ /dev/null @@ -1,14 +0,0 @@ -""" -Delete a case link returns "No Content" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["delete_case_link"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - api_instance.delete_case_link( - link_id="804cd682-55f6-4541-ab00-b608b282ea7d", - ) diff --git a/examples/v2/case-management/DeleteCaseView.py b/examples/v2/case-management/DeleteCaseView.py deleted file mode 100644 index 1c221288e2..0000000000 --- a/examples/v2/case-management/DeleteCaseView.py +++ /dev/null @@ -1,14 +0,0 @@ -""" -Delete a case view returns "No Content" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["delete_case_view"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - api_instance.delete_case_view( - view_id="view_id", - ) diff --git a/examples/v2/case-management/DeleteMaintenanceWindow.py b/examples/v2/case-management/DeleteMaintenanceWindow.py deleted file mode 100644 index 669bca2d44..0000000000 --- a/examples/v2/case-management/DeleteMaintenanceWindow.py +++ /dev/null @@ -1,14 +0,0 @@ -""" -Delete a maintenance window returns "No Content" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["delete_maintenance_window"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - api_instance.delete_maintenance_window( - maintenance_window_id="maintenance_window_id", - ) diff --git a/examples/v2/case-management/DisableCaseAutomationRule.py b/examples/v2/case-management/DisableCaseAutomationRule.py deleted file mode 100644 index 34025ebe1b..0000000000 --- a/examples/v2/case-management/DisableCaseAutomationRule.py +++ /dev/null @@ -1,17 +0,0 @@ -""" -Disable an automation rule returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["disable_case_automation_rule"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.disable_case_automation_rule( - project_id="project_id", - rule_id="rule_id", - ) - - print(response) diff --git a/examples/v2/case-management/EnableCaseAutomationRule.py b/examples/v2/case-management/EnableCaseAutomationRule.py deleted file mode 100644 index dbe768d417..0000000000 --- a/examples/v2/case-management/EnableCaseAutomationRule.py +++ /dev/null @@ -1,17 +0,0 @@ -""" -Enable an automation rule returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["enable_case_automation_rule"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.enable_case_automation_rule( - project_id="project_id", - rule_id="rule_id", - ) - - print(response) diff --git a/examples/v2/case-management/FavoriteCaseProject.py b/examples/v2/case-management/FavoriteCaseProject.py deleted file mode 100644 index 0e2f883b0b..0000000000 --- a/examples/v2/case-management/FavoriteCaseProject.py +++ /dev/null @@ -1,14 +0,0 @@ -""" -Favorite a project returns "No Content" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["favorite_case_project"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - api_instance.favorite_case_project( - project_id="project_id", - ) diff --git a/examples/v2/case-management/GetCaseAutomationRule.py b/examples/v2/case-management/GetCaseAutomationRule.py deleted file mode 100644 index d0bdab7a37..0000000000 --- a/examples/v2/case-management/GetCaseAutomationRule.py +++ /dev/null @@ -1,17 +0,0 @@ -""" -Get an automation rule returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["get_case_automation_rule"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.get_case_automation_rule( - project_id="project_id", - rule_id="rule_id", - ) - - print(response) diff --git a/examples/v2/case-management/GetCaseView.py b/examples/v2/case-management/GetCaseView.py deleted file mode 100644 index eca556c24b..0000000000 --- a/examples/v2/case-management/GetCaseView.py +++ /dev/null @@ -1,16 +0,0 @@ -""" -Get a case view returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["get_case_view"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.get_case_view( - view_id="view_id", - ) - - print(response) diff --git a/examples/v2/case-management/ListCaseAutomationRules.py b/examples/v2/case-management/ListCaseAutomationRules.py deleted file mode 100644 index b07bc33615..0000000000 --- a/examples/v2/case-management/ListCaseAutomationRules.py +++ /dev/null @@ -1,16 +0,0 @@ -""" -List automation rules returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["list_case_automation_rules"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.list_case_automation_rules( - project_id="project_id", - ) - - print(response) diff --git a/examples/v2/case-management/ListCaseLinks.py b/examples/v2/case-management/ListCaseLinks.py deleted file mode 100644 index 2ad218f846..0000000000 --- a/examples/v2/case-management/ListCaseLinks.py +++ /dev/null @@ -1,17 +0,0 @@ -""" -List case links returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["list_case_links"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.list_case_links( - entity_type="CASE", - entity_id="bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f", - ) - - print(response) diff --git a/examples/v2/case-management/ListCaseTimeline.py b/examples/v2/case-management/ListCaseTimeline.py deleted file mode 100644 index 46891b347a..0000000000 --- a/examples/v2/case-management/ListCaseTimeline.py +++ /dev/null @@ -1,16 +0,0 @@ -""" -Get case timeline returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["list_case_timeline"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.list_case_timeline( - case_id="case_id", - ) - - print(response) diff --git a/examples/v2/case-management/ListCaseViews.py b/examples/v2/case-management/ListCaseViews.py deleted file mode 100644 index e183d67760..0000000000 --- a/examples/v2/case-management/ListCaseViews.py +++ /dev/null @@ -1,16 +0,0 @@ -""" -List case views returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["list_case_views"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.list_case_views( - project_id="project_id", - ) - - print(response) diff --git a/examples/v2/case-management/ListCaseWatchers.py b/examples/v2/case-management/ListCaseWatchers.py deleted file mode 100644 index 6594a3f42c..0000000000 --- a/examples/v2/case-management/ListCaseWatchers.py +++ /dev/null @@ -1,16 +0,0 @@ -""" -List case watchers returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["list_case_watchers"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.list_case_watchers( - case_id="case_id", - ) - - print(response) diff --git a/examples/v2/case-management/ListMaintenanceWindows.py b/examples/v2/case-management/ListMaintenanceWindows.py deleted file mode 100644 index 0951b05b88..0000000000 --- a/examples/v2/case-management/ListMaintenanceWindows.py +++ /dev/null @@ -1,14 +0,0 @@ -""" -List maintenance windows returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["list_maintenance_windows"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.list_maintenance_windows() - - print(response) diff --git a/examples/v2/case-management/ListUserCaseProjectFavorites.py b/examples/v2/case-management/ListUserCaseProjectFavorites.py deleted file mode 100644 index 0fa246d8bb..0000000000 --- a/examples/v2/case-management/ListUserCaseProjectFavorites.py +++ /dev/null @@ -1,14 +0,0 @@ -""" -List project favorites returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["list_user_case_project_favorites"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.list_user_case_project_favorites() - - print(response) diff --git a/examples/v2/case-management/RemoveCaseInsights.py b/examples/v2/case-management/RemoveCaseInsights.py deleted file mode 100644 index 3ce13744d1..0000000000 --- a/examples/v2/case-management/RemoveCaseInsights.py +++ /dev/null @@ -1,35 +0,0 @@ -""" -Remove insights from a case returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi -from datadog_api_client.v2.model.case_insight import CaseInsight -from datadog_api_client.v2.model.case_insight_type import CaseInsightType -from datadog_api_client.v2.model.case_insights_attributes import CaseInsightsAttributes -from datadog_api_client.v2.model.case_insights_data import CaseInsightsData -from datadog_api_client.v2.model.case_insights_request import CaseInsightsRequest -from datadog_api_client.v2.model.case_resource_type import CaseResourceType - -body = CaseInsightsRequest( - data=CaseInsightsData( - attributes=CaseInsightsAttributes( - insights=[ - CaseInsight( - ref="/monitors/12345?q=total", - resource_id="12345", - type=CaseInsightType.SECURITY_SIGNAL, - ), - ], - ), - type=CaseResourceType.CASE, - ), -) - -configuration = Configuration() -configuration.unstable_operations["remove_case_insights"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.remove_case_insights(case_id="case_id", body=body) - - print(response) diff --git a/examples/v2/case-management/UnfavoriteCaseProject.py b/examples/v2/case-management/UnfavoriteCaseProject.py deleted file mode 100644 index bcf683c1a7..0000000000 --- a/examples/v2/case-management/UnfavoriteCaseProject.py +++ /dev/null @@ -1,14 +0,0 @@ -""" -Unfavorite a project returns "No Content" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["unfavorite_case_project"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - api_instance.unfavorite_case_project( - project_id="project_id", - ) diff --git a/examples/v2/case-management/UnwatchCase.py b/examples/v2/case-management/UnwatchCase.py deleted file mode 100644 index b535db4444..0000000000 --- a/examples/v2/case-management/UnwatchCase.py +++ /dev/null @@ -1,15 +0,0 @@ -""" -Unwatch a case returns "No Content" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["unwatch_case"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - api_instance.unwatch_case( - case_id="case_id", - user_uuid="user_uuid", - ) diff --git a/examples/v2/case-management/UpdateCaseAutomationRule.py b/examples/v2/case-management/UpdateCaseAutomationRule.py deleted file mode 100644 index 7637517607..0000000000 --- a/examples/v2/case-management/UpdateCaseAutomationRule.py +++ /dev/null @@ -1,45 +0,0 @@ -""" -Update an automation rule returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi -from datadog_api_client.v2.model.automation_rule_action import AutomationRuleAction -from datadog_api_client.v2.model.automation_rule_action_data import AutomationRuleActionData -from datadog_api_client.v2.model.automation_rule_action_type import AutomationRuleActionType -from datadog_api_client.v2.model.automation_rule_create_attributes import AutomationRuleCreateAttributes -from datadog_api_client.v2.model.automation_rule_trigger import AutomationRuleTrigger -from datadog_api_client.v2.model.automation_rule_trigger_data import AutomationRuleTriggerData -from datadog_api_client.v2.model.automation_rule_trigger_type import AutomationRuleTriggerType -from datadog_api_client.v2.model.automation_rule_update import AutomationRuleUpdate -from datadog_api_client.v2.model.automation_rule_update_request import AutomationRuleUpdateRequest -from datadog_api_client.v2.model.case_automation_rule_resource_type import CaseAutomationRuleResourceType -from datadog_api_client.v2.model.case_automation_rule_state import CaseAutomationRuleState - -body = AutomationRuleUpdateRequest( - data=AutomationRuleUpdate( - attributes=AutomationRuleCreateAttributes( - action=AutomationRuleAction( - data=AutomationRuleActionData( - handle="workflow-handle-123", - ), - type=AutomationRuleActionType.EXECUTE_WORKFLOW, - ), - name="Auto-assign workflow", - state=CaseAutomationRuleState.ENABLED, - trigger=AutomationRuleTrigger( - data=AutomationRuleTriggerData(), - type=AutomationRuleTriggerType.CASE_CREATED, - ), - ), - type=CaseAutomationRuleResourceType.RULE, - ), -) - -configuration = Configuration() -configuration.unstable_operations["update_case_automation_rule"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.update_case_automation_rule(project_id="project_id", rule_id="rule_id", body=body) - - print(response) diff --git a/examples/v2/case-management/UpdateCaseComment.py b/examples/v2/case-management/UpdateCaseComment.py deleted file mode 100644 index beb4cd1baf..0000000000 --- a/examples/v2/case-management/UpdateCaseComment.py +++ /dev/null @@ -1,25 +0,0 @@ -""" -Update case comment returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi -from datadog_api_client.v2.model.case_resource_type import CaseResourceType -from datadog_api_client.v2.model.case_update_comment import CaseUpdateComment -from datadog_api_client.v2.model.case_update_comment_attributes import CaseUpdateCommentAttributes -from datadog_api_client.v2.model.case_update_comment_request import CaseUpdateCommentRequest - -body = CaseUpdateCommentRequest( - data=CaseUpdateComment( - attributes=CaseUpdateCommentAttributes( - comment="Updated comment text", - ), - type=CaseResourceType.CASE, - ), -) - -configuration = Configuration() -configuration.unstable_operations["update_case_comment"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - api_instance.update_case_comment(case_id="case_id", cell_id="cell_id", body=body) diff --git a/examples/v2/case-management/UpdateCaseDueDate.py b/examples/v2/case-management/UpdateCaseDueDate.py deleted file mode 100644 index 34e06da7ca..0000000000 --- a/examples/v2/case-management/UpdateCaseDueDate.py +++ /dev/null @@ -1,27 +0,0 @@ -""" -Update case due date returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi -from datadog_api_client.v2.model.case_resource_type import CaseResourceType -from datadog_api_client.v2.model.case_update_due_date import CaseUpdateDueDate -from datadog_api_client.v2.model.case_update_due_date_attributes import CaseUpdateDueDateAttributes -from datadog_api_client.v2.model.case_update_due_date_request import CaseUpdateDueDateRequest - -body = CaseUpdateDueDateRequest( - data=CaseUpdateDueDate( - attributes=CaseUpdateDueDateAttributes( - due_date="2026-12-31", - ), - type=CaseResourceType.CASE, - ), -) - -configuration = Configuration() -configuration.unstable_operations["update_case_due_date"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.update_case_due_date(case_id="case_id", body=body) - - print(response) diff --git a/examples/v2/case-management/UpdateCaseResolvedReason.py b/examples/v2/case-management/UpdateCaseResolvedReason.py deleted file mode 100644 index 8eacd01ae7..0000000000 --- a/examples/v2/case-management/UpdateCaseResolvedReason.py +++ /dev/null @@ -1,27 +0,0 @@ -""" -Update case resolved reason returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi -from datadog_api_client.v2.model.case_resource_type import CaseResourceType -from datadog_api_client.v2.model.case_update_resolved_reason import CaseUpdateResolvedReason -from datadog_api_client.v2.model.case_update_resolved_reason_attributes import CaseUpdateResolvedReasonAttributes -from datadog_api_client.v2.model.case_update_resolved_reason_request import CaseUpdateResolvedReasonRequest - -body = CaseUpdateResolvedReasonRequest( - data=CaseUpdateResolvedReason( - attributes=CaseUpdateResolvedReasonAttributes( - security_resolved_reason="FALSE_POSITIVE", - ), - type=CaseResourceType.CASE, - ), -) - -configuration = Configuration() -configuration.unstable_operations["update_case_resolved_reason"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.update_case_resolved_reason(case_id="case_id", body=body) - - print(response) diff --git a/examples/v2/case-management/UpdateCaseView.py b/examples/v2/case-management/UpdateCaseView.py deleted file mode 100644 index 43ce1a87a2..0000000000 --- a/examples/v2/case-management/UpdateCaseView.py +++ /dev/null @@ -1,25 +0,0 @@ -""" -Update a case view returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi -from datadog_api_client.v2.model.case_view_resource_type import CaseViewResourceType -from datadog_api_client.v2.model.case_view_update import CaseViewUpdate -from datadog_api_client.v2.model.case_view_update_attributes import CaseViewUpdateAttributes -from datadog_api_client.v2.model.case_view_update_request import CaseViewUpdateRequest - -body = CaseViewUpdateRequest( - data=CaseViewUpdate( - attributes=CaseViewUpdateAttributes(), - type=CaseViewResourceType.VIEW, - ), -) - -configuration = Configuration() -configuration.unstable_operations["update_case_view"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.update_case_view(view_id="view_id", body=body) - - print(response) diff --git a/examples/v2/case-management/UpdateMaintenanceWindow.py b/examples/v2/case-management/UpdateMaintenanceWindow.py deleted file mode 100644 index d6b11c57b7..0000000000 --- a/examples/v2/case-management/UpdateMaintenanceWindow.py +++ /dev/null @@ -1,25 +0,0 @@ -""" -Update a maintenance window returns "OK" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi -from datadog_api_client.v2.model.maintenance_window_resource_type import MaintenanceWindowResourceType -from datadog_api_client.v2.model.maintenance_window_update import MaintenanceWindowUpdate -from datadog_api_client.v2.model.maintenance_window_update_attributes import MaintenanceWindowUpdateAttributes -from datadog_api_client.v2.model.maintenance_window_update_request import MaintenanceWindowUpdateRequest - -body = MaintenanceWindowUpdateRequest( - data=MaintenanceWindowUpdate( - attributes=MaintenanceWindowUpdateAttributes(), - type=MaintenanceWindowResourceType.MAINTENANCE_WINDOW, - ), -) - -configuration = Configuration() -configuration.unstable_operations["update_maintenance_window"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - response = api_instance.update_maintenance_window(maintenance_window_id="maintenance_window_id", body=body) - - print(response) diff --git a/examples/v2/case-management/WatchCase.py b/examples/v2/case-management/WatchCase.py deleted file mode 100644 index 892551b6e1..0000000000 --- a/examples/v2/case-management/WatchCase.py +++ /dev/null @@ -1,15 +0,0 @@ -""" -Watch a case returns "Created" response -""" - -from datadog_api_client import ApiClient, Configuration -from datadog_api_client.v2.api.case_management_api import CaseManagementApi - -configuration = Configuration() -configuration.unstable_operations["watch_case"] = True -with ApiClient(configuration) as api_client: - api_instance = CaseManagementApi(api_client) - api_instance.watch_case( - case_id="case_id", - user_uuid="user_uuid", - ) diff --git a/examples/v2/model-lab-api/DeleteModelLabRun.py b/examples/v2/model-lab-api/DeleteModelLabRun.py new file mode 100644 index 0000000000..14e2d5a73b --- /dev/null +++ b/examples/v2/model-lab-api/DeleteModelLabRun.py @@ -0,0 +1,14 @@ +""" +Delete a Model Lab run returns "No Content" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi + +configuration = Configuration() +configuration.unstable_operations["delete_model_lab_run"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + api_instance.delete_model_lab_run( + run_id=70158, + ) diff --git a/examples/v2/model-lab-api/GetModelLabArtifactContent.py b/examples/v2/model-lab-api/GetModelLabArtifactContent.py new file mode 100644 index 0000000000..11bf8a141f --- /dev/null +++ b/examples/v2/model-lab-api/GetModelLabArtifactContent.py @@ -0,0 +1,17 @@ +""" +Get Model Lab artifact content returns "OK" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi + +configuration = Configuration() +configuration.unstable_operations["get_model_lab_artifact_content"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + response = api_instance.get_model_lab_artifact_content( + project_id="1", + artifact_path="runs/42/model/weights.pt", + ) + + print(response.read()) diff --git a/examples/v2/model-lab-api/GetModelLabArtifactContent_2858422658.py b/examples/v2/model-lab-api/GetModelLabArtifactContent_2858422658.py new file mode 100644 index 0000000000..860ceda1ae --- /dev/null +++ b/examples/v2/model-lab-api/GetModelLabArtifactContent_2858422658.py @@ -0,0 +1,17 @@ +""" +Download artifact content returns "OK" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi + +configuration = Configuration() +configuration.unstable_operations["get_model_lab_artifact_content"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + response = api_instance.get_model_lab_artifact_content( + project_id="2387", + artifact_path="f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/adapter_config.json", + ) + + print(response.read()) diff --git a/examples/v2/model-lab-api/GetModelLabProject.py b/examples/v2/model-lab-api/GetModelLabProject.py new file mode 100644 index 0000000000..3854b67dd3 --- /dev/null +++ b/examples/v2/model-lab-api/GetModelLabProject.py @@ -0,0 +1,16 @@ +""" +Get a Model Lab project returns "OK" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi + +configuration = Configuration() +configuration.unstable_operations["get_model_lab_project"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + response = api_instance.get_model_lab_project( + project_id=2387, + ) + + print(response) diff --git a/examples/v2/model-lab-api/GetModelLabRun.py b/examples/v2/model-lab-api/GetModelLabRun.py new file mode 100644 index 0000000000..8c5d43365b --- /dev/null +++ b/examples/v2/model-lab-api/GetModelLabRun.py @@ -0,0 +1,16 @@ +""" +Get a Model Lab run returns "OK" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi + +configuration = Configuration() +configuration.unstable_operations["get_model_lab_run"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + response = api_instance.get_model_lab_run( + run_id=70158, + ) + + print(response) diff --git a/examples/v2/model-lab-api/ListModelLabProjectArtifacts.py b/examples/v2/model-lab-api/ListModelLabProjectArtifacts.py new file mode 100644 index 0000000000..3ebcc1464c --- /dev/null +++ b/examples/v2/model-lab-api/ListModelLabProjectArtifacts.py @@ -0,0 +1,16 @@ +""" +List Model Lab project artifacts returns "OK" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi + +configuration = Configuration() +configuration.unstable_operations["list_model_lab_project_artifacts"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + response = api_instance.list_model_lab_project_artifacts( + project_id=2387, + ) + + print(response) diff --git a/examples/v2/model-lab-api/ListModelLabProjectFacetKeys.py b/examples/v2/model-lab-api/ListModelLabProjectFacetKeys.py new file mode 100644 index 0000000000..dbb8abf186 --- /dev/null +++ b/examples/v2/model-lab-api/ListModelLabProjectFacetKeys.py @@ -0,0 +1,14 @@ +""" +List Model Lab project facet keys returns "OK" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi + +configuration = Configuration() +configuration.unstable_operations["list_model_lab_project_facet_keys"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + response = api_instance.list_model_lab_project_facet_keys() + + print(response) diff --git a/examples/v2/model-lab-api/ListModelLabProjectFacetValues.py b/examples/v2/model-lab-api/ListModelLabProjectFacetValues.py new file mode 100644 index 0000000000..d4404a52a0 --- /dev/null +++ b/examples/v2/model-lab-api/ListModelLabProjectFacetValues.py @@ -0,0 +1,18 @@ +""" +List Model Lab project facet values returns "OK" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi +from datadog_api_client.v2.model.model_lab_project_facet_type import ModelLabProjectFacetType + +configuration = Configuration() +configuration.unstable_operations["list_model_lab_project_facet_values"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + response = api_instance.list_model_lab_project_facet_values( + facet_type=ModelLabProjectFacetType.TAG, + facet_name="model", + ) + + print(response) diff --git a/examples/v2/model-lab-api/ListModelLabProjects.py b/examples/v2/model-lab-api/ListModelLabProjects.py new file mode 100644 index 0000000000..c511b37c72 --- /dev/null +++ b/examples/v2/model-lab-api/ListModelLabProjects.py @@ -0,0 +1,14 @@ +""" +List Model Lab projects returns "OK" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi + +configuration = Configuration() +configuration.unstable_operations["list_model_lab_projects"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + response = api_instance.list_model_lab_projects() + + print(response) diff --git a/examples/v2/model-lab-api/ListModelLabRunArtifacts.py b/examples/v2/model-lab-api/ListModelLabRunArtifacts.py new file mode 100644 index 0000000000..5e533b46de --- /dev/null +++ b/examples/v2/model-lab-api/ListModelLabRunArtifacts.py @@ -0,0 +1,16 @@ +""" +List Model Lab run artifacts returns "OK" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi + +configuration = Configuration() +configuration.unstable_operations["list_model_lab_run_artifacts"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + response = api_instance.list_model_lab_run_artifacts( + run_id=70158, + ) + + print(response) diff --git a/examples/v2/model-lab-api/ListModelLabRunFacetKeys.py b/examples/v2/model-lab-api/ListModelLabRunFacetKeys.py new file mode 100644 index 0000000000..a90b81e322 --- /dev/null +++ b/examples/v2/model-lab-api/ListModelLabRunFacetKeys.py @@ -0,0 +1,16 @@ +""" +List Model Lab run facet keys returns "OK" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi + +configuration = Configuration() +configuration.unstable_operations["list_model_lab_run_facet_keys"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + response = api_instance.list_model_lab_run_facet_keys( + filter_project_id=2387, + ) + + print(response) diff --git a/examples/v2/model-lab-api/ListModelLabRunFacetValues.py b/examples/v2/model-lab-api/ListModelLabRunFacetValues.py new file mode 100644 index 0000000000..ce8f5c3e6b --- /dev/null +++ b/examples/v2/model-lab-api/ListModelLabRunFacetValues.py @@ -0,0 +1,19 @@ +""" +List Model Lab run facet values returns "OK" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi +from datadog_api_client.v2.model.model_lab_facet_type import ModelLabFacetType + +configuration = Configuration() +configuration.unstable_operations["list_model_lab_run_facet_values"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + response = api_instance.list_model_lab_run_facet_values( + filter_project_id=2387, + facet_type=ModelLabFacetType.TAG, + facet_name="model", + ) + + print(response) diff --git a/examples/v2/model-lab-api/ListModelLabRuns.py b/examples/v2/model-lab-api/ListModelLabRuns.py new file mode 100644 index 0000000000..8fc99372cf --- /dev/null +++ b/examples/v2/model-lab-api/ListModelLabRuns.py @@ -0,0 +1,14 @@ +""" +List Model Lab runs returns "OK" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi + +configuration = Configuration() +configuration.unstable_operations["list_model_lab_runs"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + response = api_instance.list_model_lab_runs() + + print(response) diff --git a/examples/v2/model-lab-api/PinModelLabRun.py b/examples/v2/model-lab-api/PinModelLabRun.py new file mode 100644 index 0000000000..7e535b9b86 --- /dev/null +++ b/examples/v2/model-lab-api/PinModelLabRun.py @@ -0,0 +1,14 @@ +""" +Pin a Model Lab run returns "No Content" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi + +configuration = Configuration() +configuration.unstable_operations["pin_model_lab_run"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + api_instance.pin_model_lab_run( + run_id=70158, + ) diff --git a/examples/v2/model-lab-api/StarModelLabProject.py b/examples/v2/model-lab-api/StarModelLabProject.py new file mode 100644 index 0000000000..3f0db462f3 --- /dev/null +++ b/examples/v2/model-lab-api/StarModelLabProject.py @@ -0,0 +1,14 @@ +""" +Star a Model Lab project returns "No Content" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi + +configuration = Configuration() +configuration.unstable_operations["star_model_lab_project"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + api_instance.star_model_lab_project( + project_id=2387, + ) diff --git a/examples/v2/model-lab-api/UnpinModelLabRun.py b/examples/v2/model-lab-api/UnpinModelLabRun.py new file mode 100644 index 0000000000..b18d99f256 --- /dev/null +++ b/examples/v2/model-lab-api/UnpinModelLabRun.py @@ -0,0 +1,14 @@ +""" +Unpin a Model Lab run returns "No Content" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi + +configuration = Configuration() +configuration.unstable_operations["unpin_model_lab_run"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + api_instance.unpin_model_lab_run( + run_id=70158, + ) diff --git a/examples/v2/model-lab-api/UnstarModelLabProject.py b/examples/v2/model-lab-api/UnstarModelLabProject.py new file mode 100644 index 0000000000..b6e810ce47 --- /dev/null +++ b/examples/v2/model-lab-api/UnstarModelLabProject.py @@ -0,0 +1,14 @@ +""" +Remove star from a Model Lab project returns "No Content" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi + +configuration = Configuration() +configuration.unstable_operations["unstar_model_lab_project"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + api_instance.unstar_model_lab_project( + project_id=1, + ) diff --git a/examples/v2/model-lab-api/UnstarModelLabProject_931927092.py b/examples/v2/model-lab-api/UnstarModelLabProject_931927092.py new file mode 100644 index 0000000000..ee1e46c043 --- /dev/null +++ b/examples/v2/model-lab-api/UnstarModelLabProject_931927092.py @@ -0,0 +1,14 @@ +""" +Unstar a Model Lab project returns "No Content" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi + +configuration = Configuration() +configuration.unstable_operations["unstar_model_lab_project"] = True +with ApiClient(configuration) as api_client: + api_instance = ModelLabAPIApi(api_client) + api_instance.unstar_model_lab_project( + project_id=2387, + ) diff --git a/src/datadog_api_client/configuration.py b/src/datadog_api_client/configuration.py index d562669049..edc56ce6ec 100644 --- a/src/datadog_api_client/configuration.py +++ b/src/datadog_api_client/configuration.py @@ -304,49 +304,13 @@ def __init__( "v2.get_investigation": False, "v2.list_investigations": False, "v2.trigger_investigation": False, - "v2.add_case_insights": False, - "v2.aggregate_cases": False, - "v2.bulk_update_cases": False, - "v2.count_cases": False, - "v2.create_case_automation_rule": False, "v2.create_case_jira_issue": False, - "v2.create_case_link": False, "v2.create_case_notebook": False, "v2.create_case_service_now_ticket": False, - "v2.create_case_view": False, - "v2.create_maintenance_window": False, - "v2.delete_case_automation_rule": False, - "v2.delete_case_link": False, - "v2.delete_case_view": False, - "v2.delete_maintenance_window": False, - "v2.disable_case_automation_rule": False, - "v2.enable_case_automation_rule": False, - "v2.favorite_case_project": False, - "v2.get_case_automation_rule": False, - "v2.get_case_view": False, "v2.link_incident": False, "v2.link_jira_issue_to_case": False, - "v2.list_case_automation_rules": False, - "v2.list_case_links": False, - "v2.list_case_timeline": False, - "v2.list_case_views": False, - "v2.list_case_watchers": False, - "v2.list_maintenance_windows": False, - "v2.list_user_case_project_favorites": False, "v2.move_case_to_project": False, - "v2.remove_case_insights": False, - "v2.unfavorite_case_project": False, "v2.unlink_jira_issue": False, - "v2.unwatch_case": False, - "v2.update_case_automation_rule": False, - "v2.update_case_comment": False, - "v2.update_case_due_date": False, - "v2.update_case_resolved_reason": False, - "v2.update_case_view": False, - "v2.update_maintenance_window": False, - "v2.watch_case": False, - "v2.update_case_type": False, - "v2.update_custom_attribute_config": False, "v2.create_change_request": False, "v2.create_change_request_branch": False, "v2.delete_change_request_decision": False, @@ -508,6 +472,22 @@ def __init__( "v2.remove_role_from_restriction_query": False, "v2.replace_restriction_query": False, "v2.update_restriction_query": False, + "v2.delete_model_lab_run": False, + "v2.get_model_lab_artifact_content": False, + "v2.get_model_lab_project": False, + "v2.get_model_lab_run": False, + "v2.list_model_lab_project_artifacts": False, + "v2.list_model_lab_project_facet_keys": False, + "v2.list_model_lab_project_facet_values": False, + "v2.list_model_lab_projects": False, + "v2.list_model_lab_run_artifacts": False, + "v2.list_model_lab_run_facet_keys": False, + "v2.list_model_lab_run_facet_values": False, + "v2.list_model_lab_runs": False, + "v2.pin_model_lab_run": False, + "v2.star_model_lab_project": False, + "v2.unpin_model_lab_run": False, + "v2.unstar_model_lab_project": False, "v2.create_monitor_user_template": False, "v2.delete_monitor_user_template": False, "v2.get_monitor_user_template": False, diff --git a/src/datadog_api_client/v2/api/case_management_api.py b/src/datadog_api_client/v2/api/case_management_api.py index 131bc18e2f..08ebbaf5ea 100644 --- a/src/datadog_api_client/v2/api/case_management_api.py +++ b/src/datadog_api_client/v2/api/case_management_api.py @@ -19,40 +19,21 @@ from datadog_api_client.v2.model.case import Case from datadog_api_client.v2.model.case_response import CaseResponse from datadog_api_client.v2.model.case_create_request import CaseCreateRequest -from datadog_api_client.v2.model.case_aggregate_response import CaseAggregateResponse -from datadog_api_client.v2.model.case_aggregate_request import CaseAggregateRequest -from datadog_api_client.v2.model.case_bulk_update_request import CaseBulkUpdateRequest -from datadog_api_client.v2.model.case_count_response import CaseCountResponse -from datadog_api_client.v2.model.case_links_response import CaseLinksResponse -from datadog_api_client.v2.model.case_link_response import CaseLinkResponse -from datadog_api_client.v2.model.case_link_create_request import CaseLinkCreateRequest from datadog_api_client.v2.model.projects_response import ProjectsResponse from datadog_api_client.v2.model.project_response import ProjectResponse from datadog_api_client.v2.model.project_create_request import ProjectCreateRequest -from datadog_api_client.v2.model.project_favorites_response import ProjectFavoritesResponse from datadog_api_client.v2.model.project_update_request import ProjectUpdateRequest from datadog_api_client.v2.model.case_notification_rules_response import CaseNotificationRulesResponse from datadog_api_client.v2.model.case_notification_rule_response import CaseNotificationRuleResponse from datadog_api_client.v2.model.case_notification_rule_create_request import CaseNotificationRuleCreateRequest from datadog_api_client.v2.model.case_notification_rule_update_request import CaseNotificationRuleUpdateRequest -from datadog_api_client.v2.model.automation_rules_response import AutomationRulesResponse -from datadog_api_client.v2.model.automation_rule_response import AutomationRuleResponse -from datadog_api_client.v2.model.automation_rule_create_request import AutomationRuleCreateRequest -from datadog_api_client.v2.model.automation_rule_update_request import AutomationRuleUpdateRequest -from datadog_api_client.v2.model.case_views_response import CaseViewsResponse -from datadog_api_client.v2.model.case_view_response import CaseViewResponse -from datadog_api_client.v2.model.case_view_create_request import CaseViewCreateRequest -from datadog_api_client.v2.model.case_view_update_request import CaseViewUpdateRequest from datadog_api_client.v2.model.case_empty_request import CaseEmptyRequest from datadog_api_client.v2.model.case_assign_request import CaseAssignRequest from datadog_api_client.v2.model.case_update_attributes_request import CaseUpdateAttributesRequest from datadog_api_client.v2.model.timeline_response import TimelineResponse from datadog_api_client.v2.model.case_comment_request import CaseCommentRequest -from datadog_api_client.v2.model.case_update_comment_request import CaseUpdateCommentRequest from datadog_api_client.v2.model.case_update_custom_attribute_request import CaseUpdateCustomAttributeRequest from datadog_api_client.v2.model.case_update_description_request import CaseUpdateDescriptionRequest -from datadog_api_client.v2.model.case_update_due_date_request import CaseUpdateDueDateRequest -from datadog_api_client.v2.model.case_insights_request import CaseInsightsRequest from datadog_api_client.v2.model.case_update_priority_request import CaseUpdatePriorityRequest from datadog_api_client.v2.model.relationship_to_incident_request import RelationshipToIncidentRequest from datadog_api_client.v2.model.jira_issue_link_request import JiraIssueLinkRequest @@ -60,14 +41,8 @@ from datadog_api_client.v2.model.notebook_create_request import NotebookCreateRequest from datadog_api_client.v2.model.project_relationship import ProjectRelationship from datadog_api_client.v2.model.service_now_ticket_create_request import ServiceNowTicketCreateRequest -from datadog_api_client.v2.model.case_update_resolved_reason_request import CaseUpdateResolvedReasonRequest from datadog_api_client.v2.model.case_update_status_request import CaseUpdateStatusRequest from datadog_api_client.v2.model.case_update_title_request import CaseUpdateTitleRequest -from datadog_api_client.v2.model.case_watchers_response import CaseWatchersResponse -from datadog_api_client.v2.model.maintenance_windows_response import MaintenanceWindowsResponse -from datadog_api_client.v2.model.maintenance_window_response import MaintenanceWindowResponse -from datadog_api_client.v2.model.maintenance_window_create_request import MaintenanceWindowCreateRequest -from datadog_api_client.v2.model.maintenance_window_update_request import MaintenanceWindowUpdateRequest class CaseManagementApi: @@ -80,52 +55,6 @@ def __init__(self, api_client=None): api_client = ApiClient(Configuration()) self.api_client = api_client - self._add_case_insights_endpoint = _Endpoint( - settings={ - "response_type": (CaseResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/insights", - "operation_id": "add_case_insights", - "http_method": "PUT", - "version": "v2", - }, - params_map={ - "case_id": { - "required": True, - "openapi_types": (str,), - "attribute": "case_id", - "location": "path", - }, - "body": { - "required": True, - "openapi_types": (CaseInsightsRequest,), - "location": "body", - }, - }, - headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, - api_client=api_client, - ) - - self._aggregate_cases_endpoint = _Endpoint( - settings={ - "response_type": (CaseAggregateResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/aggregate", - "operation_id": "aggregate_cases", - "http_method": "POST", - "version": "v2", - }, - params_map={ - "body": { - "required": True, - "openapi_types": (CaseAggregateRequest,), - "location": "body", - }, - }, - headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, - api_client=api_client, - ) - self._archive_case_endpoint = _Endpoint( settings={ "response_type": (CaseResponse,), @@ -178,26 +107,6 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._bulk_update_cases_endpoint = _Endpoint( - settings={ - "response_type": None, - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/bulk", - "operation_id": "bulk_update_cases", - "http_method": "POST", - "version": "v2", - }, - params_map={ - "body": { - "required": True, - "openapi_types": (CaseBulkUpdateRequest,), - "location": "body", - }, - }, - headers_map={"accept": ["*/*"], "content_type": ["application/json"]}, - api_client=api_client, - ) - self._comment_case_endpoint = _Endpoint( settings={ "response_type": (TimelineResponse,), @@ -224,38 +133,6 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._count_cases_endpoint = _Endpoint( - settings={ - "response_type": (CaseCountResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/count", - "operation_id": "count_cases", - "http_method": "GET", - "version": "v2", - }, - params_map={ - "query_filter": { - "openapi_types": (str,), - "attribute": "query_filter", - "location": "query", - }, - "group_bys": { - "openapi_types": (str,), - "attribute": "group_bys", - "location": "query", - }, - "limit": { - "openapi_types": (int,), - "attribute": "limit", - "location": "query", - }, - }, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - self._create_case_endpoint = _Endpoint( settings={ "response_type": (CaseResponse,), @@ -276,32 +153,6 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._create_case_automation_rule_endpoint = _Endpoint( - settings={ - "response_type": (AutomationRuleResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/projects/{project_id}/rules", - "operation_id": "create_case_automation_rule", - "http_method": "POST", - "version": "v2", - }, - params_map={ - "project_id": { - "required": True, - "openapi_types": (str,), - "attribute": "project_id", - "location": "path", - }, - "body": { - "required": True, - "openapi_types": (AutomationRuleCreateRequest,), - "location": "body", - }, - }, - headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, - api_client=api_client, - ) - self._create_case_jira_issue_endpoint = _Endpoint( settings={ "response_type": None, @@ -328,26 +179,6 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._create_case_link_endpoint = _Endpoint( - settings={ - "response_type": (CaseLinkResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/link", - "operation_id": "create_case_link", - "http_method": "POST", - "version": "v2", - }, - params_map={ - "body": { - "required": True, - "openapi_types": (CaseLinkCreateRequest,), - "location": "body", - }, - }, - headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, - api_client=api_client, - ) - self._create_case_notebook_endpoint = _Endpoint( settings={ "response_type": None, @@ -400,46 +231,6 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._create_case_view_endpoint = _Endpoint( - settings={ - "response_type": (CaseViewResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/views", - "operation_id": "create_case_view", - "http_method": "POST", - "version": "v2", - }, - params_map={ - "body": { - "required": True, - "openapi_types": (CaseViewCreateRequest,), - "location": "body", - }, - }, - headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, - api_client=api_client, - ) - - self._create_maintenance_window_endpoint = _Endpoint( - settings={ - "response_type": (MaintenanceWindowResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/maintenance_windows", - "operation_id": "create_maintenance_window", - "http_method": "POST", - "version": "v2", - }, - params_map={ - "body": { - "required": True, - "openapi_types": (MaintenanceWindowCreateRequest,), - "location": "body", - }, - }, - headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, - api_client=api_client, - ) - self._create_project_endpoint = _Endpoint( settings={ "response_type": (ProjectResponse,), @@ -486,35 +277,6 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._delete_case_automation_rule_endpoint = _Endpoint( - settings={ - "response_type": None, - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/projects/{project_id}/rules/{rule_id}", - "operation_id": "delete_case_automation_rule", - "http_method": "DELETE", - "version": "v2", - }, - params_map={ - "project_id": { - "required": True, - "openapi_types": (str,), - "attribute": "project_id", - "location": "path", - }, - "rule_id": { - "required": True, - "openapi_types": (str,), - "attribute": "rule_id", - "location": "path", - }, - }, - headers_map={ - "accept": ["*/*"], - }, - api_client=api_client, - ) - self._delete_case_comment_endpoint = _Endpoint( settings={ "response_type": None, @@ -573,20 +335,20 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._delete_case_link_endpoint = _Endpoint( + self._delete_project_endpoint = _Endpoint( settings={ "response_type": None, "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/link/{link_id}", - "operation_id": "delete_case_link", + "endpoint_path": "/api/v2/cases/projects/{project_id}", + "operation_id": "delete_project", "http_method": "DELETE", "version": "v2", }, params_map={ - "link_id": { + "project_id": { "required": True, "openapi_types": (str,), - "attribute": "link_id", + "attribute": "project_id", "location": "path", }, }, @@ -596,20 +358,26 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._delete_case_view_endpoint = _Endpoint( + self._delete_project_notification_rule_endpoint = _Endpoint( settings={ "response_type": None, "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/views/{view_id}", - "operation_id": "delete_case_view", + "endpoint_path": "/api/v2/cases/projects/{project_id}/notification_rules/{notification_rule_id}", + "operation_id": "delete_project_notification_rule", "http_method": "DELETE", "version": "v2", }, params_map={ - "view_id": { + "project_id": { + "required": True, + "openapi_types": (str,), + "attribute": "project_id", + "location": "path", + }, + "notification_rule_id": { "required": True, "openapi_types": (str,), - "attribute": "view_id", + "attribute": "notification_rule_id", "location": "path", }, }, @@ -619,36 +387,36 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._delete_maintenance_window_endpoint = _Endpoint( + self._get_case_endpoint = _Endpoint( settings={ - "response_type": None, + "response_type": (CaseResponse,), "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/maintenance_windows/{maintenance_window_id}", - "operation_id": "delete_maintenance_window", - "http_method": "DELETE", + "endpoint_path": "/api/v2/cases/{case_id}", + "operation_id": "get_case", + "http_method": "GET", "version": "v2", }, params_map={ - "maintenance_window_id": { + "case_id": { "required": True, "openapi_types": (str,), - "attribute": "maintenance_window_id", + "attribute": "case_id", "location": "path", }, }, headers_map={ - "accept": ["*/*"], + "accept": ["application/json"], }, api_client=api_client, ) - self._delete_project_endpoint = _Endpoint( + self._get_project_endpoint = _Endpoint( settings={ - "response_type": None, + "response_type": (ProjectResponse,), "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], "endpoint_path": "/api/v2/cases/projects/{project_id}", - "operation_id": "delete_project", - "http_method": "DELETE", + "operation_id": "get_project", + "http_method": "GET", "version": "v2", }, params_map={ @@ -660,18 +428,18 @@ def __init__(self, api_client=None): }, }, headers_map={ - "accept": ["*/*"], + "accept": ["application/json"], }, api_client=api_client, ) - self._delete_project_notification_rule_endpoint = _Endpoint( + self._get_project_notification_rules_endpoint = _Endpoint( settings={ - "response_type": None, + "response_type": (CaseNotificationRulesResponse,), "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/projects/{project_id}/notification_rules/{notification_rule_id}", - "operation_id": "delete_project_notification_rule", - "http_method": "DELETE", + "endpoint_path": "/api/v2/cases/projects/{project_id}/notification_rules", + "operation_id": "get_project_notification_rules", + "http_method": "GET", "version": "v2", }, params_map={ @@ -681,468 +449,61 @@ def __init__(self, api_client=None): "attribute": "project_id", "location": "path", }, - "notification_rule_id": { - "required": True, - "openapi_types": (str,), - "attribute": "notification_rule_id", - "location": "path", - }, }, headers_map={ - "accept": ["*/*"], + "accept": ["application/json"], }, api_client=api_client, ) - self._disable_case_automation_rule_endpoint = _Endpoint( + self._get_projects_endpoint = _Endpoint( settings={ - "response_type": (AutomationRuleResponse,), + "response_type": (ProjectsResponse,), "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/projects/{project_id}/rules/{rule_id}/disable", - "operation_id": "disable_case_automation_rule", - "http_method": "POST", + "endpoint_path": "/api/v2/cases/projects", + "operation_id": "get_projects", + "http_method": "GET", "version": "v2", }, - params_map={ - "project_id": { - "required": True, - "openapi_types": (str,), - "attribute": "project_id", - "location": "path", - }, - "rule_id": { - "required": True, - "openapi_types": (str,), - "attribute": "rule_id", - "location": "path", - }, - }, + params_map={}, headers_map={ "accept": ["application/json"], }, api_client=api_client, ) - self._enable_case_automation_rule_endpoint = _Endpoint( + self._link_incident_endpoint = _Endpoint( settings={ - "response_type": (AutomationRuleResponse,), + "response_type": (CaseResponse,), "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/projects/{project_id}/rules/{rule_id}/enable", - "operation_id": "enable_case_automation_rule", + "endpoint_path": "/api/v2/cases/{case_id}/relationships/incidents", + "operation_id": "link_incident", "http_method": "POST", "version": "v2", }, params_map={ - "project_id": { + "case_id": { "required": True, "openapi_types": (str,), - "attribute": "project_id", + "attribute": "case_id", "location": "path", }, - "rule_id": { + "body": { "required": True, - "openapi_types": (str,), - "attribute": "rule_id", - "location": "path", + "openapi_types": (RelationshipToIncidentRequest,), + "location": "body", }, }, - headers_map={ - "accept": ["application/json"], - }, + headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, api_client=api_client, ) - self._favorite_case_project_endpoint = _Endpoint( - settings={ - "response_type": None, - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/projects/{project_id}/favorites", - "operation_id": "favorite_case_project", - "http_method": "POST", - "version": "v2", - }, - params_map={ - "project_id": { - "required": True, - "openapi_types": (str,), - "attribute": "project_id", - "location": "path", - }, - }, - headers_map={ - "accept": ["*/*"], - }, - api_client=api_client, - ) - - self._get_case_endpoint = _Endpoint( - settings={ - "response_type": (CaseResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}", - "operation_id": "get_case", - "http_method": "GET", - "version": "v2", - }, - params_map={ - "case_id": { - "required": True, - "openapi_types": (str,), - "attribute": "case_id", - "location": "path", - }, - }, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - - self._get_case_automation_rule_endpoint = _Endpoint( - settings={ - "response_type": (AutomationRuleResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/projects/{project_id}/rules/{rule_id}", - "operation_id": "get_case_automation_rule", - "http_method": "GET", - "version": "v2", - }, - params_map={ - "project_id": { - "required": True, - "openapi_types": (str,), - "attribute": "project_id", - "location": "path", - }, - "rule_id": { - "required": True, - "openapi_types": (str,), - "attribute": "rule_id", - "location": "path", - }, - }, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - - self._get_case_view_endpoint = _Endpoint( - settings={ - "response_type": (CaseViewResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/views/{view_id}", - "operation_id": "get_case_view", - "http_method": "GET", - "version": "v2", - }, - params_map={ - "view_id": { - "required": True, - "openapi_types": (str,), - "attribute": "view_id", - "location": "path", - }, - }, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - - self._get_project_endpoint = _Endpoint( - settings={ - "response_type": (ProjectResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/projects/{project_id}", - "operation_id": "get_project", - "http_method": "GET", - "version": "v2", - }, - params_map={ - "project_id": { - "required": True, - "openapi_types": (str,), - "attribute": "project_id", - "location": "path", - }, - }, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - - self._get_project_notification_rules_endpoint = _Endpoint( - settings={ - "response_type": (CaseNotificationRulesResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/projects/{project_id}/notification_rules", - "operation_id": "get_project_notification_rules", - "http_method": "GET", - "version": "v2", - }, - params_map={ - "project_id": { - "required": True, - "openapi_types": (str,), - "attribute": "project_id", - "location": "path", - }, - }, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - - self._get_projects_endpoint = _Endpoint( - settings={ - "response_type": (ProjectsResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/projects", - "operation_id": "get_projects", - "http_method": "GET", - "version": "v2", - }, - params_map={}, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - - self._link_incident_endpoint = _Endpoint( - settings={ - "response_type": (CaseResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/relationships/incidents", - "operation_id": "link_incident", - "http_method": "POST", - "version": "v2", - }, - params_map={ - "case_id": { - "required": True, - "openapi_types": (str,), - "attribute": "case_id", - "location": "path", - }, - "body": { - "required": True, - "openapi_types": (RelationshipToIncidentRequest,), - "location": "body", - }, - }, - headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, - api_client=api_client, - ) - - self._link_jira_issue_to_case_endpoint = _Endpoint( - settings={ - "response_type": None, - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/relationships/jira_issues", - "operation_id": "link_jira_issue_to_case", - "http_method": "PATCH", - "version": "v2", - }, - params_map={ - "case_id": { - "required": True, - "openapi_types": (str,), - "attribute": "case_id", - "location": "path", - }, - "body": { - "required": True, - "openapi_types": (JiraIssueLinkRequest,), - "location": "body", - }, - }, - headers_map={"accept": ["*/*"], "content_type": ["application/json"]}, - api_client=api_client, - ) - - self._list_case_automation_rules_endpoint = _Endpoint( - settings={ - "response_type": (AutomationRulesResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/projects/{project_id}/rules", - "operation_id": "list_case_automation_rules", - "http_method": "GET", - "version": "v2", - }, - params_map={ - "project_id": { - "required": True, - "openapi_types": (str,), - "attribute": "project_id", - "location": "path", - }, - }, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - - self._list_case_links_endpoint = _Endpoint( - settings={ - "response_type": (CaseLinksResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/link", - "operation_id": "list_case_links", - "http_method": "GET", - "version": "v2", - }, - params_map={ - "entity_type": { - "required": True, - "openapi_types": (str,), - "attribute": "entity_type", - "location": "query", - }, - "entity_id": { - "required": True, - "openapi_types": (str,), - "attribute": "entity_id", - "location": "query", - }, - "relationship": { - "openapi_types": (str,), - "attribute": "relationship", - "location": "query", - }, - }, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - - self._list_case_timeline_endpoint = _Endpoint( - settings={ - "response_type": (TimelineResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/timelines", - "operation_id": "list_case_timeline", - "http_method": "GET", - "version": "v2", - }, - params_map={ - "case_id": { - "required": True, - "openapi_types": (str,), - "attribute": "case_id", - "location": "path", - }, - "page_size": { - "openapi_types": (int,), - "attribute": "page[size]", - "location": "query", - }, - "page_number": { - "openapi_types": (int,), - "attribute": "page[number]", - "location": "query", - }, - "sort_ascending": { - "openapi_types": (bool,), - "attribute": "sort[ascending]", - "location": "query", - }, - }, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - - self._list_case_views_endpoint = _Endpoint( - settings={ - "response_type": (CaseViewsResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/views", - "operation_id": "list_case_views", - "http_method": "GET", - "version": "v2", - }, - params_map={ - "project_id": { - "required": True, - "openapi_types": (str,), - "attribute": "project_id", - "location": "query", - }, - }, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - - self._list_case_watchers_endpoint = _Endpoint( - settings={ - "response_type": (CaseWatchersResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/watchers", - "operation_id": "list_case_watchers", - "http_method": "GET", - "version": "v2", - }, - params_map={ - "case_id": { - "required": True, - "openapi_types": (str,), - "attribute": "case_id", - "location": "path", - }, - }, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - - self._list_maintenance_windows_endpoint = _Endpoint( - settings={ - "response_type": (MaintenanceWindowsResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/maintenance_windows", - "operation_id": "list_maintenance_windows", - "http_method": "GET", - "version": "v2", - }, - params_map={}, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - - self._list_user_case_project_favorites_endpoint = _Endpoint( - settings={ - "response_type": (ProjectFavoritesResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/projects/favorites", - "operation_id": "list_user_case_project_favorites", - "http_method": "GET", - "version": "v2", - }, - params_map={}, - headers_map={ - "accept": ["application/json"], - }, - api_client=api_client, - ) - - self._move_case_to_project_endpoint = _Endpoint( + self._link_jira_issue_to_case_endpoint = _Endpoint( settings={ - "response_type": (CaseResponse,), + "response_type": None, "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/relationships/project", - "operation_id": "move_case_to_project", + "endpoint_path": "/api/v2/cases/{case_id}/relationships/jira_issues", + "operation_id": "link_jira_issue_to_case", "http_method": "PATCH", "version": "v2", }, @@ -1155,21 +516,21 @@ def __init__(self, api_client=None): }, "body": { "required": True, - "openapi_types": (ProjectRelationship,), + "openapi_types": (JiraIssueLinkRequest,), "location": "body", }, }, - headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, + headers_map={"accept": ["*/*"], "content_type": ["application/json"]}, api_client=api_client, ) - self._remove_case_insights_endpoint = _Endpoint( + self._move_case_to_project_endpoint = _Endpoint( settings={ "response_type": (CaseResponse,), "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/insights", - "operation_id": "remove_case_insights", - "http_method": "DELETE", + "endpoint_path": "/api/v2/cases/{case_id}/relationships/project", + "operation_id": "move_case_to_project", + "http_method": "PATCH", "version": "v2", }, params_map={ @@ -1181,7 +542,7 @@ def __init__(self, api_client=None): }, "body": { "required": True, - "openapi_types": (CaseInsightsRequest,), + "openapi_types": (ProjectRelationship,), "location": "body", }, }, @@ -1257,235 +618,12 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._unassign_case_endpoint = _Endpoint( - settings={ - "response_type": (CaseResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/unassign", - "operation_id": "unassign_case", - "http_method": "POST", - "version": "v2", - }, - params_map={ - "case_id": { - "required": True, - "openapi_types": (str,), - "attribute": "case_id", - "location": "path", - }, - "body": { - "required": True, - "openapi_types": (CaseEmptyRequest,), - "location": "body", - }, - }, - headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, - api_client=api_client, - ) - - self._unfavorite_case_project_endpoint = _Endpoint( - settings={ - "response_type": None, - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/projects/{project_id}/favorites", - "operation_id": "unfavorite_case_project", - "http_method": "DELETE", - "version": "v2", - }, - params_map={ - "project_id": { - "required": True, - "openapi_types": (str,), - "attribute": "project_id", - "location": "path", - }, - }, - headers_map={ - "accept": ["*/*"], - }, - api_client=api_client, - ) - - self._unlink_jira_issue_endpoint = _Endpoint( - settings={ - "response_type": None, - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/relationships/jira_issues", - "operation_id": "unlink_jira_issue", - "http_method": "DELETE", - "version": "v2", - }, - params_map={ - "case_id": { - "required": True, - "openapi_types": (str,), - "attribute": "case_id", - "location": "path", - }, - }, - headers_map={ - "accept": ["*/*"], - }, - api_client=api_client, - ) - - self._unwatch_case_endpoint = _Endpoint( - settings={ - "response_type": None, - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/watchers/{user_uuid}", - "operation_id": "unwatch_case", - "http_method": "DELETE", - "version": "v2", - }, - params_map={ - "case_id": { - "required": True, - "openapi_types": (str,), - "attribute": "case_id", - "location": "path", - }, - "user_uuid": { - "required": True, - "openapi_types": (str,), - "attribute": "user_uuid", - "location": "path", - }, - }, - headers_map={ - "accept": ["*/*"], - }, - api_client=api_client, - ) - - self._update_attributes_endpoint = _Endpoint( - settings={ - "response_type": (CaseResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/attributes", - "operation_id": "update_attributes", - "http_method": "POST", - "version": "v2", - }, - params_map={ - "case_id": { - "required": True, - "openapi_types": (str,), - "attribute": "case_id", - "location": "path", - }, - "body": { - "required": True, - "openapi_types": (CaseUpdateAttributesRequest,), - "location": "body", - }, - }, - headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, - api_client=api_client, - ) - - self._update_case_automation_rule_endpoint = _Endpoint( - settings={ - "response_type": (AutomationRuleResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/projects/{project_id}/rules/{rule_id}", - "operation_id": "update_case_automation_rule", - "http_method": "PUT", - "version": "v2", - }, - params_map={ - "project_id": { - "required": True, - "openapi_types": (str,), - "attribute": "project_id", - "location": "path", - }, - "rule_id": { - "required": True, - "openapi_types": (str,), - "attribute": "rule_id", - "location": "path", - }, - "body": { - "required": True, - "openapi_types": (AutomationRuleUpdateRequest,), - "location": "body", - }, - }, - headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, - api_client=api_client, - ) - - self._update_case_comment_endpoint = _Endpoint( - settings={ - "response_type": None, - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/comment/{cell_id}", - "operation_id": "update_case_comment", - "http_method": "PUT", - "version": "v2", - }, - params_map={ - "case_id": { - "required": True, - "openapi_types": (str,), - "attribute": "case_id", - "location": "path", - }, - "cell_id": { - "required": True, - "openapi_types": (str,), - "attribute": "cell_id", - "location": "path", - }, - "body": { - "required": True, - "openapi_types": (CaseUpdateCommentRequest,), - "location": "body", - }, - }, - headers_map={"accept": ["*/*"], "content_type": ["application/json"]}, - api_client=api_client, - ) - - self._update_case_custom_attribute_endpoint = _Endpoint( - settings={ - "response_type": (CaseResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/custom_attributes/{custom_attribute_key}", - "operation_id": "update_case_custom_attribute", - "http_method": "POST", - "version": "v2", - }, - params_map={ - "case_id": { - "required": True, - "openapi_types": (str,), - "attribute": "case_id", - "location": "path", - }, - "custom_attribute_key": { - "required": True, - "openapi_types": (str,), - "attribute": "custom_attribute_key", - "location": "path", - }, - "body": { - "required": True, - "openapi_types": (CaseUpdateCustomAttributeRequest,), - "location": "body", - }, - }, - headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, - api_client=api_client, - ) - - self._update_case_description_endpoint = _Endpoint( + self._unassign_case_endpoint = _Endpoint( settings={ "response_type": (CaseResponse,), "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/description", - "operation_id": "update_case_description", + "endpoint_path": "/api/v2/cases/{case_id}/unassign", + "operation_id": "unassign_case", "http_method": "POST", "version": "v2", }, @@ -1498,7 +636,7 @@ def __init__(self, api_client=None): }, "body": { "required": True, - "openapi_types": (CaseUpdateDescriptionRequest,), + "openapi_types": (CaseEmptyRequest,), "location": "body", }, }, @@ -1506,13 +644,13 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._update_case_due_date_endpoint = _Endpoint( + self._unlink_jira_issue_endpoint = _Endpoint( settings={ - "response_type": (CaseResponse,), + "response_type": None, "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/due_date", - "operation_id": "update_case_due_date", - "http_method": "POST", + "endpoint_path": "/api/v2/cases/{case_id}/relationships/jira_issues", + "operation_id": "unlink_jira_issue", + "http_method": "DELETE", "version": "v2", }, params_map={ @@ -1522,22 +660,19 @@ def __init__(self, api_client=None): "attribute": "case_id", "location": "path", }, - "body": { - "required": True, - "openapi_types": (CaseUpdateDueDateRequest,), - "location": "body", - }, }, - headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, + headers_map={ + "accept": ["*/*"], + }, api_client=api_client, ) - self._update_case_resolved_reason_endpoint = _Endpoint( + self._update_attributes_endpoint = _Endpoint( settings={ "response_type": (CaseResponse,), "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/resolved_reason", - "operation_id": "update_case_resolved_reason", + "endpoint_path": "/api/v2/cases/{case_id}/attributes", + "operation_id": "update_attributes", "http_method": "POST", "version": "v2", }, @@ -1550,7 +685,7 @@ def __init__(self, api_client=None): }, "body": { "required": True, - "openapi_types": (CaseUpdateResolvedReasonRequest,), + "openapi_types": (CaseUpdateAttributesRequest,), "location": "body", }, }, @@ -1558,12 +693,12 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._update_case_title_endpoint = _Endpoint( + self._update_case_custom_attribute_endpoint = _Endpoint( settings={ "response_type": (CaseResponse,), "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/title", - "operation_id": "update_case_title", + "endpoint_path": "/api/v2/cases/{case_id}/custom_attributes/{custom_attribute_key}", + "operation_id": "update_case_custom_attribute", "http_method": "POST", "version": "v2", }, @@ -1574,9 +709,15 @@ def __init__(self, api_client=None): "attribute": "case_id", "location": "path", }, + "custom_attribute_key": { + "required": True, + "openapi_types": (str,), + "attribute": "custom_attribute_key", + "location": "path", + }, "body": { "required": True, - "openapi_types": (CaseUpdateTitleRequest,), + "openapi_types": (CaseUpdateCustomAttributeRequest,), "location": "body", }, }, @@ -1584,25 +725,25 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._update_case_view_endpoint = _Endpoint( + self._update_case_description_endpoint = _Endpoint( settings={ - "response_type": (CaseViewResponse,), + "response_type": (CaseResponse,), "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/views/{view_id}", - "operation_id": "update_case_view", - "http_method": "PUT", + "endpoint_path": "/api/v2/cases/{case_id}/description", + "operation_id": "update_case_description", + "http_method": "POST", "version": "v2", }, params_map={ - "view_id": { + "case_id": { "required": True, "openapi_types": (str,), - "attribute": "view_id", + "attribute": "case_id", "location": "path", }, "body": { "required": True, - "openapi_types": (CaseViewUpdateRequest,), + "openapi_types": (CaseUpdateDescriptionRequest,), "location": "body", }, }, @@ -1610,25 +751,25 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._update_maintenance_window_endpoint = _Endpoint( + self._update_case_title_endpoint = _Endpoint( settings={ - "response_type": (MaintenanceWindowResponse,), + "response_type": (CaseResponse,), "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/maintenance_windows/{maintenance_window_id}", - "operation_id": "update_maintenance_window", - "http_method": "PUT", + "endpoint_path": "/api/v2/cases/{case_id}/title", + "operation_id": "update_case_title", + "http_method": "POST", "version": "v2", }, params_map={ - "maintenance_window_id": { + "case_id": { "required": True, "openapi_types": (str,), - "attribute": "maintenance_window_id", + "attribute": "case_id", "location": "path", }, "body": { "required": True, - "openapi_types": (MaintenanceWindowUpdateRequest,), + "openapi_types": (CaseUpdateTitleRequest,), "location": "body", }, }, @@ -1746,74 +887,6 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._watch_case_endpoint = _Endpoint( - settings={ - "response_type": None, - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/{case_id}/watchers/{user_uuid}", - "operation_id": "watch_case", - "http_method": "POST", - "version": "v2", - }, - params_map={ - "case_id": { - "required": True, - "openapi_types": (str,), - "attribute": "case_id", - "location": "path", - }, - "user_uuid": { - "required": True, - "openapi_types": (str,), - "attribute": "user_uuid", - "location": "path", - }, - }, - headers_map={ - "accept": ["*/*"], - }, - api_client=api_client, - ) - - def add_case_insights( - self, - case_id: str, - body: CaseInsightsRequest, - ) -> CaseResponse: - """Add insights to a case. - - Adds one or more insights to a case. Insights are references to related Datadog resources (such as monitors, security signals, incidents, or error tracking issues) that provide investigative context. Up to 100 insights can be added per request. Each insight requires a type (see ``CaseInsightType`` for allowed values), a ref (URL path to the resource), and a resource_id. - - :param case_id: Case's UUID or key - :type case_id: str - :param body: Case insights request. - :type body: CaseInsightsRequest - :rtype: CaseResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["case_id"] = case_id - - kwargs["body"] = body - - return self._add_case_insights_endpoint.call_with_http_info(**kwargs) - - def aggregate_cases( - self, - body: CaseAggregateRequest, - ) -> CaseAggregateResponse: - """Aggregate cases. - - Performs an aggregation query over cases, grouping results by specified fields and returning counts per group along with a total. Useful for dashboards and analytics. - - :param body: Case aggregate request payload. - :type body: CaseAggregateRequest - :rtype: CaseAggregateResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["body"] = body - - return self._aggregate_cases_endpoint.call_with_http_info(**kwargs) - def archive_case( self, case_id: str, @@ -1858,23 +931,6 @@ def assign_case( return self._assign_case_endpoint.call_with_http_info(**kwargs) - def bulk_update_cases( - self, - body: CaseBulkUpdateRequest, - ) -> None: - """Bulk update cases. - - Applies a single action (such as changing priority, status, assignment, or archiving) to multiple cases at once. The list of case IDs and the action type with its payload are specified in the request body. - - :param body: Case bulk update request payload. - :type body: CaseBulkUpdateRequest - :rtype: None - """ - kwargs: Dict[str, Any] = {} - kwargs["body"] = body - - return self._bulk_update_cases_endpoint.call_with_http_info(**kwargs) - def comment_case( self, case_id: str, @@ -1897,37 +953,6 @@ def comment_case( return self._comment_case_endpoint.call_with_http_info(**kwargs) - def count_cases( - self, - *, - query_filter: Union[str, UnsetType] = unset, - group_bys: Union[str, UnsetType] = unset, - limit: Union[int, UnsetType] = unset, - ) -> CaseCountResponse: - """Count cases. - - Returns case counts, optionally grouped by one or more fields (for example, status, priority). Supports a query filter to narrow the scope. - - :param query_filter: Filter query for cases. - :type query_filter: str, optional - :param group_bys: Comma-separated fields to group by. - :type group_bys: str, optional - :param limit: Maximum facet values to return. - :type limit: int, optional - :rtype: CaseCountResponse - """ - kwargs: Dict[str, Any] = {} - if query_filter is not unset: - kwargs["query_filter"] = query_filter - - if group_bys is not unset: - kwargs["group_bys"] = group_bys - - if limit is not unset: - kwargs["limit"] = limit - - return self._count_cases_endpoint.call_with_http_info(**kwargs) - def create_case( self, body: CaseCreateRequest, @@ -1945,28 +970,6 @@ def create_case( return self._create_case_endpoint.call_with_http_info(**kwargs) - def create_case_automation_rule( - self, - project_id: str, - body: AutomationRuleCreateRequest, - ) -> AutomationRuleResponse: - """Create an automation rule. - - Creates an automation rule for a project. The rule defines a trigger event (for example, case created, status transitioned) and an action to execute. - - :param project_id: The UUID of the project that owns the automation rules. - :type project_id: str - :param body: Automation rule payload. - :type body: AutomationRuleCreateRequest - :rtype: AutomationRuleResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["project_id"] = project_id - - kwargs["body"] = body - - return self._create_case_automation_rule_endpoint.call_with_http_info(**kwargs) - def create_case_jira_issue( self, case_id: str, @@ -1989,23 +992,6 @@ def create_case_jira_issue( return self._create_case_jira_issue_endpoint.call_with_http_info(**kwargs) - def create_case_link( - self, - body: CaseLinkCreateRequest, - ) -> CaseLinkResponse: - """Create a case link. - - Creates a directional link between two cases (for example, case A blocks case B). The parent and child cases and their relationship type must be specified. - - :param body: Case link create request. - :type body: CaseLinkCreateRequest - :rtype: CaseLinkResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["body"] = body - - return self._create_case_link_endpoint.call_with_http_info(**kwargs) - def create_case_notebook( self, case_id: str, @@ -2050,40 +1036,6 @@ def create_case_service_now_ticket( return self._create_case_service_now_ticket_endpoint.call_with_http_info(**kwargs) - def create_case_view( - self, - body: CaseViewCreateRequest, - ) -> CaseViewResponse: - """Create a case view. - - Creates a new saved case view with a name, filter query, and associated project. Optionally, a notification rule can be linked to the view. - - :param body: Case view payload. - :type body: CaseViewCreateRequest - :rtype: CaseViewResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["body"] = body - - return self._create_case_view_endpoint.call_with_http_info(**kwargs) - - def create_maintenance_window( - self, - body: MaintenanceWindowCreateRequest, - ) -> MaintenanceWindowResponse: - """Create a maintenance window. - - Creates a maintenance window for event management cases with a name, case filter query, and time range (start and end). - - :param body: Maintenance window payload. - :type body: MaintenanceWindowCreateRequest - :rtype: MaintenanceWindowResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["body"] = body - - return self._create_maintenance_window_endpoint.call_with_http_info(**kwargs) - def create_project( self, body: ProjectCreateRequest, @@ -2123,28 +1075,6 @@ def create_project_notification_rule( return self._create_project_notification_rule_endpoint.call_with_http_info(**kwargs) - def delete_case_automation_rule( - self, - project_id: str, - rule_id: str, - ) -> None: - """Delete an automation rule. - - Permanently deletes an automation rule from a project. - - :param project_id: The UUID of the project that owns the automation rules. - :type project_id: str - :param rule_id: The UUID of the automation rule. - :type rule_id: str - :rtype: None - """ - kwargs: Dict[str, Any] = {} - kwargs["project_id"] = project_id - - kwargs["rule_id"] = rule_id - - return self._delete_case_automation_rule_endpoint.call_with_http_info(**kwargs) - def delete_case_comment( self, case_id: str, @@ -2156,7 +1086,7 @@ def delete_case_comment( :param case_id: Case's UUID or key :type case_id: str - :param cell_id: The UUID of the timeline cell (comment) to update. + :param cell_id: Timeline cell's UUID :type cell_id: str :rtype: None """ @@ -2174,171 +1104,59 @@ def delete_case_custom_attribute( ) -> CaseResponse: """Delete custom attribute from case. - Delete custom attribute from case - - :param case_id: Case's UUID or key - :type case_id: str - :param custom_attribute_key: Case Custom attribute's key - :type custom_attribute_key: str - :rtype: CaseResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["case_id"] = case_id - - kwargs["custom_attribute_key"] = custom_attribute_key - - return self._delete_case_custom_attribute_endpoint.call_with_http_info(**kwargs) - - def delete_case_link( - self, - link_id: str, - ) -> None: - """Delete a case link. - - Deletes an existing link between cases by link ID. - - :param link_id: The UUID of the case link. - :type link_id: str - :rtype: None - """ - kwargs: Dict[str, Any] = {} - kwargs["link_id"] = link_id - - return self._delete_case_link_endpoint.call_with_http_info(**kwargs) - - def delete_case_view( - self, - view_id: str, - ) -> None: - """Delete a case view. - - Permanently deletes a saved case view. - - :param view_id: The UUID of the case view. - :type view_id: str - :rtype: None - """ - kwargs: Dict[str, Any] = {} - kwargs["view_id"] = view_id - - return self._delete_case_view_endpoint.call_with_http_info(**kwargs) - - def delete_maintenance_window( - self, - maintenance_window_id: str, - ) -> None: - """Delete a maintenance window. - - Permanently deletes a maintenance window. - - :param maintenance_window_id: The UUID of the maintenance window. - :type maintenance_window_id: str - :rtype: None - """ - kwargs: Dict[str, Any] = {} - kwargs["maintenance_window_id"] = maintenance_window_id - - return self._delete_maintenance_window_endpoint.call_with_http_info(**kwargs) - - def delete_project( - self, - project_id: str, - ) -> None: - """Remove a project. - - Remove a project using the project's ``id``. - - :param project_id: Project UUID. - :type project_id: str - :rtype: None - """ - kwargs: Dict[str, Any] = {} - kwargs["project_id"] = project_id - - return self._delete_project_endpoint.call_with_http_info(**kwargs) - - def delete_project_notification_rule( - self, - project_id: str, - notification_rule_id: str, - ) -> None: - """Delete a notification rule. - - Delete a notification rule using the notification rule's ``id``. - - :param project_id: Project UUID - :type project_id: str - :param notification_rule_id: Notification Rule UUID - :type notification_rule_id: str - :rtype: None - """ - kwargs: Dict[str, Any] = {} - kwargs["project_id"] = project_id - - kwargs["notification_rule_id"] = notification_rule_id - - return self._delete_project_notification_rule_endpoint.call_with_http_info(**kwargs) - - def disable_case_automation_rule( - self, - project_id: str, - rule_id: str, - ) -> AutomationRuleResponse: - """Disable an automation rule. - - Disables an automation rule so it no longer triggers on case events. The rule configuration is preserved. + Delete custom attribute from case - :param project_id: The UUID of the project that owns the automation rules. - :type project_id: str - :param rule_id: The UUID of the automation rule. - :type rule_id: str - :rtype: AutomationRuleResponse + :param case_id: Case's UUID or key + :type case_id: str + :param custom_attribute_key: Case Custom attribute's key + :type custom_attribute_key: str + :rtype: CaseResponse """ kwargs: Dict[str, Any] = {} - kwargs["project_id"] = project_id + kwargs["case_id"] = case_id - kwargs["rule_id"] = rule_id + kwargs["custom_attribute_key"] = custom_attribute_key - return self._disable_case_automation_rule_endpoint.call_with_http_info(**kwargs) + return self._delete_case_custom_attribute_endpoint.call_with_http_info(**kwargs) - def enable_case_automation_rule( + def delete_project( self, project_id: str, - rule_id: str, - ) -> AutomationRuleResponse: - """Enable an automation rule. + ) -> None: + """Remove a project. - Enables a previously disabled automation rule so it triggers on matching case events. + Remove a project using the project's ``id``. - :param project_id: The UUID of the project that owns the automation rules. + :param project_id: Project UUID. :type project_id: str - :param rule_id: The UUID of the automation rule. - :type rule_id: str - :rtype: AutomationRuleResponse + :rtype: None """ kwargs: Dict[str, Any] = {} kwargs["project_id"] = project_id - kwargs["rule_id"] = rule_id - - return self._enable_case_automation_rule_endpoint.call_with_http_info(**kwargs) + return self._delete_project_endpoint.call_with_http_info(**kwargs) - def favorite_case_project( + def delete_project_notification_rule( self, project_id: str, + notification_rule_id: str, ) -> None: - """Favorite a project. + """Delete a notification rule. - Marks a case project as a favorite for the current authenticated user. + Delete a notification rule using the notification rule's ``id``. - :param project_id: Project UUID. + :param project_id: Project UUID :type project_id: str + :param notification_rule_id: Notification Rule UUID + :type notification_rule_id: str :rtype: None """ kwargs: Dict[str, Any] = {} kwargs["project_id"] = project_id - return self._favorite_case_project_endpoint.call_with_http_info(**kwargs) + kwargs["notification_rule_id"] = notification_rule_id + + return self._delete_project_notification_rule_endpoint.call_with_http_info(**kwargs) def get_case( self, @@ -2357,45 +1175,6 @@ def get_case( return self._get_case_endpoint.call_with_http_info(**kwargs) - def get_case_automation_rule( - self, - project_id: str, - rule_id: str, - ) -> AutomationRuleResponse: - """Get an automation rule. - - Returns a single automation rule identified by its UUID, including its trigger, action, and current state (enabled/disabled). - - :param project_id: The UUID of the project that owns the automation rules. - :type project_id: str - :param rule_id: The UUID of the automation rule. - :type rule_id: str - :rtype: AutomationRuleResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["project_id"] = project_id - - kwargs["rule_id"] = rule_id - - return self._get_case_automation_rule_endpoint.call_with_http_info(**kwargs) - - def get_case_view( - self, - view_id: str, - ) -> CaseViewResponse: - """Get a case view. - - Returns a single saved case view identified by its UUID, including its query, associated project, and timestamps. - - :param view_id: The UUID of the case view. - :type view_id: str - :rtype: CaseViewResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["view_id"] = view_id - - return self._get_case_view_endpoint.call_with_http_info(**kwargs) - def get_project( self, project_id: str, @@ -2486,146 +1265,6 @@ def link_jira_issue_to_case( return self._link_jira_issue_to_case_endpoint.call_with_http_info(**kwargs) - def list_case_automation_rules( - self, - project_id: str, - ) -> AutomationRulesResponse: - """List automation rules. - - Returns all automation rules configured for a project. Automation rules allow automatic actions to be triggered by case events like creation, status transitions, or attribute changes. - - :param project_id: The UUID of the project that owns the automation rules. - :type project_id: str - :rtype: AutomationRulesResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["project_id"] = project_id - - return self._list_case_automation_rules_endpoint.call_with_http_info(**kwargs) - - def list_case_links( - self, - entity_type: str, - entity_id: str, - *, - relationship: Union[str, UnsetType] = unset, - ) -> CaseLinksResponse: - """List case links. - - Returns all links associated with a case. Links define relationships (for example, BLOCKS) between cases. Requires entity_type and entity_id query parameters. - - :param entity_type: The entity type to look up links for. Use ``CASE`` to find links for a specific case. - :type entity_type: str - :param entity_id: The UUID of the entity to look up links for. - :type entity_id: str - :param relationship: Optional filter to only return links of a specific relationship type (for example, ``BLOCKS`` or ``CAUSES`` ). - :type relationship: str, optional - :rtype: CaseLinksResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["entity_type"] = entity_type - - kwargs["entity_id"] = entity_id - - if relationship is not unset: - kwargs["relationship"] = relationship - - return self._list_case_links_endpoint.call_with_http_info(**kwargs) - - def list_case_timeline( - self, - case_id: str, - *, - page_size: Union[int, UnsetType] = unset, - page_number: Union[int, UnsetType] = unset, - sort_ascending: Union[bool, UnsetType] = unset, - ) -> TimelineResponse: - """Get case timeline. - - Returns the timeline of events for a case, including comments, status changes, and other activity. Supports pagination and sort order. - - :param case_id: Case's UUID or key - :type case_id: str - :param page_size: Number of timeline cells to return per page. - :type page_size: int, optional - :param page_number: Zero-based page number for pagination. - :type page_number: int, optional - :param sort_ascending: If ``true`` , returns timeline cells in chronological order (oldest first). Defaults to ``false`` (newest first). - :type sort_ascending: bool, optional - :rtype: TimelineResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["case_id"] = case_id - - if page_size is not unset: - kwargs["page_size"] = page_size - - if page_number is not unset: - kwargs["page_number"] = page_number - - if sort_ascending is not unset: - kwargs["sort_ascending"] = sort_ascending - - return self._list_case_timeline_endpoint.call_with_http_info(**kwargs) - - def list_case_views( - self, - project_id: str, - ) -> CaseViewsResponse: - """List case views. - - Returns all saved case views for a given project. Views are saved search queries that allow quick access to filtered lists of cases. - - :param project_id: Filter views by project identifier. - :type project_id: str - :rtype: CaseViewsResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["project_id"] = project_id - - return self._list_case_views_endpoint.call_with_http_info(**kwargs) - - def list_case_watchers( - self, - case_id: str, - ) -> CaseWatchersResponse: - """List case watchers. - - Returns the list of users who are watching a case. Watchers receive notifications about updates to the case. - - :param case_id: Case's UUID or key - :type case_id: str - :rtype: CaseWatchersResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["case_id"] = case_id - - return self._list_case_watchers_endpoint.call_with_http_info(**kwargs) - - def list_maintenance_windows( - self, - ) -> MaintenanceWindowsResponse: - """List maintenance windows. - - Returns all configured maintenance windows for event management cases. Maintenance windows define time periods during which case notifications and automation rules are suppressed for cases matching a given query. - - :rtype: MaintenanceWindowsResponse - """ - kwargs: Dict[str, Any] = {} - return self._list_maintenance_windows_endpoint.call_with_http_info(**kwargs) - - def list_user_case_project_favorites( - self, - ) -> ProjectFavoritesResponse: - """List project favorites. - - Returns the list of case projects that the current authenticated user has marked as favorites. - - :rtype: ProjectFavoritesResponse - """ - kwargs: Dict[str, Any] = {} - return self._list_user_case_project_favorites_endpoint.call_with_http_info(**kwargs) - def move_case_to_project( self, case_id: str, @@ -2648,28 +1287,6 @@ def move_case_to_project( return self._move_case_to_project_endpoint.call_with_http_info(**kwargs) - def remove_case_insights( - self, - case_id: str, - body: CaseInsightsRequest, - ) -> CaseResponse: - """Remove insights from a case. - - Removes one or more previously added insights from a case by specifying their type and resource identifier in the request body. - - :param case_id: Case's UUID or key - :type case_id: str - :param body: Case insights request. - :type body: CaseInsightsRequest - :rtype: CaseResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["case_id"] = case_id - - kwargs["body"] = body - - return self._remove_case_insights_endpoint.call_with_http_info(**kwargs) - def search_cases( self, *, @@ -2813,23 +1430,6 @@ def unassign_case( return self._unassign_case_endpoint.call_with_http_info(**kwargs) - def unfavorite_case_project( - self, - project_id: str, - ) -> None: - """Unfavorite a project. - - Removes a case project from the current user's favorites list. - - :param project_id: Project UUID. - :type project_id: str - :rtype: None - """ - kwargs: Dict[str, Any] = {} - kwargs["project_id"] = project_id - - return self._unfavorite_case_project_endpoint.call_with_http_info(**kwargs) - def unlink_jira_issue( self, case_id: str, @@ -2847,28 +1447,6 @@ def unlink_jira_issue( return self._unlink_jira_issue_endpoint.call_with_http_info(**kwargs) - def unwatch_case( - self, - case_id: str, - user_uuid: str, - ) -> None: - """Unwatch a case. - - Removes a user from the watchers list of a case. The user no longer receives notifications about updates to the case. - - :param case_id: Case's UUID or key - :type case_id: str - :param user_uuid: The UUID of the user to add or remove as a watcher. - :type user_uuid: str - :rtype: None - """ - kwargs: Dict[str, Any] = {} - kwargs["case_id"] = case_id - - kwargs["user_uuid"] = user_uuid - - return self._unwatch_case_endpoint.call_with_http_info(**kwargs) - def update_attributes( self, case_id: str, @@ -2891,60 +1469,6 @@ def update_attributes( return self._update_attributes_endpoint.call_with_http_info(**kwargs) - def update_case_automation_rule( - self, - project_id: str, - rule_id: str, - body: AutomationRuleUpdateRequest, - ) -> AutomationRuleResponse: - """Update an automation rule. - - Updates the trigger, action, name, or state of an existing automation rule. - - :param project_id: The UUID of the project that owns the automation rules. - :type project_id: str - :param rule_id: The UUID of the automation rule. - :type rule_id: str - :param body: Automation rule payload. - :type body: AutomationRuleUpdateRequest - :rtype: AutomationRuleResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["project_id"] = project_id - - kwargs["rule_id"] = rule_id - - kwargs["body"] = body - - return self._update_case_automation_rule_endpoint.call_with_http_info(**kwargs) - - def update_case_comment( - self, - case_id: str, - cell_id: str, - body: CaseUpdateCommentRequest, - ) -> None: - """Update case comment. - - Updates the text content of an existing comment on a case timeline. The comment is identified by its cell ID. - - :param case_id: Case's UUID or key - :type case_id: str - :param cell_id: The UUID of the timeline cell (comment) to update. - :type cell_id: str - :param body: Case update comment payload. - :type body: CaseUpdateCommentRequest - :rtype: None - """ - kwargs: Dict[str, Any] = {} - kwargs["case_id"] = case_id - - kwargs["cell_id"] = cell_id - - kwargs["body"] = body - - return self._update_case_comment_endpoint.call_with_http_info(**kwargs) - def update_case_custom_attribute( self, case_id: str, @@ -2994,50 +1518,6 @@ def update_case_description( return self._update_case_description_endpoint.call_with_http_info(**kwargs) - def update_case_due_date( - self, - case_id: str, - body: CaseUpdateDueDateRequest, - ) -> CaseResponse: - """Update case due date. - - Sets or updates the due date for a case. The due date is a calendar date (without a time component) indicating when the case should be resolved. - - :param case_id: Case's UUID or key - :type case_id: str - :param body: Case due date update payload. - :type body: CaseUpdateDueDateRequest - :rtype: CaseResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["case_id"] = case_id - - kwargs["body"] = body - - return self._update_case_due_date_endpoint.call_with_http_info(**kwargs) - - def update_case_resolved_reason( - self, - case_id: str, - body: CaseUpdateResolvedReasonRequest, - ) -> CaseResponse: - """Update case resolved reason. - - Sets the resolved reason for a security case (for example, FALSE_POSITIVE, TRUE_POSITIVE). Applicable to security-type cases. - - :param case_id: Case's UUID or key - :type case_id: str - :param body: Case resolved reason update payload. - :type body: CaseUpdateResolvedReasonRequest - :rtype: CaseResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["case_id"] = case_id - - kwargs["body"] = body - - return self._update_case_resolved_reason_endpoint.call_with_http_info(**kwargs) - def update_case_title( self, case_id: str, @@ -3060,50 +1540,6 @@ def update_case_title( return self._update_case_title_endpoint.call_with_http_info(**kwargs) - def update_case_view( - self, - view_id: str, - body: CaseViewUpdateRequest, - ) -> CaseViewResponse: - """Update a case view. - - Updates the name, query, or notification rule of an existing case view. - - :param view_id: The UUID of the case view. - :type view_id: str - :param body: Case view payload. - :type body: CaseViewUpdateRequest - :rtype: CaseViewResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["view_id"] = view_id - - kwargs["body"] = body - - return self._update_case_view_endpoint.call_with_http_info(**kwargs) - - def update_maintenance_window( - self, - maintenance_window_id: str, - body: MaintenanceWindowUpdateRequest, - ) -> MaintenanceWindowResponse: - """Update a maintenance window. - - Updates the name, query, start time, or end time of an existing maintenance window. - - :param maintenance_window_id: The UUID of the maintenance window. - :type maintenance_window_id: str - :param body: Maintenance window payload. - :type body: MaintenanceWindowUpdateRequest - :rtype: MaintenanceWindowResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["maintenance_window_id"] = maintenance_window_id - - kwargs["body"] = body - - return self._update_maintenance_window_endpoint.call_with_http_info(**kwargs) - def update_priority( self, case_id: str, @@ -3196,25 +1632,3 @@ def update_status( kwargs["body"] = body return self._update_status_endpoint.call_with_http_info(**kwargs) - - def watch_case( - self, - case_id: str, - user_uuid: str, - ) -> None: - """Watch a case. - - Adds a user (identified by their UUID) as a watcher of a case. The user receives notifications about subsequent updates to the case. - - :param case_id: Case's UUID or key - :type case_id: str - :param user_uuid: The UUID of the user to add or remove as a watcher. - :type user_uuid: str - :rtype: None - """ - kwargs: Dict[str, Any] = {} - kwargs["case_id"] = case_id - - kwargs["user_uuid"] = user_uuid - - return self._watch_case_endpoint.call_with_http_info(**kwargs) diff --git a/src/datadog_api_client/v2/api/case_management_attribute_api.py b/src/datadog_api_client/v2/api/case_management_attribute_api.py index 33d8ebc05e..f27f357ad0 100644 --- a/src/datadog_api_client/v2/api/case_management_attribute_api.py +++ b/src/datadog_api_client/v2/api/case_management_attribute_api.py @@ -10,7 +10,6 @@ from datadog_api_client.v2.model.custom_attribute_configs_response import CustomAttributeConfigsResponse from datadog_api_client.v2.model.custom_attribute_config_response import CustomAttributeConfigResponse from datadog_api_client.v2.model.custom_attribute_config_create_request import CustomAttributeConfigCreateRequest -from datadog_api_client.v2.model.custom_attribute_config_update_request import CustomAttributeConfigUpdateRequest class CaseManagementAttributeApi: @@ -117,38 +116,6 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._update_custom_attribute_config_endpoint = _Endpoint( - settings={ - "response_type": (CustomAttributeConfigResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/types/{case_type_id}/custom_attributes/{custom_attribute_id}", - "operation_id": "update_custom_attribute_config", - "http_method": "PUT", - "version": "v2", - }, - params_map={ - "case_type_id": { - "required": True, - "openapi_types": (str,), - "attribute": "case_type_id", - "location": "path", - }, - "custom_attribute_id": { - "required": True, - "openapi_types": (str,), - "attribute": "custom_attribute_id", - "location": "path", - }, - "body": { - "required": True, - "openapi_types": (CustomAttributeConfigUpdateRequest,), - "location": "body", - }, - }, - headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, - api_client=api_client, - ) - def create_custom_attribute_config( self, case_type_id: str, @@ -158,7 +125,7 @@ def create_custom_attribute_config( Create custom attribute config for a case type - :param case_type_id: The UUID of the case type. + :param case_type_id: Case type's UUID :type case_type_id: str :param body: Custom attribute config payload :type body: CustomAttributeConfigCreateRequest @@ -180,7 +147,7 @@ def delete_custom_attribute_config( Delete custom attribute config - :param case_type_id: The UUID of the case type. + :param case_type_id: Case type's UUID :type case_type_id: str :param custom_attribute_id: Case Custom attribute's UUID :type custom_attribute_id: str @@ -201,7 +168,7 @@ def get_all_custom_attribute_configs_by_case_type( Get all custom attribute config of case type - :param case_type_id: The UUID of the case type. + :param case_type_id: Case type's UUID :type case_type_id: str :rtype: CustomAttributeConfigsResponse """ @@ -221,30 +188,3 @@ def get_all_custom_attributes( """ kwargs: Dict[str, Any] = {} return self._get_all_custom_attributes_endpoint.call_with_http_info(**kwargs) - - def update_custom_attribute_config( - self, - case_type_id: str, - custom_attribute_id: str, - body: CustomAttributeConfigUpdateRequest, - ) -> CustomAttributeConfigResponse: - """Update custom attribute config. - - Updates the display name, description, type, or options of an existing custom attribute configuration for a case type. - - :param case_type_id: The UUID of the case type. - :type case_type_id: str - :param custom_attribute_id: Case Custom attribute's UUID - :type custom_attribute_id: str - :param body: Custom attribute config payload. - :type body: CustomAttributeConfigUpdateRequest - :rtype: CustomAttributeConfigResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["case_type_id"] = case_type_id - - kwargs["custom_attribute_id"] = custom_attribute_id - - kwargs["body"] = body - - return self._update_custom_attribute_config_endpoint.call_with_http_info(**kwargs) diff --git a/src/datadog_api_client/v2/api/case_management_type_api.py b/src/datadog_api_client/v2/api/case_management_type_api.py index ca49e0ed61..37551c8731 100644 --- a/src/datadog_api_client/v2/api/case_management_type_api.py +++ b/src/datadog_api_client/v2/api/case_management_type_api.py @@ -10,7 +10,6 @@ from datadog_api_client.v2.model.case_types_response import CaseTypesResponse from datadog_api_client.v2.model.case_type_response import CaseTypeResponse from datadog_api_client.v2.model.case_type_create_request import CaseTypeCreateRequest -from datadog_api_client.v2.model.case_type_update_request import CaseTypeUpdateRequest class CaseManagementTypeApi: @@ -82,32 +81,6 @@ def __init__(self, api_client=None): api_client=api_client, ) - self._update_case_type_endpoint = _Endpoint( - settings={ - "response_type": (CaseTypeResponse,), - "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], - "endpoint_path": "/api/v2/cases/types/{case_type_id}", - "operation_id": "update_case_type", - "http_method": "PUT", - "version": "v2", - }, - params_map={ - "case_type_id": { - "required": True, - "openapi_types": (str,), - "attribute": "case_type_id", - "location": "path", - }, - "body": { - "required": True, - "openapi_types": (CaseTypeUpdateRequest,), - "location": "body", - }, - }, - headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, - api_client=api_client, - ) - def create_case_type( self, body: CaseTypeCreateRequest, @@ -133,7 +106,7 @@ def delete_case_type( Delete a case type - :param case_type_id: The UUID of the case type. + :param case_type_id: Case type's UUID :type case_type_id: str :rtype: None """ @@ -153,25 +126,3 @@ def get_all_case_types( """ kwargs: Dict[str, Any] = {} return self._get_all_case_types_endpoint.call_with_http_info(**kwargs) - - def update_case_type( - self, - case_type_id: str, - body: CaseTypeUpdateRequest, - ) -> CaseTypeResponse: - """Update a case type. - - Updates the name, emoji, or description of an existing case type. - - :param case_type_id: The UUID of the case type. - :type case_type_id: str - :param body: Case type payload. - :type body: CaseTypeUpdateRequest - :rtype: CaseTypeResponse - """ - kwargs: Dict[str, Any] = {} - kwargs["case_type_id"] = case_type_id - - kwargs["body"] = body - - return self._update_case_type_endpoint.call_with_http_info(**kwargs) diff --git a/src/datadog_api_client/v2/api/model_lab_api_api.py b/src/datadog_api_client/v2/api/model_lab_api_api.py new file mode 100644 index 0000000000..6a20f4a6a6 --- /dev/null +++ b/src/datadog_api_client/v2/api/model_lab_api_api.py @@ -0,0 +1,927 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import Any, Dict, Union + +from datadog_api_client.api_client import ApiClient, Endpoint as _Endpoint +from datadog_api_client.configuration import Configuration +from datadog_api_client.model_utils import ( + file_type, + UnsetType, + unset, + UUID, +) +from datadog_api_client.v2.model.model_lab_facet_keys_response import ModelLabFacetKeysResponse +from datadog_api_client.v2.model.model_lab_facet_values_response import ModelLabFacetValuesResponse +from datadog_api_client.v2.model.model_lab_facet_type import ModelLabFacetType +from datadog_api_client.v2.model.model_lab_project_facet_type import ModelLabProjectFacetType +from datadog_api_client.v2.model.model_lab_projects_response import ModelLabProjectsResponse +from datadog_api_client.v2.model.model_lab_project_response import ModelLabProjectResponse +from datadog_api_client.v2.model.model_lab_project_artifacts_response import ModelLabProjectArtifactsResponse +from datadog_api_client.v2.model.model_lab_runs_response import ModelLabRunsResponse +from datadog_api_client.v2.model.model_lab_run_status import ModelLabRunStatus +from datadog_api_client.v2.model.model_lab_run_response import ModelLabRunResponse +from datadog_api_client.v2.model.model_lab_run_artifacts_response import ModelLabRunArtifactsResponse + + +class ModelLabAPIApi: + """ + Manage Model Lab projects, runs, artifacts, and facets for ML experiment tracking. + """ + + def __init__(self, api_client=None): + if api_client is None: + api_client = ApiClient(Configuration()) + self.api_client = api_client + + self._delete_model_lab_run_endpoint = _Endpoint( + settings={ + "response_type": None, + "auth": ["apiKeyAuth", "appKeyAuth"], + "endpoint_path": "/api/v2/model-lab-api/runs/{run_id}", + "operation_id": "delete_model_lab_run", + "http_method": "DELETE", + "version": "v2", + }, + params_map={ + "run_id": { + "required": True, + "openapi_types": (int,), + "attribute": "run_id", + "location": "path", + }, + }, + headers_map={ + "accept": ["*/*"], + }, + api_client=api_client, + ) + + self._get_model_lab_artifact_content_endpoint = _Endpoint( + settings={ + "response_type": (file_type,), + "auth": ["apiKeyAuth", "appKeyAuth"], + "endpoint_path": "/api/v2/model-lab-api/artifacts/content", + "operation_id": "get_model_lab_artifact_content", + "http_method": "GET", + "version": "v2", + }, + params_map={ + "project_id": { + "required": True, + "openapi_types": (str,), + "attribute": "project_id", + "location": "query", + }, + "artifact_path": { + "required": True, + "openapi_types": (str,), + "attribute": "artifact_path", + "location": "query", + }, + }, + headers_map={ + "accept": ["application/octet-stream", "application/json"], + }, + api_client=api_client, + ) + + self._get_model_lab_project_endpoint = _Endpoint( + settings={ + "response_type": (ModelLabProjectResponse,), + "auth": ["apiKeyAuth", "appKeyAuth"], + "endpoint_path": "/api/v2/model-lab-api/projects/{project_id}", + "operation_id": "get_model_lab_project", + "http_method": "GET", + "version": "v2", + }, + params_map={ + "project_id": { + "required": True, + "openapi_types": (int,), + "attribute": "project_id", + "location": "path", + }, + }, + headers_map={ + "accept": ["application/json"], + }, + api_client=api_client, + ) + + self._get_model_lab_run_endpoint = _Endpoint( + settings={ + "response_type": (ModelLabRunResponse,), + "auth": ["apiKeyAuth", "appKeyAuth"], + "endpoint_path": "/api/v2/model-lab-api/runs/{run_id}", + "operation_id": "get_model_lab_run", + "http_method": "GET", + "version": "v2", + }, + params_map={ + "run_id": { + "required": True, + "openapi_types": (int,), + "attribute": "run_id", + "location": "path", + }, + }, + headers_map={ + "accept": ["application/json"], + }, + api_client=api_client, + ) + + self._list_model_lab_project_artifacts_endpoint = _Endpoint( + settings={ + "response_type": (ModelLabProjectArtifactsResponse,), + "auth": ["apiKeyAuth", "appKeyAuth"], + "endpoint_path": "/api/v2/model-lab-api/projects/{project_id}/artifacts", + "operation_id": "list_model_lab_project_artifacts", + "http_method": "GET", + "version": "v2", + }, + params_map={ + "project_id": { + "required": True, + "openapi_types": (int,), + "attribute": "project_id", + "location": "path", + }, + }, + headers_map={ + "accept": ["application/json"], + }, + api_client=api_client, + ) + + self._list_model_lab_project_facet_keys_endpoint = _Endpoint( + settings={ + "response_type": (ModelLabFacetKeysResponse,), + "auth": ["apiKeyAuth", "appKeyAuth"], + "endpoint_path": "/api/v2/model-lab-api/project-facet-keys", + "operation_id": "list_model_lab_project_facet_keys", + "http_method": "GET", + "version": "v2", + }, + params_map={}, + headers_map={ + "accept": ["application/json"], + }, + api_client=api_client, + ) + + self._list_model_lab_project_facet_values_endpoint = _Endpoint( + settings={ + "response_type": (ModelLabFacetValuesResponse,), + "auth": ["apiKeyAuth", "appKeyAuth"], + "endpoint_path": "/api/v2/model-lab-api/project-facet-values", + "operation_id": "list_model_lab_project_facet_values", + "http_method": "GET", + "version": "v2", + }, + params_map={ + "facet_type": { + "required": True, + "openapi_types": (ModelLabProjectFacetType,), + "attribute": "facet_type", + "location": "query", + }, + "facet_name": { + "required": True, + "openapi_types": (str,), + "attribute": "facet_name", + "location": "query", + }, + }, + headers_map={ + "accept": ["application/json"], + }, + api_client=api_client, + ) + + self._list_model_lab_projects_endpoint = _Endpoint( + settings={ + "response_type": (ModelLabProjectsResponse,), + "auth": ["apiKeyAuth", "appKeyAuth"], + "endpoint_path": "/api/v2/model-lab-api/projects", + "operation_id": "list_model_lab_projects", + "http_method": "GET", + "version": "v2", + }, + params_map={ + "filter": { + "openapi_types": (str,), + "attribute": "filter", + "location": "query", + }, + "filter_owner_id": { + "openapi_types": (UUID,), + "attribute": "filter[owner_id]", + "location": "query", + }, + "filter_tags": { + "openapi_types": (str,), + "attribute": "filter[tags]", + "location": "query", + }, + "sort": { + "openapi_types": (str,), + "attribute": "sort", + "location": "query", + }, + "page_size": { + "validation": { + "inclusive_maximum": 100, + }, + "openapi_types": (int,), + "attribute": "page[size]", + "location": "query", + }, + "page_number": { + "openapi_types": (int,), + "attribute": "page[number]", + "location": "query", + }, + }, + headers_map={ + "accept": ["application/json"], + }, + api_client=api_client, + ) + + self._list_model_lab_run_artifacts_endpoint = _Endpoint( + settings={ + "response_type": (ModelLabRunArtifactsResponse,), + "auth": ["apiKeyAuth", "appKeyAuth"], + "endpoint_path": "/api/v2/model-lab-api/runs/{run_id}/artifacts", + "operation_id": "list_model_lab_run_artifacts", + "http_method": "GET", + "version": "v2", + }, + params_map={ + "run_id": { + "required": True, + "openapi_types": (int,), + "attribute": "run_id", + "location": "path", + }, + "path": { + "openapi_types": (str,), + "attribute": "path", + "location": "query", + }, + }, + headers_map={ + "accept": ["application/json"], + }, + api_client=api_client, + ) + + self._list_model_lab_run_facet_keys_endpoint = _Endpoint( + settings={ + "response_type": (ModelLabFacetKeysResponse,), + "auth": ["apiKeyAuth", "appKeyAuth"], + "endpoint_path": "/api/v2/model-lab-api/facet-keys", + "operation_id": "list_model_lab_run_facet_keys", + "http_method": "GET", + "version": "v2", + }, + params_map={ + "filter_project_id": { + "required": True, + "openapi_types": (int,), + "attribute": "filter[project_id]", + "location": "query", + }, + }, + headers_map={ + "accept": ["application/json"], + }, + api_client=api_client, + ) + + self._list_model_lab_run_facet_values_endpoint = _Endpoint( + settings={ + "response_type": (ModelLabFacetValuesResponse,), + "auth": ["apiKeyAuth", "appKeyAuth"], + "endpoint_path": "/api/v2/model-lab-api/facet-values", + "operation_id": "list_model_lab_run_facet_values", + "http_method": "GET", + "version": "v2", + }, + params_map={ + "filter_project_id": { + "required": True, + "openapi_types": (int,), + "attribute": "filter[project_id]", + "location": "query", + }, + "facet_type": { + "required": True, + "openapi_types": (ModelLabFacetType,), + "attribute": "facet_type", + "location": "query", + }, + "facet_name": { + "required": True, + "openapi_types": (str,), + "attribute": "facet_name", + "location": "query", + }, + }, + headers_map={ + "accept": ["application/json"], + }, + api_client=api_client, + ) + + self._list_model_lab_runs_endpoint = _Endpoint( + settings={ + "response_type": (ModelLabRunsResponse,), + "auth": ["apiKeyAuth", "appKeyAuth"], + "endpoint_path": "/api/v2/model-lab-api/runs", + "operation_id": "list_model_lab_runs", + "http_method": "GET", + "version": "v2", + }, + params_map={ + "filter_id": { + "openapi_types": (str,), + "attribute": "filter[id]", + "location": "query", + }, + "filter": { + "openapi_types": (str,), + "attribute": "filter", + "location": "query", + }, + "filter_owner_id": { + "openapi_types": (str,), + "attribute": "filter[owner_id]", + "location": "query", + }, + "filter_status": { + "openapi_types": (ModelLabRunStatus,), + "attribute": "filter[status]", + "location": "query", + }, + "filter_project_id": { + "openapi_types": (int,), + "attribute": "filter[project_id]", + "location": "query", + }, + "filter_tags": { + "openapi_types": (str,), + "attribute": "filter[tags]", + "location": "query", + }, + "filter_params": { + "openapi_types": (str,), + "attribute": "filter[params]", + "location": "query", + }, + "filter_parent_run_id": { + "openapi_types": (str,), + "attribute": "filter[parent_run_id]", + "location": "query", + }, + "pinned_first": { + "openapi_types": (bool,), + "attribute": "pinned_first", + "location": "query", + }, + "include_pinned": { + "openapi_types": (bool,), + "attribute": "include_pinned", + "location": "query", + }, + "include_descendant_matches": { + "openapi_types": (bool,), + "attribute": "include_descendant_matches", + "location": "query", + }, + "sort": { + "openapi_types": (str,), + "attribute": "sort", + "location": "query", + }, + "page_size": { + "validation": { + "inclusive_maximum": 100, + }, + "openapi_types": (int,), + "attribute": "page[size]", + "location": "query", + }, + "page_number": { + "openapi_types": (int,), + "attribute": "page[number]", + "location": "query", + }, + }, + headers_map={ + "accept": ["application/json"], + }, + api_client=api_client, + ) + + self._pin_model_lab_run_endpoint = _Endpoint( + settings={ + "response_type": None, + "auth": ["apiKeyAuth", "appKeyAuth"], + "endpoint_path": "/api/v2/model-lab-api/runs/{run_id}/pin", + "operation_id": "pin_model_lab_run", + "http_method": "POST", + "version": "v2", + }, + params_map={ + "run_id": { + "required": True, + "openapi_types": (int,), + "attribute": "run_id", + "location": "path", + }, + }, + headers_map={ + "accept": ["*/*"], + }, + api_client=api_client, + ) + + self._star_model_lab_project_endpoint = _Endpoint( + settings={ + "response_type": None, + "auth": ["apiKeyAuth", "appKeyAuth"], + "endpoint_path": "/api/v2/model-lab-api/projects/{project_id}/star", + "operation_id": "star_model_lab_project", + "http_method": "POST", + "version": "v2", + }, + params_map={ + "project_id": { + "required": True, + "openapi_types": (int,), + "attribute": "project_id", + "location": "path", + }, + }, + headers_map={ + "accept": ["*/*"], + }, + api_client=api_client, + ) + + self._unpin_model_lab_run_endpoint = _Endpoint( + settings={ + "response_type": None, + "auth": ["apiKeyAuth", "appKeyAuth"], + "endpoint_path": "/api/v2/model-lab-api/runs/{run_id}/pin", + "operation_id": "unpin_model_lab_run", + "http_method": "DELETE", + "version": "v2", + }, + params_map={ + "run_id": { + "required": True, + "openapi_types": (int,), + "attribute": "run_id", + "location": "path", + }, + }, + headers_map={ + "accept": ["*/*"], + }, + api_client=api_client, + ) + + self._unstar_model_lab_project_endpoint = _Endpoint( + settings={ + "response_type": None, + "auth": ["apiKeyAuth", "appKeyAuth"], + "endpoint_path": "/api/v2/model-lab-api/projects/{project_id}/star", + "operation_id": "unstar_model_lab_project", + "http_method": "DELETE", + "version": "v2", + }, + params_map={ + "project_id": { + "required": True, + "openapi_types": (int,), + "attribute": "project_id", + "location": "path", + }, + }, + headers_map={ + "accept": ["*/*"], + }, + api_client=api_client, + ) + + def delete_model_lab_run( + self, + run_id: int, + ) -> None: + """Delete a Model Lab run. + + Delete a Model Lab run by its ID. + + :param run_id: The ID of the Model Lab run. + :type run_id: int + :rtype: None + """ + kwargs: Dict[str, Any] = {} + kwargs["run_id"] = run_id + + return self._delete_model_lab_run_endpoint.call_with_http_info(**kwargs) + + def get_model_lab_artifact_content( + self, + project_id: str, + artifact_path: str, + ) -> file_type: + """Get Model Lab artifact content. + + Download the raw content of a Model Lab artifact file. + + :param project_id: ID of the project. + :type project_id: str + :param artifact_path: Path to the artifact relative to the project directory. + :type artifact_path: str + :rtype: file_type + """ + kwargs: Dict[str, Any] = {} + kwargs["project_id"] = project_id + + kwargs["artifact_path"] = artifact_path + + return self._get_model_lab_artifact_content_endpoint.call_with_http_info(**kwargs) + + def get_model_lab_project( + self, + project_id: int, + ) -> ModelLabProjectResponse: + """Get a Model Lab project. + + Get a single Model Lab project by its ID. + + :param project_id: The ID of the Model Lab project. + :type project_id: int + :rtype: ModelLabProjectResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["project_id"] = project_id + + return self._get_model_lab_project_endpoint.call_with_http_info(**kwargs) + + def get_model_lab_run( + self, + run_id: int, + ) -> ModelLabRunResponse: + """Get a Model Lab run. + + Get a single Model Lab run by its ID. + + :param run_id: The ID of the Model Lab run. + :type run_id: int + :rtype: ModelLabRunResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["run_id"] = run_id + + return self._get_model_lab_run_endpoint.call_with_http_info(**kwargs) + + def list_model_lab_project_artifacts( + self, + project_id: int, + ) -> ModelLabProjectArtifactsResponse: + """List Model Lab project artifacts. + + List all artifact files for a specific Model Lab project. + + :param project_id: The ID of the Model Lab project. + :type project_id: int + :rtype: ModelLabProjectArtifactsResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["project_id"] = project_id + + return self._list_model_lab_project_artifacts_endpoint.call_with_http_info(**kwargs) + + def list_model_lab_project_facet_keys( + self, + ) -> ModelLabFacetKeysResponse: + """List Model Lab project facet keys. + + List all available facet keys for filtering Model Lab projects. + + :rtype: ModelLabFacetKeysResponse + """ + kwargs: Dict[str, Any] = {} + return self._list_model_lab_project_facet_keys_endpoint.call_with_http_info(**kwargs) + + def list_model_lab_project_facet_values( + self, + facet_type: ModelLabProjectFacetType, + facet_name: str, + ) -> ModelLabFacetValuesResponse: + """List Model Lab project facet values. + + List available facet values for a specific project facet key. + + :param facet_type: Facet type. Valid values: tag. + :type facet_type: ModelLabProjectFacetType + :param facet_name: Facet name. + :type facet_name: str + :rtype: ModelLabFacetValuesResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["facet_type"] = facet_type + + kwargs["facet_name"] = facet_name + + return self._list_model_lab_project_facet_values_endpoint.call_with_http_info(**kwargs) + + def list_model_lab_projects( + self, + *, + filter: Union[str, UnsetType] = unset, + filter_owner_id: Union[UUID, UnsetType] = unset, + filter_tags: Union[str, UnsetType] = unset, + sort: Union[str, UnsetType] = unset, + page_size: Union[int, UnsetType] = unset, + page_number: Union[int, UnsetType] = unset, + ) -> ModelLabProjectsResponse: + """List Model Lab projects. + + List all Model Lab projects for the current organization. + + :param filter: Text search filter for project name or description. + :type filter: str, optional + :param filter_owner_id: Filter by owner UUID. + :type filter_owner_id: UUID, optional + :param filter_tags: Filter by tags. Format: key:value,key2:value2. + :type filter_tags: str, optional + :param sort: Sort field. Valid values: name, created_at, updated_at. Prefix with '-' for descending order (e.g., -updated_at). + :type sort: str, optional + :param page_size: Number of items per page. Maximum is 100. + :type page_size: int, optional + :param page_number: Page number (1-indexed). + :type page_number: int, optional + :rtype: ModelLabProjectsResponse + """ + kwargs: Dict[str, Any] = {} + if filter is not unset: + kwargs["filter"] = filter + + if filter_owner_id is not unset: + kwargs["filter_owner_id"] = filter_owner_id + + if filter_tags is not unset: + kwargs["filter_tags"] = filter_tags + + if sort is not unset: + kwargs["sort"] = sort + + if page_size is not unset: + kwargs["page_size"] = page_size + + if page_number is not unset: + kwargs["page_number"] = page_number + + return self._list_model_lab_projects_endpoint.call_with_http_info(**kwargs) + + def list_model_lab_run_artifacts( + self, + run_id: int, + *, + path: Union[str, UnsetType] = unset, + ) -> ModelLabRunArtifactsResponse: + """List Model Lab run artifacts. + + List artifact files for a specific Model Lab run. + + :param run_id: The ID of the Model Lab run. + :type run_id: int + :param path: Optional subdirectory path within the run's artifacts. + :type path: str, optional + :rtype: ModelLabRunArtifactsResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["run_id"] = run_id + + if path is not unset: + kwargs["path"] = path + + return self._list_model_lab_run_artifacts_endpoint.call_with_http_info(**kwargs) + + def list_model_lab_run_facet_keys( + self, + filter_project_id: int, + ) -> ModelLabFacetKeysResponse: + """List Model Lab run facet keys. + + List all available facet keys for filtering Model Lab runs. + + :param filter_project_id: Filter by project ID. + :type filter_project_id: int + :rtype: ModelLabFacetKeysResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["filter_project_id"] = filter_project_id + + return self._list_model_lab_run_facet_keys_endpoint.call_with_http_info(**kwargs) + + def list_model_lab_run_facet_values( + self, + filter_project_id: int, + facet_type: ModelLabFacetType, + facet_name: str, + ) -> ModelLabFacetValuesResponse: + """List Model Lab run facet values. + + List available facet values for a specific run facet key. + + :param filter_project_id: Filter by project ID. + :type filter_project_id: int + :param facet_type: Facet type. Valid values: parameter, attribute, tag, metric. + :type facet_type: ModelLabFacetType + :param facet_name: Facet name. + :type facet_name: str + :rtype: ModelLabFacetValuesResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["filter_project_id"] = filter_project_id + + kwargs["facet_type"] = facet_type + + kwargs["facet_name"] = facet_name + + return self._list_model_lab_run_facet_values_endpoint.call_with_http_info(**kwargs) + + def list_model_lab_runs( + self, + *, + filter_id: Union[str, UnsetType] = unset, + filter: Union[str, UnsetType] = unset, + filter_owner_id: Union[str, UnsetType] = unset, + filter_status: Union[ModelLabRunStatus, UnsetType] = unset, + filter_project_id: Union[int, UnsetType] = unset, + filter_tags: Union[str, UnsetType] = unset, + filter_params: Union[str, UnsetType] = unset, + filter_parent_run_id: Union[str, UnsetType] = unset, + pinned_first: Union[bool, UnsetType] = unset, + include_pinned: Union[bool, UnsetType] = unset, + include_descendant_matches: Union[bool, UnsetType] = unset, + sort: Union[str, UnsetType] = unset, + page_size: Union[int, UnsetType] = unset, + page_number: Union[int, UnsetType] = unset, + ) -> ModelLabRunsResponse: + """List Model Lab runs. + + List all Model Lab runs for the current organization. + + :param filter_id: Filter by run ID(s). Comma-separated list for multiple IDs. + :type filter_id: str, optional + :param filter: Text search filter for run name or description. + :type filter: str, optional + :param filter_owner_id: Filter by owner UUID. + :type filter_owner_id: str, optional + :param filter_status: Filter by run status. Valid values: pending, running, completed, failed, killed, unresponsive, paused. + :type filter_status: ModelLabRunStatus, optional + :param filter_project_id: Filter by project ID. + :type filter_project_id: int, optional + :param filter_tags: Filter by tags. Format: key:value,key2:value2. + :type filter_tags: str, optional + :param filter_params: Filter by params. Format: key:value,key2:>0.5,key3:true. + :type filter_params: str, optional + :param filter_parent_run_id: Filter by parent run ID. Use 'null' to return only root runs (runs with no parent). + :type filter_parent_run_id: str, optional + :param pinned_first: Sort pinned runs before non-pinned runs. Pinned runs are ordered by pin time descending. + :type pinned_first: bool, optional + :param include_pinned: Include all runs pinned by the current user, regardless of other filters. + :type include_pinned: bool, optional + :param include_descendant_matches: When true, also return runs whose descendants match the active filters. The descendant_match field in each result indicates whether the run was included via a descendant match. + :type include_descendant_matches: bool, optional + :param sort: Sort field. Valid values: name, created_at, updated_at, duration. Prefix with '-' for descending order (e.g., -updated_at). + :type sort: str, optional + :param page_size: Number of items per page. Maximum is 100. + :type page_size: int, optional + :param page_number: Page number (1-indexed). + :type page_number: int, optional + :rtype: ModelLabRunsResponse + """ + kwargs: Dict[str, Any] = {} + if filter_id is not unset: + kwargs["filter_id"] = filter_id + + if filter is not unset: + kwargs["filter"] = filter + + if filter_owner_id is not unset: + kwargs["filter_owner_id"] = filter_owner_id + + if filter_status is not unset: + kwargs["filter_status"] = filter_status + + if filter_project_id is not unset: + kwargs["filter_project_id"] = filter_project_id + + if filter_tags is not unset: + kwargs["filter_tags"] = filter_tags + + if filter_params is not unset: + kwargs["filter_params"] = filter_params + + if filter_parent_run_id is not unset: + kwargs["filter_parent_run_id"] = filter_parent_run_id + + if pinned_first is not unset: + kwargs["pinned_first"] = pinned_first + + if include_pinned is not unset: + kwargs["include_pinned"] = include_pinned + + if include_descendant_matches is not unset: + kwargs["include_descendant_matches"] = include_descendant_matches + + if sort is not unset: + kwargs["sort"] = sort + + if page_size is not unset: + kwargs["page_size"] = page_size + + if page_number is not unset: + kwargs["page_number"] = page_number + + return self._list_model_lab_runs_endpoint.call_with_http_info(**kwargs) + + def pin_model_lab_run( + self, + run_id: int, + ) -> None: + """Pin a Model Lab run. + + Pin a Model Lab run for the current user. + + :param run_id: The ID of the Model Lab run. + :type run_id: int + :rtype: None + """ + kwargs: Dict[str, Any] = {} + kwargs["run_id"] = run_id + + return self._pin_model_lab_run_endpoint.call_with_http_info(**kwargs) + + def star_model_lab_project( + self, + project_id: int, + ) -> None: + """Star a Model Lab project. + + Star a Model Lab project for the current user. + + :param project_id: The ID of the Model Lab project. + :type project_id: int + :rtype: None + """ + kwargs: Dict[str, Any] = {} + kwargs["project_id"] = project_id + + return self._star_model_lab_project_endpoint.call_with_http_info(**kwargs) + + def unpin_model_lab_run( + self, + run_id: int, + ) -> None: + """Unpin a Model Lab run. + + Remove the pin from a Model Lab run for the current user. + + :param run_id: The ID of the Model Lab run. + :type run_id: int + :rtype: None + """ + kwargs: Dict[str, Any] = {} + kwargs["run_id"] = run_id + + return self._unpin_model_lab_run_endpoint.call_with_http_info(**kwargs) + + def unstar_model_lab_project( + self, + project_id: int, + ) -> None: + """Remove star from a Model Lab project. + + Remove the star from a Model Lab project for the current user. + + :param project_id: The ID of the Model Lab project. + :type project_id: int + :rtype: None + """ + kwargs: Dict[str, Any] = {} + kwargs["project_id"] = project_id + + return self._unstar_model_lab_project_endpoint.call_with_http_info(**kwargs) diff --git a/src/datadog_api_client/v2/apis/__init__.py b/src/datadog_api_client/v2/apis/__init__.py index 432f69cbc2..4bec61e66e 100644 --- a/src/datadog_api_client/v2/apis/__init__.py +++ b/src/datadog_api_client/v2/apis/__init__.py @@ -61,6 +61,7 @@ from datadog_api_client.v2.api.logs_restriction_queries_api import LogsRestrictionQueriesApi from datadog_api_client.v2.api.metrics_api import MetricsApi from datadog_api_client.v2.api.microsoft_teams_integration_api import MicrosoftTeamsIntegrationApi +from datadog_api_client.v2.api.model_lab_api_api import ModelLabAPIApi from datadog_api_client.v2.api.monitors_api import MonitorsApi from datadog_api_client.v2.api.network_device_monitoring_api import NetworkDeviceMonitoringApi from datadog_api_client.v2.api.oci_integration_api import OCIIntegrationApi @@ -175,6 +176,7 @@ "LogsRestrictionQueriesApi", "MetricsApi", "MicrosoftTeamsIntegrationApi", + "ModelLabAPIApi", "MonitorsApi", "NetworkDeviceMonitoringApi", "OCIIntegrationApi", diff --git a/src/datadog_api_client/v2/model/automation_rule.py b/src/datadog_api_client/v2/model/automation_rule.py deleted file mode 100644 index 037854d92e..0000000000 --- a/src/datadog_api_client/v2/model/automation_rule.py +++ /dev/null @@ -1,72 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.automation_rule_attributes import AutomationRuleAttributes - from datadog_api_client.v2.model.automation_rule_relationships import AutomationRuleRelationships - from datadog_api_client.v2.model.case_automation_rule_resource_type import CaseAutomationRuleResourceType - - -class AutomationRule(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.automation_rule_attributes import AutomationRuleAttributes - from datadog_api_client.v2.model.automation_rule_relationships import AutomationRuleRelationships - from datadog_api_client.v2.model.case_automation_rule_resource_type import CaseAutomationRuleResourceType - - return { - "attributes": (AutomationRuleAttributes,), - "id": (str,), - "relationships": (AutomationRuleRelationships,), - "type": (CaseAutomationRuleResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "id": "id", - "relationships": "relationships", - "type": "type", - } - - def __init__( - self_, - attributes: AutomationRuleAttributes, - id: str, - type: CaseAutomationRuleResourceType, - relationships: Union[AutomationRuleRelationships, UnsetType] = unset, - **kwargs, - ): - """ - An automation rule that executes an action (such as running a Datadog workflow or assigning an AI agent) when a specified case event occurs within a project. - - :param attributes: Core attributes of an automation rule, including its name, trigger condition, action to execute, and current state. - :type attributes: AutomationRuleAttributes - - :param id: Automation rule identifier. - :type id: str - - :param relationships: Related resources for the automation rule, including the users who created and last modified it. - :type relationships: AutomationRuleRelationships, optional - - :param type: JSON:API resource type for case automation rules. - :type type: CaseAutomationRuleResourceType - """ - if relationships is not unset: - kwargs["relationships"] = relationships - super().__init__(kwargs) - - self_.attributes = attributes - self_.id = id - self_.type = type diff --git a/src/datadog_api_client/v2/model/automation_rule_action.py b/src/datadog_api_client/v2/model/automation_rule_action.py deleted file mode 100644 index 7fc86c6976..0000000000 --- a/src/datadog_api_client/v2/model/automation_rule_action.py +++ /dev/null @@ -1,48 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.automation_rule_action_data import AutomationRuleActionData - from datadog_api_client.v2.model.automation_rule_action_type import AutomationRuleActionType - - -class AutomationRuleAction(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.automation_rule_action_data import AutomationRuleActionData - from datadog_api_client.v2.model.automation_rule_action_type import AutomationRuleActionType - - return { - "data": (AutomationRuleActionData,), - "type": (AutomationRuleActionType,), - } - - attribute_map = { - "data": "data", - "type": "type", - } - - def __init__(self_, data: AutomationRuleActionData, type: AutomationRuleActionType, **kwargs): - """ - Defines what happens when the rule triggers. Combines an action type with action-specific configuration data. - - :param data: Configuration for the action to execute, dependent on the action type. - :type data: AutomationRuleActionData - - :param type: The type of automated action to perform when the rule triggers. ``execute_workflow`` runs a Datadog workflow; ``assign_agent`` assigns an AI agent to the case. - :type type: AutomationRuleActionType - """ - super().__init__(kwargs) - - self_.data = data - self_.type = type diff --git a/src/datadog_api_client/v2/model/automation_rule_action_data.py b/src/datadog_api_client/v2/model/automation_rule_action_data.py deleted file mode 100644 index 9efb2dd3af..0000000000 --- a/src/datadog_api_client/v2/model/automation_rule_action_data.py +++ /dev/null @@ -1,56 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -class AutomationRuleActionData(ModelNormal): - @cached_property - def openapi_types(_): - return { - "agent_type": (str,), - "assigned_agent_id": (str,), - "handle": (str,), - } - - attribute_map = { - "agent_type": "agent_type", - "assigned_agent_id": "assigned_agent_id", - "handle": "handle", - } - - def __init__( - self_, - agent_type: Union[str, UnsetType] = unset, - assigned_agent_id: Union[str, UnsetType] = unset, - handle: Union[str, UnsetType] = unset, - **kwargs, - ): - """ - Configuration for the action to execute, dependent on the action type. - - :param agent_type: The type of AI agent to assign. Required when the action type is ``assign_agent``. - :type agent_type: str, optional - - :param assigned_agent_id: The identifier of the AI agent to assign to the case. Required when the action type is ``assign_agent``. - :type assigned_agent_id: str, optional - - :param handle: The handle of the Datadog workflow to execute. Required when the action type is ``execute_workflow``. - :type handle: str, optional - """ - if agent_type is not unset: - kwargs["agent_type"] = agent_type - if assigned_agent_id is not unset: - kwargs["assigned_agent_id"] = assigned_agent_id - if handle is not unset: - kwargs["handle"] = handle - super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/automation_rule_action_type.py b/src/datadog_api_client/v2/model/automation_rule_action_type.py deleted file mode 100644 index 3997357739..0000000000 --- a/src/datadog_api_client/v2/model/automation_rule_action_type.py +++ /dev/null @@ -1,38 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - - -from datadog_api_client.model_utils import ( - ModelSimple, - cached_property, -) - -from typing import ClassVar - - -class AutomationRuleActionType(ModelSimple): - """ - The type of automated action to perform when the rule triggers. `execute_workflow` runs a Datadog workflow; `assign_agent` assigns an AI agent to the case. - - :param value: Must be one of ["execute_workflow", "assign_agent"]. - :type value: str - """ - - allowed_values = { - "execute_workflow", - "assign_agent", - } - EXECUTE_WORKFLOW: ClassVar["AutomationRuleActionType"] - ASSIGN_AGENT: ClassVar["AutomationRuleActionType"] - - @cached_property - def openapi_types(_): - return { - "value": (str,), - } - - -AutomationRuleActionType.EXECUTE_WORKFLOW = AutomationRuleActionType("execute_workflow") -AutomationRuleActionType.ASSIGN_AGENT = AutomationRuleActionType("assign_agent") diff --git a/src/datadog_api_client/v2/model/automation_rule_attributes.py b/src/datadog_api_client/v2/model/automation_rule_attributes.py deleted file mode 100644 index 4c0d4b40d9..0000000000 --- a/src/datadog_api_client/v2/model/automation_rule_attributes.py +++ /dev/null @@ -1,91 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - datetime, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.automation_rule_action import AutomationRuleAction - from datadog_api_client.v2.model.case_automation_rule_state import CaseAutomationRuleState - from datadog_api_client.v2.model.automation_rule_trigger import AutomationRuleTrigger - - -class AutomationRuleAttributes(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.automation_rule_action import AutomationRuleAction - from datadog_api_client.v2.model.case_automation_rule_state import CaseAutomationRuleState - from datadog_api_client.v2.model.automation_rule_trigger import AutomationRuleTrigger - - return { - "action": (AutomationRuleAction,), - "created_at": (datetime,), - "modified_at": (datetime,), - "name": (str,), - "state": (CaseAutomationRuleState,), - "trigger": (AutomationRuleTrigger,), - } - - attribute_map = { - "action": "action", - "created_at": "created_at", - "modified_at": "modified_at", - "name": "name", - "state": "state", - "trigger": "trigger", - } - read_only_vars = { - "created_at", - "modified_at", - } - - def __init__( - self_, - action: AutomationRuleAction, - created_at: datetime, - name: str, - state: CaseAutomationRuleState, - trigger: AutomationRuleTrigger, - modified_at: Union[datetime, UnsetType] = unset, - **kwargs, - ): - """ - Core attributes of an automation rule, including its name, trigger condition, action to execute, and current state. - - :param action: Defines what happens when the rule triggers. Combines an action type with action-specific configuration data. - :type action: AutomationRuleAction - - :param created_at: Timestamp when the automation rule was created. - :type created_at: datetime - - :param modified_at: Timestamp when the automation rule was last modified. - :type modified_at: datetime, optional - - :param name: A human-readable name for the automation rule, used to identify the rule in the UI and API responses. - :type name: str - - :param state: Whether the automation rule is active. Enabled rules trigger on matching case events; disabled rules are inactive but preserve their configuration. - :type state: CaseAutomationRuleState - - :param trigger: Defines when the rule activates. Combines a trigger type (the case event to listen for) with optional trigger data (conditions that narrow when the trigger fires). - :type trigger: AutomationRuleTrigger - """ - if modified_at is not unset: - kwargs["modified_at"] = modified_at - super().__init__(kwargs) - - self_.action = action - self_.created_at = created_at - self_.name = name - self_.state = state - self_.trigger = trigger diff --git a/src/datadog_api_client/v2/model/automation_rule_create.py b/src/datadog_api_client/v2/model/automation_rule_create.py deleted file mode 100644 index a4ea308fa4..0000000000 --- a/src/datadog_api_client/v2/model/automation_rule_create.py +++ /dev/null @@ -1,48 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.automation_rule_create_attributes import AutomationRuleCreateAttributes - from datadog_api_client.v2.model.case_automation_rule_resource_type import CaseAutomationRuleResourceType - - -class AutomationRuleCreate(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.automation_rule_create_attributes import AutomationRuleCreateAttributes - from datadog_api_client.v2.model.case_automation_rule_resource_type import CaseAutomationRuleResourceType - - return { - "attributes": (AutomationRuleCreateAttributes,), - "type": (CaseAutomationRuleResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "type": "type", - } - - def __init__(self_, attributes: AutomationRuleCreateAttributes, type: CaseAutomationRuleResourceType, **kwargs): - """ - Data object for creating an automation rule. - - :param attributes: Attributes required to create an automation rule. - :type attributes: AutomationRuleCreateAttributes - - :param type: JSON:API resource type for case automation rules. - :type type: CaseAutomationRuleResourceType - """ - super().__init__(kwargs) - - self_.attributes = attributes - self_.type = type diff --git a/src/datadog_api_client/v2/model/automation_rule_create_attributes.py b/src/datadog_api_client/v2/model/automation_rule_create_attributes.py deleted file mode 100644 index dc65df10c8..0000000000 --- a/src/datadog_api_client/v2/model/automation_rule_create_attributes.py +++ /dev/null @@ -1,72 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.automation_rule_action import AutomationRuleAction - from datadog_api_client.v2.model.case_automation_rule_state import CaseAutomationRuleState - from datadog_api_client.v2.model.automation_rule_trigger import AutomationRuleTrigger - - -class AutomationRuleCreateAttributes(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.automation_rule_action import AutomationRuleAction - from datadog_api_client.v2.model.case_automation_rule_state import CaseAutomationRuleState - from datadog_api_client.v2.model.automation_rule_trigger import AutomationRuleTrigger - - return { - "action": (AutomationRuleAction,), - "name": (str,), - "state": (CaseAutomationRuleState,), - "trigger": (AutomationRuleTrigger,), - } - - attribute_map = { - "action": "action", - "name": "name", - "state": "state", - "trigger": "trigger", - } - - def __init__( - self_, - action: AutomationRuleAction, - name: str, - trigger: AutomationRuleTrigger, - state: Union[CaseAutomationRuleState, UnsetType] = unset, - **kwargs, - ): - """ - Attributes required to create an automation rule. - - :param action: Defines what happens when the rule triggers. Combines an action type with action-specific configuration data. - :type action: AutomationRuleAction - - :param name: Name of the automation rule. - :type name: str - - :param state: Whether the automation rule is active. Enabled rules trigger on matching case events; disabled rules are inactive but preserve their configuration. - :type state: CaseAutomationRuleState, optional - - :param trigger: Defines when the rule activates. Combines a trigger type (the case event to listen for) with optional trigger data (conditions that narrow when the trigger fires). - :type trigger: AutomationRuleTrigger - """ - if state is not unset: - kwargs["state"] = state - super().__init__(kwargs) - - self_.action = action - self_.name = name - self_.trigger = trigger diff --git a/src/datadog_api_client/v2/model/automation_rule_relationships.py b/src/datadog_api_client/v2/model/automation_rule_relationships.py deleted file mode 100644 index 20fba30998..0000000000 --- a/src/datadog_api_client/v2/model/automation_rule_relationships.py +++ /dev/null @@ -1,55 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - none_type, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.nullable_user_relationship import NullableUserRelationship - - -class AutomationRuleRelationships(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.nullable_user_relationship import NullableUserRelationship - - return { - "created_by": (NullableUserRelationship,), - "modified_by": (NullableUserRelationship,), - } - - attribute_map = { - "created_by": "created_by", - "modified_by": "modified_by", - } - - def __init__( - self_, - created_by: Union[NullableUserRelationship, none_type, UnsetType] = unset, - modified_by: Union[NullableUserRelationship, none_type, UnsetType] = unset, - **kwargs, - ): - """ - Related resources for the automation rule, including the users who created and last modified it. - - :param created_by: Relationship to user. - :type created_by: NullableUserRelationship, none_type, optional - - :param modified_by: Relationship to user. - :type modified_by: NullableUserRelationship, none_type, optional - """ - if created_by is not unset: - kwargs["created_by"] = created_by - if modified_by is not unset: - kwargs["modified_by"] = modified_by - super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/automation_rule_response.py b/src/datadog_api_client/v2/model/automation_rule_response.py deleted file mode 100644 index 16f9e59572..0000000000 --- a/src/datadog_api_client/v2/model/automation_rule_response.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.automation_rule import AutomationRule - - -class AutomationRuleResponse(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.automation_rule import AutomationRule - - return { - "data": (AutomationRule,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: AutomationRule, **kwargs): - """ - Response containing a single automation rule. - - :param data: An automation rule that executes an action (such as running a Datadog workflow or assigning an AI agent) when a specified case event occurs within a project. - :type data: AutomationRule - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/automation_rule_trigger.py b/src/datadog_api_client/v2/model/automation_rule_trigger.py deleted file mode 100644 index 1f64b30de8..0000000000 --- a/src/datadog_api_client/v2/model/automation_rule_trigger.py +++ /dev/null @@ -1,53 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.automation_rule_trigger_data import AutomationRuleTriggerData - from datadog_api_client.v2.model.automation_rule_trigger_type import AutomationRuleTriggerType - - -class AutomationRuleTrigger(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.automation_rule_trigger_data import AutomationRuleTriggerData - from datadog_api_client.v2.model.automation_rule_trigger_type import AutomationRuleTriggerType - - return { - "data": (AutomationRuleTriggerData,), - "type": (AutomationRuleTriggerType,), - } - - attribute_map = { - "data": "data", - "type": "type", - } - - def __init__( - self_, type: AutomationRuleTriggerType, data: Union[AutomationRuleTriggerData, UnsetType] = unset, **kwargs - ): - """ - Defines when the rule activates. Combines a trigger type (the case event to listen for) with optional trigger data (conditions that narrow when the trigger fires). - - :param data: Additional configuration for the trigger, dependent on the trigger type. For ``status_transitioned`` triggers, specify ``from_status_name`` and ``to_status_name``. For ``attribute_value_changed`` triggers, specify ``field`` and ``change_type``. - :type data: AutomationRuleTriggerData, optional - - :param type: The case event that activates the automation rule. - :type type: AutomationRuleTriggerType - """ - if data is not unset: - kwargs["data"] = data - super().__init__(kwargs) - - self_.type = type diff --git a/src/datadog_api_client/v2/model/automation_rule_trigger_data.py b/src/datadog_api_client/v2/model/automation_rule_trigger_data.py deleted file mode 100644 index 1da875f6c6..0000000000 --- a/src/datadog_api_client/v2/model/automation_rule_trigger_data.py +++ /dev/null @@ -1,72 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -class AutomationRuleTriggerData(ModelNormal): - @cached_property - def openapi_types(_): - return { - "approval_type": (str,), - "change_type": (str,), - "field": (str,), - "from_status_name": (str,), - "to_status_name": (str,), - } - - attribute_map = { - "approval_type": "approval_type", - "change_type": "change_type", - "field": "field", - "from_status_name": "from_status_name", - "to_status_name": "to_status_name", - } - - def __init__( - self_, - approval_type: Union[str, UnsetType] = unset, - change_type: Union[str, UnsetType] = unset, - field: Union[str, UnsetType] = unset, - from_status_name: Union[str, UnsetType] = unset, - to_status_name: Union[str, UnsetType] = unset, - **kwargs, - ): - """ - Additional configuration for the trigger, dependent on the trigger type. For ``status_transitioned`` triggers, specify ``from_status_name`` and ``to_status_name``. For ``attribute_value_changed`` triggers, specify ``field`` and ``change_type``. - - :param approval_type: The approval outcome to match. Used with ``case_review_approved`` triggers. - :type approval_type: str, optional - - :param change_type: The kind of attribute change to match. Allowed values: ``VALUE_ADDED`` , ``VALUE_DELETED`` , ``ANY_CHANGES``. Used with ``attribute_value_changed`` triggers. - :type change_type: str, optional - - :param field: The case attribute field name to monitor for changes. Used with ``attribute_value_changed`` triggers. - :type field: str, optional - - :param from_status_name: The originating status name. Used with ``status_transitioned`` triggers to match transitions from this status. - :type from_status_name: str, optional - - :param to_status_name: The destination status name. Used with ``status_transitioned`` triggers to match transitions to this status. - :type to_status_name: str, optional - """ - if approval_type is not unset: - kwargs["approval_type"] = approval_type - if change_type is not unset: - kwargs["change_type"] = change_type - if field is not unset: - kwargs["field"] = field - if from_status_name is not unset: - kwargs["from_status_name"] = from_status_name - if to_status_name is not unset: - kwargs["to_status_name"] = to_status_name - super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/automation_rule_trigger_type.py b/src/datadog_api_client/v2/model/automation_rule_trigger_type.py deleted file mode 100644 index 4e8b4c3039..0000000000 --- a/src/datadog_api_client/v2/model/automation_rule_trigger_type.py +++ /dev/null @@ -1,52 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - - -from datadog_api_client.model_utils import ( - ModelSimple, - cached_property, -) - -from typing import ClassVar - - -class AutomationRuleTriggerType(ModelSimple): - """ - The case event that activates the automation rule. - - :param value: Must be one of ["case_created", "status_transitioned", "attribute_value_changed", "event_correlation_signal_correlated", "case_review_approved", "comment_added"]. - :type value: str - """ - - allowed_values = { - "case_created", - "status_transitioned", - "attribute_value_changed", - "event_correlation_signal_correlated", - "case_review_approved", - "comment_added", - } - CASE_CREATED: ClassVar["AutomationRuleTriggerType"] - STATUS_TRANSITIONED: ClassVar["AutomationRuleTriggerType"] - ATTRIBUTE_VALUE_CHANGED: ClassVar["AutomationRuleTriggerType"] - EVENT_CORRELATION_SIGNAL_CORRELATED: ClassVar["AutomationRuleTriggerType"] - CASE_REVIEW_APPROVED: ClassVar["AutomationRuleTriggerType"] - COMMENT_ADDED: ClassVar["AutomationRuleTriggerType"] - - @cached_property - def openapi_types(_): - return { - "value": (str,), - } - - -AutomationRuleTriggerType.CASE_CREATED = AutomationRuleTriggerType("case_created") -AutomationRuleTriggerType.STATUS_TRANSITIONED = AutomationRuleTriggerType("status_transitioned") -AutomationRuleTriggerType.ATTRIBUTE_VALUE_CHANGED = AutomationRuleTriggerType("attribute_value_changed") -AutomationRuleTriggerType.EVENT_CORRELATION_SIGNAL_CORRELATED = AutomationRuleTriggerType( - "event_correlation_signal_correlated" -) -AutomationRuleTriggerType.CASE_REVIEW_APPROVED = AutomationRuleTriggerType("case_review_approved") -AutomationRuleTriggerType.COMMENT_ADDED = AutomationRuleTriggerType("comment_added") diff --git a/src/datadog_api_client/v2/model/automation_rule_update.py b/src/datadog_api_client/v2/model/automation_rule_update.py deleted file mode 100644 index ac1edd579c..0000000000 --- a/src/datadog_api_client/v2/model/automation_rule_update.py +++ /dev/null @@ -1,56 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.automation_rule_create_attributes import AutomationRuleCreateAttributes - from datadog_api_client.v2.model.case_automation_rule_resource_type import CaseAutomationRuleResourceType - - -class AutomationRuleUpdate(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.automation_rule_create_attributes import AutomationRuleCreateAttributes - from datadog_api_client.v2.model.case_automation_rule_resource_type import CaseAutomationRuleResourceType - - return { - "attributes": (AutomationRuleCreateAttributes,), - "type": (CaseAutomationRuleResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "type": "type", - } - - def __init__( - self_, - type: CaseAutomationRuleResourceType, - attributes: Union[AutomationRuleCreateAttributes, UnsetType] = unset, - **kwargs, - ): - """ - Data object for updating an automation rule. - - :param attributes: Attributes required to create an automation rule. - :type attributes: AutomationRuleCreateAttributes, optional - - :param type: JSON:API resource type for case automation rules. - :type type: CaseAutomationRuleResourceType - """ - if attributes is not unset: - kwargs["attributes"] = attributes - super().__init__(kwargs) - - self_.type = type diff --git a/src/datadog_api_client/v2/model/automation_rule_update_request.py b/src/datadog_api_client/v2/model/automation_rule_update_request.py deleted file mode 100644 index cd73a0ba36..0000000000 --- a/src/datadog_api_client/v2/model/automation_rule_update_request.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.automation_rule_update import AutomationRuleUpdate - - -class AutomationRuleUpdateRequest(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.automation_rule_update import AutomationRuleUpdate - - return { - "data": (AutomationRuleUpdate,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: AutomationRuleUpdate, **kwargs): - """ - Request payload for updating an automation rule. - - :param data: Data object for updating an automation rule. - :type data: AutomationRuleUpdate - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/automation_rules_response.py b/src/datadog_api_client/v2/model/automation_rules_response.py deleted file mode 100644 index e83aa74852..0000000000 --- a/src/datadog_api_client/v2/model/automation_rules_response.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import List, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.automation_rule import AutomationRule - - -class AutomationRulesResponse(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.automation_rule import AutomationRule - - return { - "data": ([AutomationRule],), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: List[AutomationRule], **kwargs): - """ - Response containing a list of automation rules for a project. - - :param data: List of automation rules. - :type data: [AutomationRule] - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/case.py b/src/datadog_api_client/v2/model/case.py index b485a80461..209c5601a0 100644 --- a/src/datadog_api_client/v2/model/case.py +++ b/src/datadog_api_client/v2/model/case.py @@ -60,7 +60,7 @@ def __init__( :param relationships: Resources related to a case :type relationships: CaseRelationships, optional - :param type: JSON:API resource type for cases. + :param type: Case resource type :type type: CaseResourceType """ if relationships is not unset: diff --git a/src/datadog_api_client/v2/model/case_aggregate_group.py b/src/datadog_api_client/v2/model/case_aggregate_group.py deleted file mode 100644 index da6c3c9af5..0000000000 --- a/src/datadog_api_client/v2/model/case_aggregate_group.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import List - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -class CaseAggregateGroup(ModelNormal): - @cached_property - def openapi_types(_): - return { - "group": (str,), - "value": ([float],), - } - - attribute_map = { - "group": "group", - "value": "value", - } - - def __init__(self_, group: str, value: List[float], **kwargs): - """ - A single group within the aggregation results, containing the group key and its associated count values. - - :param group: The value of the field being grouped on (for example, ``OPEN`` when grouping by status). - :type group: str - - :param value: The count of cases in this group. - :type value: [float] - """ - super().__init__(kwargs) - - self_.group = group - self_.value = value diff --git a/src/datadog_api_client/v2/model/case_aggregate_group_by.py b/src/datadog_api_client/v2/model/case_aggregate_group_by.py deleted file mode 100644 index d9bf5aec43..0000000000 --- a/src/datadog_api_client/v2/model/case_aggregate_group_by.py +++ /dev/null @@ -1,46 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import List - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -class CaseAggregateGroupBy(ModelNormal): - validations = { - "limit": { - "inclusive_maximum": 1000, - }, - } - - @cached_property - def openapi_types(_): - return { - "groups": ([str],), - "limit": (int,), - } - - attribute_map = { - "groups": "groups", - "limit": "limit", - } - - def __init__(self_, groups: List[str], limit: int, **kwargs): - """ - Configuration for grouping aggregated results by one or more case fields. - - :param groups: Fields to group by. - :type groups: [str] - - :param limit: Maximum number of groups to return. - :type limit: int - """ - super().__init__(kwargs) - - self_.groups = groups - self_.limit = limit diff --git a/src/datadog_api_client/v2/model/case_aggregate_request.py b/src/datadog_api_client/v2/model/case_aggregate_request.py deleted file mode 100644 index 3e7a891dec..0000000000 --- a/src/datadog_api_client/v2/model/case_aggregate_request.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_aggregate_request_data import CaseAggregateRequestData - - -class CaseAggregateRequest(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_aggregate_request_data import CaseAggregateRequestData - - return { - "data": (CaseAggregateRequestData,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: CaseAggregateRequestData, **kwargs): - """ - Request payload for aggregating case counts with grouping. Use this to get faceted breakdowns of cases (for example, count of cases grouped by priority and status). - - :param data: Data object wrapping the aggregation query type and attributes. - :type data: CaseAggregateRequestData - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/case_aggregate_request_attributes.py b/src/datadog_api_client/v2/model/case_aggregate_request_attributes.py deleted file mode 100644 index 42823da648..0000000000 --- a/src/datadog_api_client/v2/model/case_aggregate_request_attributes.py +++ /dev/null @@ -1,46 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_aggregate_group_by import CaseAggregateGroupBy - - -class CaseAggregateRequestAttributes(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_aggregate_group_by import CaseAggregateGroupBy - - return { - "group_by": (CaseAggregateGroupBy,), - "query_filter": (str,), - } - - attribute_map = { - "group_by": "group_by", - "query_filter": "query_filter", - } - - def __init__(self_, group_by: CaseAggregateGroupBy, query_filter: str, **kwargs): - """ - Attributes for the aggregation request, including the search query and grouping configuration. - - :param group_by: Configuration for grouping aggregated results by one or more case fields. - :type group_by: CaseAggregateGroupBy - - :param query_filter: A search query to filter which cases are included in the aggregation. Uses the same syntax as the Case Management search bar. - :type query_filter: str - """ - super().__init__(kwargs) - - self_.group_by = group_by - self_.query_filter = query_filter diff --git a/src/datadog_api_client/v2/model/case_aggregate_request_data.py b/src/datadog_api_client/v2/model/case_aggregate_request_data.py deleted file mode 100644 index 3fe1b072b0..0000000000 --- a/src/datadog_api_client/v2/model/case_aggregate_request_data.py +++ /dev/null @@ -1,48 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_aggregate_request_attributes import CaseAggregateRequestAttributes - from datadog_api_client.v2.model.case_aggregate_resource_type import CaseAggregateResourceType - - -class CaseAggregateRequestData(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_aggregate_request_attributes import CaseAggregateRequestAttributes - from datadog_api_client.v2.model.case_aggregate_resource_type import CaseAggregateResourceType - - return { - "attributes": (CaseAggregateRequestAttributes,), - "type": (CaseAggregateResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "type": "type", - } - - def __init__(self_, attributes: CaseAggregateRequestAttributes, type: CaseAggregateResourceType, **kwargs): - """ - Data object wrapping the aggregation query type and attributes. - - :param attributes: Attributes for the aggregation request, including the search query and grouping configuration. - :type attributes: CaseAggregateRequestAttributes - - :param type: JSON:API resource type for case aggregation requests. - :type type: CaseAggregateResourceType - """ - super().__init__(kwargs) - - self_.attributes = attributes - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_aggregate_response.py b/src/datadog_api_client/v2/model/case_aggregate_response.py deleted file mode 100644 index 11275b118b..0000000000 --- a/src/datadog_api_client/v2/model/case_aggregate_response.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_aggregate_response_data import CaseAggregateResponseData - - -class CaseAggregateResponse(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_aggregate_response_data import CaseAggregateResponseData - - return { - "data": (CaseAggregateResponseData,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: CaseAggregateResponseData, **kwargs): - """ - Response containing aggregated case counts grouped by the requested fields. - - :param data: Data object containing the aggregation results, including total count and per-group breakdowns. - :type data: CaseAggregateResponseData - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/case_aggregate_response_attributes.py b/src/datadog_api_client/v2/model/case_aggregate_response_attributes.py deleted file mode 100644 index e19b6c0c91..0000000000 --- a/src/datadog_api_client/v2/model/case_aggregate_response_attributes.py +++ /dev/null @@ -1,46 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import List, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_aggregate_group import CaseAggregateGroup - - -class CaseAggregateResponseAttributes(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_aggregate_group import CaseAggregateGroup - - return { - "groups": ([CaseAggregateGroup],), - "total": (float,), - } - - attribute_map = { - "groups": "groups", - "total": "total", - } - - def __init__(self_, groups: List[CaseAggregateGroup], total: float, **kwargs): - """ - Attributes of the aggregation result, including the total count across all groups and the per-group breakdowns. - - :param groups: Aggregated groups. - :type groups: [CaseAggregateGroup] - - :param total: Total count of aggregated cases. - :type total: float - """ - super().__init__(kwargs) - - self_.groups = groups - self_.total = total diff --git a/src/datadog_api_client/v2/model/case_aggregate_response_data.py b/src/datadog_api_client/v2/model/case_aggregate_response_data.py deleted file mode 100644 index 6726107f41..0000000000 --- a/src/datadog_api_client/v2/model/case_aggregate_response_data.py +++ /dev/null @@ -1,52 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_aggregate_response_attributes import CaseAggregateResponseAttributes - - -class CaseAggregateResponseData(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_aggregate_response_attributes import CaseAggregateResponseAttributes - - return { - "attributes": (CaseAggregateResponseAttributes,), - "id": (str,), - "type": (str,), - } - - attribute_map = { - "attributes": "attributes", - "id": "id", - "type": "type", - } - - def __init__(self_, attributes: CaseAggregateResponseAttributes, id: str, type: str, **kwargs): - """ - Data object containing the aggregation results, including total count and per-group breakdowns. - - :param attributes: Attributes of the aggregation result, including the total count across all groups and the per-group breakdowns. - :type attributes: CaseAggregateResponseAttributes - - :param id: Aggregate response identifier. - :type id: str - - :param type: Aggregate resource type. - :type type: str - """ - super().__init__(kwargs) - - self_.attributes = attributes - self_.id = id - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_assign.py b/src/datadog_api_client/v2/model/case_assign.py index ad830ffdce..4ce2f164fc 100644 --- a/src/datadog_api_client/v2/model/case_assign.py +++ b/src/datadog_api_client/v2/model/case_assign.py @@ -39,7 +39,7 @@ def __init__(self_, attributes: CaseAssignAttributes, type: CaseResourceType, ** :param attributes: Case assign attributes :type attributes: CaseAssignAttributes - :param type: JSON:API resource type for cases. + :param type: Case resource type :type type: CaseResourceType """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_attributes.py b/src/datadog_api_client/v2/model/case_attributes.py index 56146e340f..be1f54ba28 100644 --- a/src/datadog_api_client/v2/model/case_attributes.py +++ b/src/datadog_api_client/v2/model/case_attributes.py @@ -113,7 +113,7 @@ def __init__( :param archived_at: Timestamp of when the case was archived :type archived_at: datetime, none_type, optional - :param attributes: Key-value pairs of case attributes. Each key maps to an array of string values, used for flexible metadata such as labels or tags. + :param attributes: The definition of ``CaseObjectAttributes`` object. :type attributes: CaseObjectAttributes, optional :param closed_at: Timestamp of when the case was closed diff --git a/src/datadog_api_client/v2/model/case_automation_rule_state.py b/src/datadog_api_client/v2/model/case_automation_rule_state.py deleted file mode 100644 index a6eee1b202..0000000000 --- a/src/datadog_api_client/v2/model/case_automation_rule_state.py +++ /dev/null @@ -1,38 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - - -from datadog_api_client.model_utils import ( - ModelSimple, - cached_property, -) - -from typing import ClassVar - - -class CaseAutomationRuleState(ModelSimple): - """ - Whether the automation rule is active. Enabled rules trigger on matching case events; disabled rules are inactive but preserve their configuration. - - :param value: Must be one of ["ENABLED", "DISABLED"]. - :type value: str - """ - - allowed_values = { - "ENABLED", - "DISABLED", - } - ENABLED: ClassVar["CaseAutomationRuleState"] - DISABLED: ClassVar["CaseAutomationRuleState"] - - @cached_property - def openapi_types(_): - return { - "value": (str,), - } - - -CaseAutomationRuleState.ENABLED = CaseAutomationRuleState("ENABLED") -CaseAutomationRuleState.DISABLED = CaseAutomationRuleState("DISABLED") diff --git a/src/datadog_api_client/v2/model/case_bulk_action_type.py b/src/datadog_api_client/v2/model/case_bulk_action_type.py deleted file mode 100644 index 36ccd57d4e..0000000000 --- a/src/datadog_api_client/v2/model/case_bulk_action_type.py +++ /dev/null @@ -1,62 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - - -from datadog_api_client.model_utils import ( - ModelSimple, - cached_property, -) - -from typing import ClassVar - - -class CaseBulkActionType(ModelSimple): - """ - The type of action to apply in a bulk update. Allowed values are `priority`, `status`, `assign`, `unassign`, `archive`, `unarchive`, `jira`, `servicenow`, `linear`, `update_project`. - - :param value: Must be one of ["priority", "status", "assign", "unassign", "archive", "unarchive", "jira", "servicenow", "linear", "update_project"]. - :type value: str - """ - - allowed_values = { - "priority", - "status", - "assign", - "unassign", - "archive", - "unarchive", - "jira", - "servicenow", - "linear", - "update_project", - } - PRIORITY: ClassVar["CaseBulkActionType"] - STATUS: ClassVar["CaseBulkActionType"] - ASSIGN: ClassVar["CaseBulkActionType"] - UNASSIGN: ClassVar["CaseBulkActionType"] - ARCHIVE: ClassVar["CaseBulkActionType"] - UNARCHIVE: ClassVar["CaseBulkActionType"] - JIRA: ClassVar["CaseBulkActionType"] - SERVICENOW: ClassVar["CaseBulkActionType"] - LINEAR: ClassVar["CaseBulkActionType"] - UPDATE_PROJECT: ClassVar["CaseBulkActionType"] - - @cached_property - def openapi_types(_): - return { - "value": (str,), - } - - -CaseBulkActionType.PRIORITY = CaseBulkActionType("priority") -CaseBulkActionType.STATUS = CaseBulkActionType("status") -CaseBulkActionType.ASSIGN = CaseBulkActionType("assign") -CaseBulkActionType.UNASSIGN = CaseBulkActionType("unassign") -CaseBulkActionType.ARCHIVE = CaseBulkActionType("archive") -CaseBulkActionType.UNARCHIVE = CaseBulkActionType("unarchive") -CaseBulkActionType.JIRA = CaseBulkActionType("jira") -CaseBulkActionType.SERVICENOW = CaseBulkActionType("servicenow") -CaseBulkActionType.LINEAR = CaseBulkActionType("linear") -CaseBulkActionType.UPDATE_PROJECT = CaseBulkActionType("update_project") diff --git a/src/datadog_api_client/v2/model/case_bulk_update_request.py b/src/datadog_api_client/v2/model/case_bulk_update_request.py deleted file mode 100644 index 4573d6d460..0000000000 --- a/src/datadog_api_client/v2/model/case_bulk_update_request.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_bulk_update_request_data import CaseBulkUpdateRequestData - - -class CaseBulkUpdateRequest(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_bulk_update_request_data import CaseBulkUpdateRequestData - - return { - "data": (CaseBulkUpdateRequestData,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: CaseBulkUpdateRequestData, **kwargs): - """ - Request payload for applying a single action (such as changing priority, status, or assignment) to multiple cases at once. - - :param data: Data object wrapping the bulk update type and attributes. - :type data: CaseBulkUpdateRequestData - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/case_bulk_update_request_attributes.py b/src/datadog_api_client/v2/model/case_bulk_update_request_attributes.py deleted file mode 100644 index 34d037798c..0000000000 --- a/src/datadog_api_client/v2/model/case_bulk_update_request_attributes.py +++ /dev/null @@ -1,61 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Dict, List, Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_bulk_action_type import CaseBulkActionType - - -class CaseBulkUpdateRequestAttributes(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_bulk_action_type import CaseBulkActionType - - return { - "case_ids": ([str],), - "payload": ({str: (str,)},), - "type": (CaseBulkActionType,), - } - - attribute_map = { - "case_ids": "case_ids", - "payload": "payload", - "type": "type", - } - - def __init__( - self_, - case_ids: List[str], - type: CaseBulkActionType, - payload: Union[Dict[str, str], UnsetType] = unset, - **kwargs, - ): - """ - Attributes for the bulk update, specifying which cases to update and the action to apply. - - :param case_ids: An array of case identifiers to apply the bulk action to. - :type case_ids: [str] - - :param payload: A key-value map of action-specific parameters. The required keys depend on the action type (for example, ``priority`` for the priority action, ``assignee_id`` for assign). - :type payload: {str: (str,)}, optional - - :param type: The type of action to apply in a bulk update. Allowed values are ``priority`` , ``status`` , ``assign`` , ``unassign`` , ``archive`` , ``unarchive`` , ``jira`` , ``servicenow`` , ``linear`` , ``update_project``. - :type type: CaseBulkActionType - """ - if payload is not unset: - kwargs["payload"] = payload - super().__init__(kwargs) - - self_.case_ids = case_ids - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_bulk_update_request_data.py b/src/datadog_api_client/v2/model/case_bulk_update_request_data.py deleted file mode 100644 index 95e14ecc30..0000000000 --- a/src/datadog_api_client/v2/model/case_bulk_update_request_data.py +++ /dev/null @@ -1,48 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_bulk_update_request_attributes import CaseBulkUpdateRequestAttributes - from datadog_api_client.v2.model.case_bulk_resource_type import CaseBulkResourceType - - -class CaseBulkUpdateRequestData(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_bulk_update_request_attributes import CaseBulkUpdateRequestAttributes - from datadog_api_client.v2.model.case_bulk_resource_type import CaseBulkResourceType - - return { - "attributes": (CaseBulkUpdateRequestAttributes,), - "type": (CaseBulkResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "type": "type", - } - - def __init__(self_, attributes: CaseBulkUpdateRequestAttributes, type: CaseBulkResourceType, **kwargs): - """ - Data object wrapping the bulk update type and attributes. - - :param attributes: Attributes for the bulk update, specifying which cases to update and the action to apply. - :type attributes: CaseBulkUpdateRequestAttributes - - :param type: JSON:API resource type for bulk case operations. - :type type: CaseBulkResourceType - """ - super().__init__(kwargs) - - self_.attributes = attributes - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_comment.py b/src/datadog_api_client/v2/model/case_comment.py index d8d524f062..7b648429d1 100644 --- a/src/datadog_api_client/v2/model/case_comment.py +++ b/src/datadog_api_client/v2/model/case_comment.py @@ -39,7 +39,7 @@ def __init__(self_, attributes: CaseCommentAttributes, type: CaseResourceType, * :param attributes: Case comment attributes :type attributes: CaseCommentAttributes - :param type: JSON:API resource type for cases. + :param type: Case resource type :type type: CaseResourceType """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_count_group.py b/src/datadog_api_client/v2/model/case_count_group.py deleted file mode 100644 index a0370fad16..0000000000 --- a/src/datadog_api_client/v2/model/case_count_group.py +++ /dev/null @@ -1,46 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import List, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_count_group_value import CaseCountGroupValue - - -class CaseCountGroup(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_count_group_value import CaseCountGroupValue - - return { - "group": (str,), - "group_values": ([CaseCountGroupValue],), - } - - attribute_map = { - "group": "group", - "group_values": "group_values", - } - - def __init__(self_, group: str, group_values: List[CaseCountGroupValue], **kwargs): - """ - A facet group containing counts broken down by the distinct values of a case field (for example, status or priority). - - :param group: The name of the field being grouped on (for example, ``status`` or ``priority`` ). - :type group: str - - :param group_values: Values within this group. - :type group_values: [CaseCountGroupValue] - """ - super().__init__(kwargs) - - self_.group = group - self_.group_values = group_values diff --git a/src/datadog_api_client/v2/model/case_count_response.py b/src/datadog_api_client/v2/model/case_count_response.py deleted file mode 100644 index 8ad8e96b69..0000000000 --- a/src/datadog_api_client/v2/model/case_count_response.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_count_response_data import CaseCountResponseData - - -class CaseCountResponse(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_count_response_data import CaseCountResponseData - - return { - "data": (CaseCountResponseData,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: CaseCountResponseData, **kwargs): - """ - Response containing the total number of cases matching a query, optionally grouped by specified fields. - - :param data: Data object containing the count results, including per-field group breakdowns. - :type data: CaseCountResponseData - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/case_count_response_attributes.py b/src/datadog_api_client/v2/model/case_count_response_attributes.py deleted file mode 100644 index 339268fc9e..0000000000 --- a/src/datadog_api_client/v2/model/case_count_response_attributes.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import List, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_count_group import CaseCountGroup - - -class CaseCountResponseAttributes(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_count_group import CaseCountGroup - - return { - "groups": ([CaseCountGroup],), - } - - attribute_map = { - "groups": "groups", - } - - def __init__(self_, groups: List[CaseCountGroup], **kwargs): - """ - Attributes for the count response, including the total count and optional facet breakdowns. - - :param groups: List of facet groups, one per field specified in ``group_bys``. - :type groups: [CaseCountGroup] - """ - super().__init__(kwargs) - - self_.groups = groups diff --git a/src/datadog_api_client/v2/model/case_count_response_data.py b/src/datadog_api_client/v2/model/case_count_response_data.py deleted file mode 100644 index 3e0d06f55c..0000000000 --- a/src/datadog_api_client/v2/model/case_count_response_data.py +++ /dev/null @@ -1,52 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_count_response_attributes import CaseCountResponseAttributes - - -class CaseCountResponseData(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_count_response_attributes import CaseCountResponseAttributes - - return { - "attributes": (CaseCountResponseAttributes,), - "id": (str,), - "type": (str,), - } - - attribute_map = { - "attributes": "attributes", - "id": "id", - "type": "type", - } - - def __init__(self_, attributes: CaseCountResponseAttributes, id: str, type: str, **kwargs): - """ - Data object containing the count results, including per-field group breakdowns. - - :param attributes: Attributes for the count response, including the total count and optional facet breakdowns. - :type attributes: CaseCountResponseAttributes - - :param id: Count response identifier. - :type id: str - - :param type: Count resource type. - :type type: str - """ - super().__init__(kwargs) - - self_.attributes = attributes - self_.id = id - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_create.py b/src/datadog_api_client/v2/model/case_create.py index 4172f2c56f..9180d6c47b 100644 --- a/src/datadog_api_client/v2/model/case_create.py +++ b/src/datadog_api_client/v2/model/case_create.py @@ -54,7 +54,7 @@ def __init__( :param relationships: Relationships formed with the case on creation :type relationships: CaseCreateRelationships, optional - :param type: JSON:API resource type for cases. + :param type: Case resource type :type type: CaseResourceType """ if relationships is not unset: diff --git a/src/datadog_api_client/v2/model/case_empty.py b/src/datadog_api_client/v2/model/case_empty.py index 6bbdf26d69..d64381e252 100644 --- a/src/datadog_api_client/v2/model/case_empty.py +++ b/src/datadog_api_client/v2/model/case_empty.py @@ -32,7 +32,7 @@ def __init__(self_, type: CaseResourceType, **kwargs): """ Case empty request data - :param type: JSON:API resource type for cases. + :param type: Case resource type :type type: CaseResourceType """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_insight.py b/src/datadog_api_client/v2/model/case_insight.py deleted file mode 100644 index f840faa5c4..0000000000 --- a/src/datadog_api_client/v2/model/case_insight.py +++ /dev/null @@ -1,52 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_insight_type import CaseInsightType - - -class CaseInsight(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_insight_type import CaseInsightType - - return { - "ref": (str,), - "resource_id": (str,), - "type": (CaseInsightType,), - } - - attribute_map = { - "ref": "ref", - "resource_id": "resource_id", - "type": "type", - } - - def __init__(self_, ref: str, resource_id: str, type: CaseInsightType, **kwargs): - """ - A reference to an external Datadog resource that provides investigative context for a case, such as a security signal, monitor alert, error tracking issue, or incident. - - :param ref: The URL path or deep link to the insight resource within Datadog (for example, ``/monitors/12345?q=total`` ). - :type ref: str - - :param resource_id: The unique identifier of the referenced Datadog resource (for example, a monitor ID, incident ID, or signal ID). - :type resource_id: str - - :param type: The type of Datadog resource linked to the case as contextual evidence. Each type corresponds to a different Datadog product signal (for example, a security finding, a monitor alert, or an incident). - :type type: CaseInsightType - """ - super().__init__(kwargs) - - self_.ref = ref - self_.resource_id = resource_id - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_insight_type.py b/src/datadog_api_client/v2/model/case_insight_type.py deleted file mode 100644 index 84b1a3d99e..0000000000 --- a/src/datadog_api_client/v2/model/case_insight_type.py +++ /dev/null @@ -1,80 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - - -from datadog_api_client.model_utils import ( - ModelSimple, - cached_property, -) - -from typing import ClassVar - - -class CaseInsightType(ModelSimple): - """ - The type of Datadog resource linked to the case as contextual evidence. Each type corresponds to a different Datadog product signal (for example, a security finding, a monitor alert, or an incident). - - :param value: Must be one of ["SECURITY_SIGNAL", "MONITOR", "EVENT_CORRELATION", "ERROR_TRACKING", "CLOUD_COST_RECOMMENDATION", "INCIDENT", "SENSITIVE_DATA_SCANNER_ISSUE", "EVENT", "WATCHDOG_STORY", "WIDGET", "SECURITY_FINDING", "INSIGHT_SCORECARD_CAMPAIGN", "RESOURCE_POLICY", "APM_RECOMMENDATION", "SCM_URL", "PROFILING_DOWNSIZING_EXPERIMENT"]. - :type value: str - """ - - allowed_values = { - "SECURITY_SIGNAL", - "MONITOR", - "EVENT_CORRELATION", - "ERROR_TRACKING", - "CLOUD_COST_RECOMMENDATION", - "INCIDENT", - "SENSITIVE_DATA_SCANNER_ISSUE", - "EVENT", - "WATCHDOG_STORY", - "WIDGET", - "SECURITY_FINDING", - "INSIGHT_SCORECARD_CAMPAIGN", - "RESOURCE_POLICY", - "APM_RECOMMENDATION", - "SCM_URL", - "PROFILING_DOWNSIZING_EXPERIMENT", - } - SECURITY_SIGNAL: ClassVar["CaseInsightType"] - MONITOR: ClassVar["CaseInsightType"] - EVENT_CORRELATION: ClassVar["CaseInsightType"] - ERROR_TRACKING: ClassVar["CaseInsightType"] - CLOUD_COST_RECOMMENDATION: ClassVar["CaseInsightType"] - INCIDENT: ClassVar["CaseInsightType"] - SENSITIVE_DATA_SCANNER_ISSUE: ClassVar["CaseInsightType"] - EVENT: ClassVar["CaseInsightType"] - WATCHDOG_STORY: ClassVar["CaseInsightType"] - WIDGET: ClassVar["CaseInsightType"] - SECURITY_FINDING: ClassVar["CaseInsightType"] - INSIGHT_SCORECARD_CAMPAIGN: ClassVar["CaseInsightType"] - RESOURCE_POLICY: ClassVar["CaseInsightType"] - APM_RECOMMENDATION: ClassVar["CaseInsightType"] - SCM_URL: ClassVar["CaseInsightType"] - PROFILING_DOWNSIZING_EXPERIMENT: ClassVar["CaseInsightType"] - - @cached_property - def openapi_types(_): - return { - "value": (str,), - } - - -CaseInsightType.SECURITY_SIGNAL = CaseInsightType("SECURITY_SIGNAL") -CaseInsightType.MONITOR = CaseInsightType("MONITOR") -CaseInsightType.EVENT_CORRELATION = CaseInsightType("EVENT_CORRELATION") -CaseInsightType.ERROR_TRACKING = CaseInsightType("ERROR_TRACKING") -CaseInsightType.CLOUD_COST_RECOMMENDATION = CaseInsightType("CLOUD_COST_RECOMMENDATION") -CaseInsightType.INCIDENT = CaseInsightType("INCIDENT") -CaseInsightType.SENSITIVE_DATA_SCANNER_ISSUE = CaseInsightType("SENSITIVE_DATA_SCANNER_ISSUE") -CaseInsightType.EVENT = CaseInsightType("EVENT") -CaseInsightType.WATCHDOG_STORY = CaseInsightType("WATCHDOG_STORY") -CaseInsightType.WIDGET = CaseInsightType("WIDGET") -CaseInsightType.SECURITY_FINDING = CaseInsightType("SECURITY_FINDING") -CaseInsightType.INSIGHT_SCORECARD_CAMPAIGN = CaseInsightType("INSIGHT_SCORECARD_CAMPAIGN") -CaseInsightType.RESOURCE_POLICY = CaseInsightType("RESOURCE_POLICY") -CaseInsightType.APM_RECOMMENDATION = CaseInsightType("APM_RECOMMENDATION") -CaseInsightType.SCM_URL = CaseInsightType("SCM_URL") -CaseInsightType.PROFILING_DOWNSIZING_EXPERIMENT = CaseInsightType("PROFILING_DOWNSIZING_EXPERIMENT") diff --git a/src/datadog_api_client/v2/model/case_insights_attributes.py b/src/datadog_api_client/v2/model/case_insights_attributes.py deleted file mode 100644 index af677e647f..0000000000 --- a/src/datadog_api_client/v2/model/case_insights_attributes.py +++ /dev/null @@ -1,47 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import List, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_insight import CaseInsight - - -class CaseInsightsAttributes(ModelNormal): - validations = { - "insights": { - "max_items": 100, - "min_items": 1, - }, - } - - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_insight import CaseInsight - - return { - "insights": ([CaseInsight],), - } - - attribute_map = { - "insights": "insights", - } - - def __init__(self_, insights: List[CaseInsight], **kwargs): - """ - Attributes for adding or removing insights from a case. - - :param insights: Array of insights to add to or remove from a case. - :type insights: [CaseInsight] - """ - super().__init__(kwargs) - - self_.insights = insights diff --git a/src/datadog_api_client/v2/model/case_insights_data.py b/src/datadog_api_client/v2/model/case_insights_data.py deleted file mode 100644 index 32a127a845..0000000000 --- a/src/datadog_api_client/v2/model/case_insights_data.py +++ /dev/null @@ -1,48 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_insights_attributes import CaseInsightsAttributes - from datadog_api_client.v2.model.case_resource_type import CaseResourceType - - -class CaseInsightsData(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_insights_attributes import CaseInsightsAttributes - from datadog_api_client.v2.model.case_resource_type import CaseResourceType - - return { - "attributes": (CaseInsightsAttributes,), - "type": (CaseResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "type": "type", - } - - def __init__(self_, attributes: CaseInsightsAttributes, type: CaseResourceType, **kwargs): - """ - Data object containing the insights to add or remove. - - :param attributes: Attributes for adding or removing insights from a case. - :type attributes: CaseInsightsAttributes - - :param type: JSON:API resource type for cases. - :type type: CaseResourceType - """ - super().__init__(kwargs) - - self_.attributes = attributes - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_link.py b/src/datadog_api_client/v2/model/case_link.py deleted file mode 100644 index 8ab96c37dd..0000000000 --- a/src/datadog_api_client/v2/model/case_link.py +++ /dev/null @@ -1,54 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_link_attributes import CaseLinkAttributes - from datadog_api_client.v2.model.case_link_resource_type import CaseLinkResourceType - - -class CaseLink(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_link_attributes import CaseLinkAttributes - from datadog_api_client.v2.model.case_link_resource_type import CaseLinkResourceType - - return { - "attributes": (CaseLinkAttributes,), - "id": (str,), - "type": (CaseLinkResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "id": "id", - "type": "type", - } - - def __init__(self_, attributes: CaseLinkAttributes, id: str, type: CaseLinkResourceType, **kwargs): - """ - A directional link representing a relationship between two entities. At least one entity must be a case. - - :param attributes: Attributes describing a directional relationship between two entities (cases, incidents, or pages). - :type attributes: CaseLinkAttributes - - :param id: The case link identifier. - :type id: str - - :param type: JSON:API resource type for case links. - :type type: CaseLinkResourceType - """ - super().__init__(kwargs) - - self_.attributes = attributes - self_.id = id - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_link_attributes.py b/src/datadog_api_client/v2/model/case_link_attributes.py deleted file mode 100644 index 3cdca42876..0000000000 --- a/src/datadog_api_client/v2/model/case_link_attributes.py +++ /dev/null @@ -1,65 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -class CaseLinkAttributes(ModelNormal): - @cached_property - def openapi_types(_): - return { - "child_entity_id": (str,), - "child_entity_type": (str,), - "parent_entity_id": (str,), - "parent_entity_type": (str,), - "relationship": (str,), - } - - attribute_map = { - "child_entity_id": "child_entity_id", - "child_entity_type": "child_entity_type", - "parent_entity_id": "parent_entity_id", - "parent_entity_type": "parent_entity_type", - "relationship": "relationship", - } - - def __init__( - self_, - child_entity_id: str, - child_entity_type: str, - parent_entity_id: str, - parent_entity_type: str, - relationship: str, - **kwargs, - ): - """ - Attributes describing a directional relationship between two entities (cases, incidents, or pages). - - :param child_entity_id: The UUID of the child (target) entity in the relationship. - :type child_entity_id: str - - :param child_entity_type: The type of the child entity. Allowed values: ``CASE`` , ``INCIDENT`` , ``PAGE`` , ``AGENT_CONVERSATION``. - :type child_entity_type: str - - :param parent_entity_id: The UUID of the parent (source) entity in the relationship. - :type parent_entity_id: str - - :param parent_entity_type: The type of the parent entity. Allowed values: ``CASE`` , ``INCIDENT`` , ``PAGE`` , ``AGENT_CONVERSATION``. - :type parent_entity_type: str - - :param relationship: The type of directional relationship. Allowed values: ``RELATES_TO`` (bidirectional association), ``CAUSES`` (parent causes child), ``BLOCKS`` (parent blocks child), ``DUPLICATES`` (parent duplicates child), ``PARENT_OF`` (hierarchical), ``SUCCESSOR_OF`` (sequence), ``ESCALATES_TO`` (priority escalation). - :type relationship: str - """ - super().__init__(kwargs) - - self_.child_entity_id = child_entity_id - self_.child_entity_type = child_entity_type - self_.parent_entity_id = parent_entity_id - self_.parent_entity_type = parent_entity_type - self_.relationship = relationship diff --git a/src/datadog_api_client/v2/model/case_link_create.py b/src/datadog_api_client/v2/model/case_link_create.py deleted file mode 100644 index 050b9f550a..0000000000 --- a/src/datadog_api_client/v2/model/case_link_create.py +++ /dev/null @@ -1,48 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_link_attributes import CaseLinkAttributes - from datadog_api_client.v2.model.case_link_resource_type import CaseLinkResourceType - - -class CaseLinkCreate(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_link_attributes import CaseLinkAttributes - from datadog_api_client.v2.model.case_link_resource_type import CaseLinkResourceType - - return { - "attributes": (CaseLinkAttributes,), - "type": (CaseLinkResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "type": "type", - } - - def __init__(self_, attributes: CaseLinkAttributes, type: CaseLinkResourceType, **kwargs): - """ - Data object for creating a case link. - - :param attributes: Attributes describing a directional relationship between two entities (cases, incidents, or pages). - :type attributes: CaseLinkAttributes - - :param type: JSON:API resource type for case links. - :type type: CaseLinkResourceType - """ - super().__init__(kwargs) - - self_.attributes = attributes - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_object_attributes.py b/src/datadog_api_client/v2/model/case_object_attributes.py index 497ace0083..bb5b63767a 100644 --- a/src/datadog_api_client/v2/model/case_object_attributes.py +++ b/src/datadog_api_client/v2/model/case_object_attributes.py @@ -17,6 +17,6 @@ def additional_properties_type(_): def __init__(self_, **kwargs): """ - Key-value pairs of case attributes. Each key maps to an array of string values, used for flexible metadata such as labels or tags. + The definition of ``CaseObjectAttributes`` object. """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_resource_type.py b/src/datadog_api_client/v2/model/case_resource_type.py index c56194a856..b62cd3881d 100644 --- a/src/datadog_api_client/v2/model/case_resource_type.py +++ b/src/datadog_api_client/v2/model/case_resource_type.py @@ -14,7 +14,7 @@ class CaseResourceType(ModelSimple): """ - JSON:API resource type for cases. + Case resource type :param value: If omitted defaults to "case". Must be one of ["case"]. :type value: str diff --git a/src/datadog_api_client/v2/model/case_type_create.py b/src/datadog_api_client/v2/model/case_type_create.py index 13c517147f..556f644bbb 100644 --- a/src/datadog_api_client/v2/model/case_type_create.py +++ b/src/datadog_api_client/v2/model/case_type_create.py @@ -34,12 +34,12 @@ def openapi_types(_): def __init__(self_, attributes: CaseTypeResourceAttributes, type: CaseTypeResourceType, **kwargs): """ - Data object for creating a case type. + Case type - :param attributes: Attributes of a case type, which define a classification category for cases. Organizations use case types to model different workflows (for example, Security Incident, Bug Report, Change Request). + :param attributes: Case Type resource attributes :type attributes: CaseTypeResourceAttributes - :param type: JSON:API resource type for case types. + :param type: Case type resource type :type type: CaseTypeResourceType """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_type_create_request.py b/src/datadog_api_client/v2/model/case_type_create_request.py index 7d90216a85..67ee84fed2 100644 --- a/src/datadog_api_client/v2/model/case_type_create_request.py +++ b/src/datadog_api_client/v2/model/case_type_create_request.py @@ -30,9 +30,9 @@ def openapi_types(_): def __init__(self_, data: CaseTypeCreate, **kwargs): """ - Request payload for creating a case type. + Case type create request - :param data: Data object for creating a case type. + :param data: Case type :type data: CaseTypeCreate """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_type_resource.py b/src/datadog_api_client/v2/model/case_type_resource.py index 4aabc70c60..9e973b4207 100644 --- a/src/datadog_api_client/v2/model/case_type_resource.py +++ b/src/datadog_api_client/v2/model/case_type_resource.py @@ -44,15 +44,15 @@ def __init__( **kwargs, ): """ - A case type that defines a classification category for cases. Each case type can have its own custom attributes, statuses, and automation rules. + The definition of ``CaseType`` object. - :param attributes: Attributes of a case type, which define a classification category for cases. Organizations use case types to model different workflows (for example, Security Incident, Bug Report, Change Request). + :param attributes: Case Type resource attributes :type attributes: CaseTypeResourceAttributes, optional :param id: Case type's identifier :type id: str, optional - :param type: JSON:API resource type for case types. + :param type: Case type resource type :type type: CaseTypeResourceType, optional """ if attributes is not unset: diff --git a/src/datadog_api_client/v2/model/case_type_resource_attributes.py b/src/datadog_api_client/v2/model/case_type_resource_attributes.py index d09c30b1a1..ad0fda7158 100644 --- a/src/datadog_api_client/v2/model/case_type_resource_attributes.py +++ b/src/datadog_api_client/v2/model/case_type_resource_attributes.py @@ -44,18 +44,18 @@ def __init__( **kwargs, ): """ - Attributes of a case type, which define a classification category for cases. Organizations use case types to model different workflows (for example, Security Incident, Bug Report, Change Request). + Case Type resource attributes - :param deleted_at: Timestamp when the case type was marked as deleted. A null value indicates the case type is active. + :param deleted_at: Timestamp of when the case type was deleted :type deleted_at: datetime, none_type, optional - :param description: A detailed description explaining when this case type should be used. + :param description: Case type description. :type description: str, optional - :param emoji: An emoji icon representing the case type in the UI. + :param emoji: Case type emoji. :type emoji: str, optional - :param name: The display name of the case type, shown in the Case Management UI when creating or viewing cases. + :param name: Case type name. :type name: str """ if deleted_at is not unset: diff --git a/src/datadog_api_client/v2/model/case_type_resource_type.py b/src/datadog_api_client/v2/model/case_type_resource_type.py index f4817b4488..20e98517ed 100644 --- a/src/datadog_api_client/v2/model/case_type_resource_type.py +++ b/src/datadog_api_client/v2/model/case_type_resource_type.py @@ -14,7 +14,7 @@ class CaseTypeResourceType(ModelSimple): """ - JSON:API resource type for case types. + Case type resource type :param value: If omitted defaults to "case_type". Must be one of ["case_type"]. :type value: str diff --git a/src/datadog_api_client/v2/model/case_type_response.py b/src/datadog_api_client/v2/model/case_type_response.py index b4c23b53c6..6fe3035b2e 100644 --- a/src/datadog_api_client/v2/model/case_type_response.py +++ b/src/datadog_api_client/v2/model/case_type_response.py @@ -32,9 +32,9 @@ def openapi_types(_): def __init__(self_, data: Union[CaseTypeResource, UnsetType] = unset, **kwargs): """ - Response containing a single case type. + Case type response - :param data: A case type that defines a classification category for cases. Each case type can have its own custom attributes, statuses, and automation rules. + :param data: The definition of ``CaseType`` object. :type data: CaseTypeResource, optional """ if data is not unset: diff --git a/src/datadog_api_client/v2/model/case_type_update.py b/src/datadog_api_client/v2/model/case_type_update.py deleted file mode 100644 index ca9a808150..0000000000 --- a/src/datadog_api_client/v2/model/case_type_update.py +++ /dev/null @@ -1,53 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_type_resource_attributes import CaseTypeResourceAttributes - from datadog_api_client.v2.model.case_type_resource_type import CaseTypeResourceType - - -class CaseTypeUpdate(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_type_resource_attributes import CaseTypeResourceAttributes - from datadog_api_client.v2.model.case_type_resource_type import CaseTypeResourceType - - return { - "attributes": (CaseTypeResourceAttributes,), - "type": (CaseTypeResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "type": "type", - } - - def __init__( - self_, type: CaseTypeResourceType, attributes: Union[CaseTypeResourceAttributes, UnsetType] = unset, **kwargs - ): - """ - Data object for updating a case type. - - :param attributes: Attributes of a case type, which define a classification category for cases. Organizations use case types to model different workflows (for example, Security Incident, Bug Report, Change Request). - :type attributes: CaseTypeResourceAttributes, optional - - :param type: JSON:API resource type for case types. - :type type: CaseTypeResourceType - """ - if attributes is not unset: - kwargs["attributes"] = attributes - super().__init__(kwargs) - - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_types_response.py b/src/datadog_api_client/v2/model/case_types_response.py index 6dfd8c89a0..74d323d5d8 100644 --- a/src/datadog_api_client/v2/model/case_types_response.py +++ b/src/datadog_api_client/v2/model/case_types_response.py @@ -32,7 +32,7 @@ def openapi_types(_): def __init__(self_, data: Union[List[CaseTypeResource], UnsetType] = unset, **kwargs): """ - Response containing a list of case types. + Case types response. :param data: List of case types :type data: [CaseTypeResource], optional diff --git a/src/datadog_api_client/v2/model/case_update_attributes.py b/src/datadog_api_client/v2/model/case_update_attributes.py index d74adb39a9..c5b7a6b931 100644 --- a/src/datadog_api_client/v2/model/case_update_attributes.py +++ b/src/datadog_api_client/v2/model/case_update_attributes.py @@ -39,7 +39,7 @@ def __init__(self_, attributes: CaseUpdateAttributesAttributes, type: CaseResour :param attributes: Case update attributes attributes :type attributes: CaseUpdateAttributesAttributes - :param type: JSON:API resource type for cases. + :param type: Case resource type :type type: CaseResourceType """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_update_attributes_attributes.py b/src/datadog_api_client/v2/model/case_update_attributes_attributes.py index 086b7e63b1..9afdbe788a 100644 --- a/src/datadog_api_client/v2/model/case_update_attributes_attributes.py +++ b/src/datadog_api_client/v2/model/case_update_attributes_attributes.py @@ -32,7 +32,7 @@ def __init__(self_, attributes: CaseObjectAttributes, **kwargs): """ Case update attributes attributes - :param attributes: Key-value pairs of case attributes. Each key maps to an array of string values, used for flexible metadata such as labels or tags. + :param attributes: The definition of ``CaseObjectAttributes`` object. :type attributes: CaseObjectAttributes """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_update_comment.py b/src/datadog_api_client/v2/model/case_update_comment.py deleted file mode 100644 index 1c9c7b70f8..0000000000 --- a/src/datadog_api_client/v2/model/case_update_comment.py +++ /dev/null @@ -1,48 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_update_comment_attributes import CaseUpdateCommentAttributes - from datadog_api_client.v2.model.case_resource_type import CaseResourceType - - -class CaseUpdateComment(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_update_comment_attributes import CaseUpdateCommentAttributes - from datadog_api_client.v2.model.case_resource_type import CaseResourceType - - return { - "attributes": (CaseUpdateCommentAttributes,), - "type": (CaseResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "type": "type", - } - - def __init__(self_, attributes: CaseUpdateCommentAttributes, type: CaseResourceType, **kwargs): - """ - Data object for updating a case comment. - - :param attributes: Attributes for updating a comment. - :type attributes: CaseUpdateCommentAttributes - - :param type: JSON:API resource type for cases. - :type type: CaseResourceType - """ - super().__init__(kwargs) - - self_.attributes = attributes - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_update_comment_attributes.py b/src/datadog_api_client/v2/model/case_update_comment_attributes.py deleted file mode 100644 index 73bb66e4bf..0000000000 --- a/src/datadog_api_client/v2/model/case_update_comment_attributes.py +++ /dev/null @@ -1,33 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -class CaseUpdateCommentAttributes(ModelNormal): - @cached_property - def openapi_types(_): - return { - "comment": (str,), - } - - attribute_map = { - "comment": "comment", - } - - def __init__(self_, comment: str, **kwargs): - """ - Attributes for updating a comment. - - :param comment: The updated comment message. - :type comment: str - """ - super().__init__(kwargs) - - self_.comment = comment diff --git a/src/datadog_api_client/v2/model/case_update_comment_request.py b/src/datadog_api_client/v2/model/case_update_comment_request.py deleted file mode 100644 index e53b3abeb2..0000000000 --- a/src/datadog_api_client/v2/model/case_update_comment_request.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_update_comment import CaseUpdateComment - - -class CaseUpdateCommentRequest(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_update_comment import CaseUpdateComment - - return { - "data": (CaseUpdateComment,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: CaseUpdateComment, **kwargs): - """ - Request payload for updating a comment on a case timeline. - - :param data: Data object for updating a case comment. - :type data: CaseUpdateComment - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/case_update_custom_attribute.py b/src/datadog_api_client/v2/model/case_update_custom_attribute.py index afba51d8fa..9e1461464b 100644 --- a/src/datadog_api_client/v2/model/case_update_custom_attribute.py +++ b/src/datadog_api_client/v2/model/case_update_custom_attribute.py @@ -36,10 +36,10 @@ def __init__(self_, attributes: CustomAttributeValue, type: CaseResourceType, ** """ Case update custom attribute - :param attributes: A typed value for a custom attribute on a specific case. + :param attributes: Custom attribute values :type attributes: CustomAttributeValue - :param type: JSON:API resource type for cases. + :param type: Case resource type :type type: CaseResourceType """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_update_description.py b/src/datadog_api_client/v2/model/case_update_description.py index 3a068df255..232c4ea07e 100644 --- a/src/datadog_api_client/v2/model/case_update_description.py +++ b/src/datadog_api_client/v2/model/case_update_description.py @@ -39,7 +39,7 @@ def __init__(self_, attributes: CaseUpdateDescriptionAttributes, type: CaseResou :param attributes: Case update description attributes :type attributes: CaseUpdateDescriptionAttributes - :param type: JSON:API resource type for cases. + :param type: Case resource type :type type: CaseResourceType """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_update_due_date.py b/src/datadog_api_client/v2/model/case_update_due_date.py deleted file mode 100644 index d31bd94d95..0000000000 --- a/src/datadog_api_client/v2/model/case_update_due_date.py +++ /dev/null @@ -1,48 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_update_due_date_attributes import CaseUpdateDueDateAttributes - from datadog_api_client.v2.model.case_resource_type import CaseResourceType - - -class CaseUpdateDueDate(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_update_due_date_attributes import CaseUpdateDueDateAttributes - from datadog_api_client.v2.model.case_resource_type import CaseResourceType - - return { - "attributes": (CaseUpdateDueDateAttributes,), - "type": (CaseResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "type": "type", - } - - def __init__(self_, attributes: CaseUpdateDueDateAttributes, type: CaseResourceType, **kwargs): - """ - Data object for updating a case's due date. - - :param attributes: Attributes for setting or clearing a case's due date. - :type attributes: CaseUpdateDueDateAttributes - - :param type: JSON:API resource type for cases. - :type type: CaseResourceType - """ - super().__init__(kwargs) - - self_.attributes = attributes - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_update_due_date_request.py b/src/datadog_api_client/v2/model/case_update_due_date_request.py deleted file mode 100644 index b3b9d54cb8..0000000000 --- a/src/datadog_api_client/v2/model/case_update_due_date_request.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_update_due_date import CaseUpdateDueDate - - -class CaseUpdateDueDateRequest(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_update_due_date import CaseUpdateDueDate - - return { - "data": (CaseUpdateDueDate,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: CaseUpdateDueDate, **kwargs): - """ - Request payload for updating a case's due date. - - :param data: Data object for updating a case's due date. - :type data: CaseUpdateDueDate - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/case_update_priority.py b/src/datadog_api_client/v2/model/case_update_priority.py index d6e607d8e3..72eb970a8b 100644 --- a/src/datadog_api_client/v2/model/case_update_priority.py +++ b/src/datadog_api_client/v2/model/case_update_priority.py @@ -39,7 +39,7 @@ def __init__(self_, attributes: CaseUpdatePriorityAttributes, type: CaseResource :param attributes: Case update priority attributes :type attributes: CaseUpdatePriorityAttributes - :param type: JSON:API resource type for cases. + :param type: Case resource type :type type: CaseResourceType """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_update_resolved_reason.py b/src/datadog_api_client/v2/model/case_update_resolved_reason.py deleted file mode 100644 index fa1e850dc0..0000000000 --- a/src/datadog_api_client/v2/model/case_update_resolved_reason.py +++ /dev/null @@ -1,50 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_update_resolved_reason_attributes import CaseUpdateResolvedReasonAttributes - from datadog_api_client.v2.model.case_resource_type import CaseResourceType - - -class CaseUpdateResolvedReason(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_update_resolved_reason_attributes import ( - CaseUpdateResolvedReasonAttributes, - ) - from datadog_api_client.v2.model.case_resource_type import CaseResourceType - - return { - "attributes": (CaseUpdateResolvedReasonAttributes,), - "type": (CaseResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "type": "type", - } - - def __init__(self_, attributes: CaseUpdateResolvedReasonAttributes, type: CaseResourceType, **kwargs): - """ - Data object for updating a case's resolved reason. - - :param attributes: Attributes for setting the resolution reason on a security case. - :type attributes: CaseUpdateResolvedReasonAttributes - - :param type: JSON:API resource type for cases. - :type type: CaseResourceType - """ - super().__init__(kwargs) - - self_.attributes = attributes - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_update_resolved_reason_attributes.py b/src/datadog_api_client/v2/model/case_update_resolved_reason_attributes.py deleted file mode 100644 index 0e1bcaaa5e..0000000000 --- a/src/datadog_api_client/v2/model/case_update_resolved_reason_attributes.py +++ /dev/null @@ -1,33 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -class CaseUpdateResolvedReasonAttributes(ModelNormal): - @cached_property - def openapi_types(_): - return { - "security_resolved_reason": (str,), - } - - attribute_map = { - "security_resolved_reason": "security_resolved_reason", - } - - def __init__(self_, security_resolved_reason: str, **kwargs): - """ - Attributes for setting the resolution reason on a security case. - - :param security_resolved_reason: The reason the security case was resolved (for example, ``FALSE_POSITIVE`` , ``TRUE_POSITIVE`` , ``BENIGN_POSITIVE`` ). - :type security_resolved_reason: str - """ - super().__init__(kwargs) - - self_.security_resolved_reason = security_resolved_reason diff --git a/src/datadog_api_client/v2/model/case_update_resolved_reason_request.py b/src/datadog_api_client/v2/model/case_update_resolved_reason_request.py deleted file mode 100644 index 48ab60067a..0000000000 --- a/src/datadog_api_client/v2/model/case_update_resolved_reason_request.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_update_resolved_reason import CaseUpdateResolvedReason - - -class CaseUpdateResolvedReasonRequest(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_update_resolved_reason import CaseUpdateResolvedReason - - return { - "data": (CaseUpdateResolvedReason,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: CaseUpdateResolvedReason, **kwargs): - """ - Request payload for updating the resolution reason on a closed security case. - - :param data: Data object for updating a case's resolved reason. - :type data: CaseUpdateResolvedReason - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/case_update_status.py b/src/datadog_api_client/v2/model/case_update_status.py index ebd40595d0..af88875c2a 100644 --- a/src/datadog_api_client/v2/model/case_update_status.py +++ b/src/datadog_api_client/v2/model/case_update_status.py @@ -39,7 +39,7 @@ def __init__(self_, attributes: CaseUpdateStatusAttributes, type: CaseResourceTy :param attributes: Case update status attributes :type attributes: CaseUpdateStatusAttributes - :param type: JSON:API resource type for cases. + :param type: Case resource type :type type: CaseResourceType """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_update_title.py b/src/datadog_api_client/v2/model/case_update_title.py index 6e45419a24..fb1ac8456c 100644 --- a/src/datadog_api_client/v2/model/case_update_title.py +++ b/src/datadog_api_client/v2/model/case_update_title.py @@ -39,7 +39,7 @@ def __init__(self_, attributes: CaseUpdateTitleAttributes, type: CaseResourceTyp :param attributes: Case update title attributes :type attributes: CaseUpdateTitleAttributes - :param type: JSON:API resource type for cases. + :param type: Case resource type :type type: CaseResourceType """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_view.py b/src/datadog_api_client/v2/model/case_view.py deleted file mode 100644 index 3f61bf6054..0000000000 --- a/src/datadog_api_client/v2/model/case_view.py +++ /dev/null @@ -1,72 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_view_attributes import CaseViewAttributes - from datadog_api_client.v2.model.case_view_relationships import CaseViewRelationships - from datadog_api_client.v2.model.case_view_resource_type import CaseViewResourceType - - -class CaseView(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_view_attributes import CaseViewAttributes - from datadog_api_client.v2.model.case_view_relationships import CaseViewRelationships - from datadog_api_client.v2.model.case_view_resource_type import CaseViewResourceType - - return { - "attributes": (CaseViewAttributes,), - "id": (str,), - "relationships": (CaseViewRelationships,), - "type": (CaseViewResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "id": "id", - "relationships": "relationships", - "type": "type", - } - - def __init__( - self_, - attributes: CaseViewAttributes, - id: str, - type: CaseViewResourceType, - relationships: Union[CaseViewRelationships, UnsetType] = unset, - **kwargs, - ): - """ - A saved case view that provides a filtered, reusable list of cases matching a specific query. Views act as persistent dashboards for monitoring case subsets. - - :param attributes: Attributes of a case view, including the filter query and optional notification rule. - :type attributes: CaseViewAttributes - - :param id: The view's identifier. - :type id: str - - :param relationships: Related resources for the case view, including the creator, last modifier, and associated project. - :type relationships: CaseViewRelationships, optional - - :param type: JSON:API resource type for case views. - :type type: CaseViewResourceType - """ - if relationships is not unset: - kwargs["relationships"] = relationships - super().__init__(kwargs) - - self_.attributes = attributes - self_.id = id - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_view_attributes.py b/src/datadog_api_client/v2/model/case_view_attributes.py deleted file mode 100644 index 78aada8b67..0000000000 --- a/src/datadog_api_client/v2/model/case_view_attributes.py +++ /dev/null @@ -1,75 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - datetime, - unset, - UnsetType, -) - - -class CaseViewAttributes(ModelNormal): - @cached_property - def openapi_types(_): - return { - "created_at": (datetime,), - "modified_at": (datetime,), - "name": (str,), - "np_rule_id": (str,), - "query": (str,), - } - - attribute_map = { - "created_at": "created_at", - "modified_at": "modified_at", - "name": "name", - "np_rule_id": "np_rule_id", - "query": "query", - } - read_only_vars = { - "created_at", - "modified_at", - } - - def __init__( - self_, - created_at: datetime, - name: str, - query: str, - modified_at: Union[datetime, UnsetType] = unset, - np_rule_id: Union[str, UnsetType] = unset, - **kwargs, - ): - """ - Attributes of a case view, including the filter query and optional notification rule. - - :param created_at: Timestamp when the view was created. - :type created_at: datetime - - :param modified_at: Timestamp when the view was last modified. - :type modified_at: datetime, optional - - :param name: A human-readable name for the view, displayed in the Case Management UI. - :type name: str - - :param np_rule_id: The identifier of a notification rule linked to this view. When set, users subscribed to the view receive alerts for matching cases. - :type np_rule_id: str, optional - - :param query: The search query that determines which cases appear in this view. Uses the same syntax as the Case Management search bar (for example, ``status:open priority:P1`` ). - :type query: str - """ - if modified_at is not unset: - kwargs["modified_at"] = modified_at - if np_rule_id is not unset: - kwargs["np_rule_id"] = np_rule_id - super().__init__(kwargs) - - self_.created_at = created_at - self_.name = name - self_.query = query diff --git a/src/datadog_api_client/v2/model/case_view_create.py b/src/datadog_api_client/v2/model/case_view_create.py deleted file mode 100644 index d8bd53f518..0000000000 --- a/src/datadog_api_client/v2/model/case_view_create.py +++ /dev/null @@ -1,48 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_view_create_attributes import CaseViewCreateAttributes - from datadog_api_client.v2.model.case_view_resource_type import CaseViewResourceType - - -class CaseViewCreate(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_view_create_attributes import CaseViewCreateAttributes - from datadog_api_client.v2.model.case_view_resource_type import CaseViewResourceType - - return { - "attributes": (CaseViewCreateAttributes,), - "type": (CaseViewResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "type": "type", - } - - def __init__(self_, attributes: CaseViewCreateAttributes, type: CaseViewResourceType, **kwargs): - """ - Data object for creating a case view. - - :param attributes: Attributes required to create a case view. - :type attributes: CaseViewCreateAttributes - - :param type: JSON:API resource type for case views. - :type type: CaseViewResourceType - """ - super().__init__(kwargs) - - self_.attributes = attributes - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_view_create_attributes.py b/src/datadog_api_client/v2/model/case_view_create_attributes.py deleted file mode 100644 index f95b82353f..0000000000 --- a/src/datadog_api_client/v2/model/case_view_create_attributes.py +++ /dev/null @@ -1,55 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -class CaseViewCreateAttributes(ModelNormal): - @cached_property - def openapi_types(_): - return { - "name": (str,), - "np_rule_id": (str,), - "project_id": (str,), - "query": (str,), - } - - attribute_map = { - "name": "name", - "np_rule_id": "np_rule_id", - "project_id": "project_id", - "query": "query", - } - - def __init__(self_, name: str, project_id: str, query: str, np_rule_id: Union[str, UnsetType] = unset, **kwargs): - """ - Attributes required to create a case view. - - :param name: The name of the view. - :type name: str - - :param np_rule_id: The identifier of a notification rule linked to this view. When set, users subscribed to the view receive alerts for matching cases. - :type np_rule_id: str, optional - - :param project_id: The UUID of the project this view belongs to. Views are scoped to a single project. - :type project_id: str - - :param query: The query used to filter cases in this view. - :type query: str - """ - if np_rule_id is not unset: - kwargs["np_rule_id"] = np_rule_id - super().__init__(kwargs) - - self_.name = name - self_.project_id = project_id - self_.query = query diff --git a/src/datadog_api_client/v2/model/case_view_create_request.py b/src/datadog_api_client/v2/model/case_view_create_request.py deleted file mode 100644 index 764bfbdcbd..0000000000 --- a/src/datadog_api_client/v2/model/case_view_create_request.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_view_create import CaseViewCreate - - -class CaseViewCreateRequest(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_view_create import CaseViewCreate - - return { - "data": (CaseViewCreate,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: CaseViewCreate, **kwargs): - """ - Request payload for creating a case view. - - :param data: Data object for creating a case view. - :type data: CaseViewCreate - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/case_view_relationships.py b/src/datadog_api_client/v2/model/case_view_relationships.py deleted file mode 100644 index bc2d378c99..0000000000 --- a/src/datadog_api_client/v2/model/case_view_relationships.py +++ /dev/null @@ -1,65 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - none_type, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.nullable_user_relationship import NullableUserRelationship - from datadog_api_client.v2.model.project_relationship import ProjectRelationship - - -class CaseViewRelationships(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.nullable_user_relationship import NullableUserRelationship - from datadog_api_client.v2.model.project_relationship import ProjectRelationship - - return { - "created_by": (NullableUserRelationship,), - "modified_by": (NullableUserRelationship,), - "project": (ProjectRelationship,), - } - - attribute_map = { - "created_by": "created_by", - "modified_by": "modified_by", - "project": "project", - } - - def __init__( - self_, - created_by: Union[NullableUserRelationship, none_type, UnsetType] = unset, - modified_by: Union[NullableUserRelationship, none_type, UnsetType] = unset, - project: Union[ProjectRelationship, UnsetType] = unset, - **kwargs, - ): - """ - Related resources for the case view, including the creator, last modifier, and associated project. - - :param created_by: Relationship to user. - :type created_by: NullableUserRelationship, none_type, optional - - :param modified_by: Relationship to user. - :type modified_by: NullableUserRelationship, none_type, optional - - :param project: Relationship to project. - :type project: ProjectRelationship, optional - """ - if created_by is not unset: - kwargs["created_by"] = created_by - if modified_by is not unset: - kwargs["modified_by"] = modified_by - if project is not unset: - kwargs["project"] = project - super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_view_response.py b/src/datadog_api_client/v2/model/case_view_response.py deleted file mode 100644 index e94b2f1d32..0000000000 --- a/src/datadog_api_client/v2/model/case_view_response.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_view import CaseView - - -class CaseViewResponse(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_view import CaseView - - return { - "data": (CaseView,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: CaseView, **kwargs): - """ - Response containing a single case view. - - :param data: A saved case view that provides a filtered, reusable list of cases matching a specific query. Views act as persistent dashboards for monitoring case subsets. - :type data: CaseView - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/case_view_update.py b/src/datadog_api_client/v2/model/case_view_update.py deleted file mode 100644 index 5722422e5c..0000000000 --- a/src/datadog_api_client/v2/model/case_view_update.py +++ /dev/null @@ -1,53 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_view_update_attributes import CaseViewUpdateAttributes - from datadog_api_client.v2.model.case_view_resource_type import CaseViewResourceType - - -class CaseViewUpdate(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_view_update_attributes import CaseViewUpdateAttributes - from datadog_api_client.v2.model.case_view_resource_type import CaseViewResourceType - - return { - "attributes": (CaseViewUpdateAttributes,), - "type": (CaseViewResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "type": "type", - } - - def __init__( - self_, type: CaseViewResourceType, attributes: Union[CaseViewUpdateAttributes, UnsetType] = unset, **kwargs - ): - """ - Data object for updating a case view. - - :param attributes: Attributes that can be updated on a case view. All fields are optional; only provided fields are changed. - :type attributes: CaseViewUpdateAttributes, optional - - :param type: JSON:API resource type for case views. - :type type: CaseViewResourceType - """ - if attributes is not unset: - kwargs["attributes"] = attributes - super().__init__(kwargs) - - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_view_update_attributes.py b/src/datadog_api_client/v2/model/case_view_update_attributes.py deleted file mode 100644 index bfd0cc66e8..0000000000 --- a/src/datadog_api_client/v2/model/case_view_update_attributes.py +++ /dev/null @@ -1,56 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -class CaseViewUpdateAttributes(ModelNormal): - @cached_property - def openapi_types(_): - return { - "name": (str,), - "np_rule_id": (str,), - "query": (str,), - } - - attribute_map = { - "name": "name", - "np_rule_id": "np_rule_id", - "query": "query", - } - - def __init__( - self_, - name: Union[str, UnsetType] = unset, - np_rule_id: Union[str, UnsetType] = unset, - query: Union[str, UnsetType] = unset, - **kwargs, - ): - """ - Attributes that can be updated on a case view. All fields are optional; only provided fields are changed. - - :param name: The name of the view. - :type name: str, optional - - :param np_rule_id: The identifier of a notification rule linked to this view. When set, users subscribed to the view receive alerts for matching cases. - :type np_rule_id: str, optional - - :param query: The query used to filter cases in this view. - :type query: str, optional - """ - if name is not unset: - kwargs["name"] = name - if np_rule_id is not unset: - kwargs["np_rule_id"] = np_rule_id - if query is not unset: - kwargs["query"] = query - super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_views_response.py b/src/datadog_api_client/v2/model/case_views_response.py deleted file mode 100644 index 9aefe2f98a..0000000000 --- a/src/datadog_api_client/v2/model/case_views_response.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import List, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_view import CaseView - - -class CaseViewsResponse(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_view import CaseView - - return { - "data": ([CaseView],), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: List[CaseView], **kwargs): - """ - Response containing a list of case views. - - :param data: A list of case views. - :type data: [CaseView] - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/case_watcher.py b/src/datadog_api_client/v2/model/case_watcher.py deleted file mode 100644 index 7ca277173e..0000000000 --- a/src/datadog_api_client/v2/model/case_watcher.py +++ /dev/null @@ -1,54 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_watcher_relationships import CaseWatcherRelationships - from datadog_api_client.v2.model.case_watcher_resource_type import CaseWatcherResourceType - - -class CaseWatcher(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_watcher_relationships import CaseWatcherRelationships - from datadog_api_client.v2.model.case_watcher_resource_type import CaseWatcherResourceType - - return { - "id": (str,), - "relationships": (CaseWatcherRelationships,), - "type": (CaseWatcherResourceType,), - } - - attribute_map = { - "id": "id", - "relationships": "relationships", - "type": "type", - } - - def __init__(self_, id: str, relationships: CaseWatcherRelationships, type: CaseWatcherResourceType, **kwargs): - """ - Represents a user who is subscribed to notifications for a case. Watchers receive updates when the case's status, priority, assignee, or comments change. - - :param id: The primary identifier of the case watcher. - :type id: str - - :param relationships: Relationships for a case watcher, linking to the underlying user resource. - :type relationships: CaseWatcherRelationships - - :param type: JSON:API resource type for case watchers. - :type type: CaseWatcherResourceType - """ - super().__init__(kwargs) - - self_.id = id - self_.relationships = relationships - self_.type = type diff --git a/src/datadog_api_client/v2/model/case_watcher_relationships.py b/src/datadog_api_client/v2/model/case_watcher_relationships.py deleted file mode 100644 index 5baeb39051..0000000000 --- a/src/datadog_api_client/v2/model/case_watcher_relationships.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_watcher_user_relationship import CaseWatcherUserRelationship - - -class CaseWatcherRelationships(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_watcher_user_relationship import CaseWatcherUserRelationship - - return { - "user": (CaseWatcherUserRelationship,), - } - - attribute_map = { - "user": "user", - } - - def __init__(self_, user: CaseWatcherUserRelationship, **kwargs): - """ - Relationships for a case watcher, linking to the underlying user resource. - - :param user: The user relationship for a case watcher. - :type user: CaseWatcherUserRelationship - """ - super().__init__(kwargs) - - self_.user = user diff --git a/src/datadog_api_client/v2/model/case_watcher_user_relationship.py b/src/datadog_api_client/v2/model/case_watcher_user_relationship.py deleted file mode 100644 index b62f54bd72..0000000000 --- a/src/datadog_api_client/v2/model/case_watcher_user_relationship.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.user_relationship_data import UserRelationshipData - - -class CaseWatcherUserRelationship(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.user_relationship_data import UserRelationshipData - - return { - "data": (UserRelationshipData,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: UserRelationshipData, **kwargs): - """ - The user relationship for a case watcher. - - :param data: Relationship to user object. - :type data: UserRelationshipData - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/case_watchers_response.py b/src/datadog_api_client/v2/model/case_watchers_response.py deleted file mode 100644 index 9bca7050e8..0000000000 --- a/src/datadog_api_client/v2/model/case_watchers_response.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import List, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.case_watcher import CaseWatcher - - -class CaseWatchersResponse(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.case_watcher import CaseWatcher - - return { - "data": ([CaseWatcher],), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: List[CaseWatcher], **kwargs): - """ - Response containing the list of users watching a case. - - :param data: List of case watchers. - :type data: [CaseWatcher] - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/custom_attribute_config.py b/src/datadog_api_client/v2/model/custom_attribute_config.py index 5ff4d79b06..3df8b1075c 100644 --- a/src/datadog_api_client/v2/model/custom_attribute_config.py +++ b/src/datadog_api_client/v2/model/custom_attribute_config.py @@ -48,15 +48,15 @@ def __init__( **kwargs, ): """ - A custom attribute configuration that defines an organization-specific metadata field on cases. Custom attributes are scoped to a case type and can hold text, URLs, numbers, or predefined select options. + The definition of ``CustomAttributeConfig`` object. - :param attributes: Attributes of a custom attribute configuration, defining an organization-specific metadata field that can be added to cases of a given type. + :param attributes: Custom attribute resource attributes :type attributes: CustomAttributeConfigResourceAttributes, optional :param id: Custom attribute configs identifier :type id: str, optional - :param type: JSON:API resource type for custom attribute configurations. + :param type: Custom attributes config JSON:API resource type :type type: CustomAttributeConfigResourceType, optional """ if attributes is not unset: diff --git a/src/datadog_api_client/v2/model/custom_attribute_config_attributes_create.py b/src/datadog_api_client/v2/model/custom_attribute_config_attributes_create.py index 7416f4c0c6..2c414e300c 100644 --- a/src/datadog_api_client/v2/model/custom_attribute_config_attributes_create.py +++ b/src/datadog_api_client/v2/model/custom_attribute_config_attributes_create.py @@ -48,21 +48,21 @@ def __init__( **kwargs, ): """ - Attributes required to create a custom attribute configuration. + Custom attribute config resource attributes - :param description: A description explaining the purpose and expected values for this custom attribute. + :param description: Custom attribute description. :type description: str, optional - :param display_name: The human-readable label shown in the Case Management UI for this custom attribute. + :param display_name: Custom attribute name. :type display_name: str - :param is_multi: If ``true`` , this attribute accepts an array of values. If ``false`` , only a single value is allowed. + :param is_multi: Whether multiple values can be set :type is_multi: bool - :param key: The programmatic key used to reference this custom attribute in search queries and API calls. + :param key: Custom attribute key. This will be the value use to search on this custom attribute :type key: str - :param type: The data type of the custom attribute, which determines the allowed values and UI input control. + :param type: Custom attributes type :type type: CustomAttributeType """ if description is not unset: diff --git a/src/datadog_api_client/v2/model/custom_attribute_config_create.py b/src/datadog_api_client/v2/model/custom_attribute_config_create.py index 6c7b498deb..dc95d9f0a4 100644 --- a/src/datadog_api_client/v2/model/custom_attribute_config_create.py +++ b/src/datadog_api_client/v2/model/custom_attribute_config_create.py @@ -40,12 +40,12 @@ def __init__( self_, attributes: CustomAttributeConfigAttributesCreate, type: CustomAttributeConfigResourceType, **kwargs ): """ - Data object for creating a custom attribute configuration. + Custom attribute config - :param attributes: Attributes required to create a custom attribute configuration. + :param attributes: Custom attribute config resource attributes :type attributes: CustomAttributeConfigAttributesCreate - :param type: JSON:API resource type for custom attribute configurations. + :param type: Custom attributes config JSON:API resource type :type type: CustomAttributeConfigResourceType """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/custom_attribute_config_create_request.py b/src/datadog_api_client/v2/model/custom_attribute_config_create_request.py index a56ef81019..1c8b76aa2a 100644 --- a/src/datadog_api_client/v2/model/custom_attribute_config_create_request.py +++ b/src/datadog_api_client/v2/model/custom_attribute_config_create_request.py @@ -30,9 +30,9 @@ def openapi_types(_): def __init__(self_, data: CustomAttributeConfigCreate, **kwargs): """ - Request payload for creating a custom attribute configuration. + Custom attribute config create request - :param data: Data object for creating a custom attribute configuration. + :param data: Custom attribute config :type data: CustomAttributeConfigCreate """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/custom_attribute_config_resource_attributes.py b/src/datadog_api_client/v2/model/custom_attribute_config_resource_attributes.py index a902ef4d0a..a8bc185fc0 100644 --- a/src/datadog_api_client/v2/model/custom_attribute_config_resource_attributes.py +++ b/src/datadog_api_client/v2/model/custom_attribute_config_resource_attributes.py @@ -51,24 +51,24 @@ def __init__( **kwargs, ): """ - Attributes of a custom attribute configuration, defining an organization-specific metadata field that can be added to cases of a given type. + Custom attribute resource attributes - :param case_type_id: The UUID of the case type this custom attribute belongs to. + :param case_type_id: Custom attribute config identifier. :type case_type_id: str - :param description: A description explaining the purpose and expected values for this custom attribute. + :param description: Custom attribute description. :type description: str, optional - :param display_name: The human-readable label shown in the Case Management UI for this custom attribute. + :param display_name: Custom attribute name. :type display_name: str - :param is_multi: If ``true`` , this attribute accepts an array of values. If ``false`` , only a single value is allowed. + :param is_multi: Whether multiple values can be set :type is_multi: bool - :param key: The programmatic key used to reference this custom attribute in search queries and API calls. + :param key: Custom attribute key. This will be the value use to search on this custom attribute :type key: str - :param type: The data type of the custom attribute, which determines the allowed values and UI input control. + :param type: Custom attributes type :type type: CustomAttributeType """ if description is not unset: diff --git a/src/datadog_api_client/v2/model/custom_attribute_config_resource_type.py b/src/datadog_api_client/v2/model/custom_attribute_config_resource_type.py index 9337653646..a12572613a 100644 --- a/src/datadog_api_client/v2/model/custom_attribute_config_resource_type.py +++ b/src/datadog_api_client/v2/model/custom_attribute_config_resource_type.py @@ -14,7 +14,7 @@ class CustomAttributeConfigResourceType(ModelSimple): """ - JSON:API resource type for custom attribute configurations. + Custom attributes config JSON:API resource type :param value: If omitted defaults to "custom_attribute". Must be one of ["custom_attribute"]. :type value: str diff --git a/src/datadog_api_client/v2/model/custom_attribute_config_response.py b/src/datadog_api_client/v2/model/custom_attribute_config_response.py index bea448f0b2..986f84e336 100644 --- a/src/datadog_api_client/v2/model/custom_attribute_config_response.py +++ b/src/datadog_api_client/v2/model/custom_attribute_config_response.py @@ -32,9 +32,9 @@ def openapi_types(_): def __init__(self_, data: Union[CustomAttributeConfig, UnsetType] = unset, **kwargs): """ - Response containing a single custom attribute configuration. + Custom attribute config response. - :param data: A custom attribute configuration that defines an organization-specific metadata field on cases. Custom attributes are scoped to a case type and can hold text, URLs, numbers, or predefined select options. + :param data: The definition of ``CustomAttributeConfig`` object. :type data: CustomAttributeConfig, optional """ if data is not unset: diff --git a/src/datadog_api_client/v2/model/custom_attribute_config_update.py b/src/datadog_api_client/v2/model/custom_attribute_config_update.py deleted file mode 100644 index 42b5ada16d..0000000000 --- a/src/datadog_api_client/v2/model/custom_attribute_config_update.py +++ /dev/null @@ -1,60 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.custom_attribute_config_update_attributes import ( - CustomAttributeConfigUpdateAttributes, - ) - from datadog_api_client.v2.model.custom_attribute_config_resource_type import CustomAttributeConfigResourceType - - -class CustomAttributeConfigUpdate(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.custom_attribute_config_update_attributes import ( - CustomAttributeConfigUpdateAttributes, - ) - from datadog_api_client.v2.model.custom_attribute_config_resource_type import CustomAttributeConfigResourceType - - return { - "attributes": (CustomAttributeConfigUpdateAttributes,), - "type": (CustomAttributeConfigResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "type": "type", - } - - def __init__( - self_, - type: CustomAttributeConfigResourceType, - attributes: Union[CustomAttributeConfigUpdateAttributes, UnsetType] = unset, - **kwargs, - ): - """ - Data object for updating a custom attribute configuration. - - :param attributes: Attributes that can be updated on a custom attribute configuration. All fields are optional; only provided fields are changed. - :type attributes: CustomAttributeConfigUpdateAttributes, optional - - :param type: JSON:API resource type for custom attribute configurations. - :type type: CustomAttributeConfigResourceType - """ - if attributes is not unset: - kwargs["attributes"] = attributes - super().__init__(kwargs) - - self_.type = type diff --git a/src/datadog_api_client/v2/model/custom_attribute_config_update_attributes.py b/src/datadog_api_client/v2/model/custom_attribute_config_update_attributes.py deleted file mode 100644 index 9c50a7b40e..0000000000 --- a/src/datadog_api_client/v2/model/custom_attribute_config_update_attributes.py +++ /dev/null @@ -1,80 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.custom_attribute_type import CustomAttributeType - from datadog_api_client.v2.model.custom_attribute_type_data import CustomAttributeTypeData - - -class CustomAttributeConfigUpdateAttributes(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.custom_attribute_type import CustomAttributeType - from datadog_api_client.v2.model.custom_attribute_type_data import CustomAttributeTypeData - - return { - "description": (str,), - "display_name": (str,), - "map_from": (str,), - "type": (CustomAttributeType,), - "type_data": (CustomAttributeTypeData,), - } - - attribute_map = { - "description": "description", - "display_name": "display_name", - "map_from": "map_from", - "type": "type", - "type_data": "type_data", - } - - def __init__( - self_, - description: Union[str, UnsetType] = unset, - display_name: Union[str, UnsetType] = unset, - map_from: Union[str, UnsetType] = unset, - type: Union[CustomAttributeType, UnsetType] = unset, - type_data: Union[CustomAttributeTypeData, UnsetType] = unset, - **kwargs, - ): - """ - Attributes that can be updated on a custom attribute configuration. All fields are optional; only provided fields are changed. - - :param description: A description explaining the purpose and expected values for this custom attribute. - :type description: str, optional - - :param display_name: The human-readable label shown in the Case Management UI for this custom attribute. - :type display_name: str, optional - - :param map_from: An external field identifier to auto-populate this attribute from (used for integrations with external systems). - :type map_from: str, optional - - :param type: The data type of the custom attribute, which determines the allowed values and UI input control. - :type type: CustomAttributeType, optional - - :param type_data: Type-specific configuration for the custom attribute. For SELECT-type attributes, this contains the list of allowed options. - :type type_data: CustomAttributeTypeData, optional - """ - if description is not unset: - kwargs["description"] = description - if display_name is not unset: - kwargs["display_name"] = display_name - if map_from is not unset: - kwargs["map_from"] = map_from - if type is not unset: - kwargs["type"] = type - if type_data is not unset: - kwargs["type_data"] = type_data - super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/custom_attribute_config_update_request.py b/src/datadog_api_client/v2/model/custom_attribute_config_update_request.py deleted file mode 100644 index 786349818a..0000000000 --- a/src/datadog_api_client/v2/model/custom_attribute_config_update_request.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.custom_attribute_config_update import CustomAttributeConfigUpdate - - -class CustomAttributeConfigUpdateRequest(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.custom_attribute_config_update import CustomAttributeConfigUpdate - - return { - "data": (CustomAttributeConfigUpdate,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: CustomAttributeConfigUpdate, **kwargs): - """ - Request payload for updating a custom attribute configuration. - - :param data: Data object for updating a custom attribute configuration. - :type data: CustomAttributeConfigUpdate - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/custom_attribute_configs_response.py b/src/datadog_api_client/v2/model/custom_attribute_configs_response.py index fa9ae52e47..ecfce1adda 100644 --- a/src/datadog_api_client/v2/model/custom_attribute_configs_response.py +++ b/src/datadog_api_client/v2/model/custom_attribute_configs_response.py @@ -32,7 +32,7 @@ def openapi_types(_): def __init__(self_, data: Union[List[CustomAttributeConfig], UnsetType] = unset, **kwargs): """ - Response containing a list of custom attribute configurations. + Custom attribute configs response. :param data: List of custom attribute configs of case type :type data: [CustomAttributeConfig], optional diff --git a/src/datadog_api_client/v2/model/custom_attribute_type.py b/src/datadog_api_client/v2/model/custom_attribute_type.py index be8aa6c0ea..066981191f 100644 --- a/src/datadog_api_client/v2/model/custom_attribute_type.py +++ b/src/datadog_api_client/v2/model/custom_attribute_type.py @@ -14,7 +14,7 @@ class CustomAttributeType(ModelSimple): """ - The data type of the custom attribute, which determines the allowed values and UI input control. + Custom attributes type :param value: Must be one of ["URL", "TEXT", "NUMBER", "SELECT"]. :type value: str diff --git a/src/datadog_api_client/v2/model/custom_attribute_type_data.py b/src/datadog_api_client/v2/model/custom_attribute_type_data.py deleted file mode 100644 index 87bf19b8f0..0000000000 --- a/src/datadog_api_client/v2/model/custom_attribute_type_data.py +++ /dev/null @@ -1,42 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import List, Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.custom_attribute_select_option import CustomAttributeSelectOption - - -class CustomAttributeTypeData(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.custom_attribute_select_option import CustomAttributeSelectOption - - return { - "options": ([CustomAttributeSelectOption],), - } - - attribute_map = { - "options": "options", - } - - def __init__(self_, options: Union[List[CustomAttributeSelectOption], UnsetType] = unset, **kwargs): - """ - Type-specific configuration for the custom attribute. For SELECT-type attributes, this contains the list of allowed options. - - :param options: Options for SELECT type custom attributes. - :type options: [CustomAttributeSelectOption], optional - """ - if options is not unset: - kwargs["options"] = options - super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/custom_attribute_value.py b/src/datadog_api_client/v2/model/custom_attribute_value.py index d7d64f3db5..80fc1e8cc7 100644 --- a/src/datadog_api_client/v2/model/custom_attribute_value.py +++ b/src/datadog_api_client/v2/model/custom_attribute_value.py @@ -42,15 +42,15 @@ def __init__( **kwargs, ): """ - A typed value for a custom attribute on a specific case. + Custom attribute values :param is_multi: If true, value must be an array :type is_multi: bool - :param type: The data type of the custom attribute, which determines the allowed values and UI input control. + :param type: Custom attributes type :type type: CustomAttributeType - :param value: The value of a custom attribute. The accepted format depends on the attribute's type and whether it accepts multiple values. + :param value: Union of supported value for a custom attribute :type value: CustomAttributeValuesUnion """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/custom_attribute_values_union.py b/src/datadog_api_client/v2/model/custom_attribute_values_union.py index 410e878041..2f7a506c3e 100644 --- a/src/datadog_api_client/v2/model/custom_attribute_values_union.py +++ b/src/datadog_api_client/v2/model/custom_attribute_values_union.py @@ -13,7 +13,7 @@ class CustomAttributeValuesUnion(ModelComposed): def __init__(self, **kwargs): """ - The value of a custom attribute. The accepted format depends on the attribute's type and whether it accepts multiple values. + Union of supported value for a custom attribute """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/maintenance_window.py b/src/datadog_api_client/v2/model/maintenance_window.py deleted file mode 100644 index 8b36cfb022..0000000000 --- a/src/datadog_api_client/v2/model/maintenance_window.py +++ /dev/null @@ -1,56 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.maintenance_window_attributes import MaintenanceWindowAttributes - from datadog_api_client.v2.model.maintenance_window_resource_type import MaintenanceWindowResourceType - - -class MaintenanceWindow(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.maintenance_window_attributes import MaintenanceWindowAttributes - from datadog_api_client.v2.model.maintenance_window_resource_type import MaintenanceWindowResourceType - - return { - "attributes": (MaintenanceWindowAttributes,), - "id": (str,), - "type": (MaintenanceWindowResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "id": "id", - "type": "type", - } - - def __init__( - self_, attributes: MaintenanceWindowAttributes, id: str, type: MaintenanceWindowResourceType, **kwargs - ): - """ - A maintenance window that defines a scheduled time period during which case-related notifications and automation rules are suppressed. Each maintenance window applies to cases matching a specified query. - - :param attributes: Attributes of a maintenance window, including its schedule and the query that determines which cases are affected. - :type attributes: MaintenanceWindowAttributes - - :param id: The maintenance window's identifier. - :type id: str - - :param type: JSON:API resource type for maintenance windows. - :type type: MaintenanceWindowResourceType - """ - super().__init__(kwargs) - - self_.attributes = attributes - self_.id = id - self_.type = type diff --git a/src/datadog_api_client/v2/model/maintenance_window_attributes.py b/src/datadog_api_client/v2/model/maintenance_window_attributes.py deleted file mode 100644 index 8727e41a62..0000000000 --- a/src/datadog_api_client/v2/model/maintenance_window_attributes.py +++ /dev/null @@ -1,82 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - datetime, - unset, - UnsetType, -) - - -class MaintenanceWindowAttributes(ModelNormal): - @cached_property - def openapi_types(_): - return { - "created_by": (str,), - "end_at": (datetime,), - "name": (str,), - "query": (str,), - "start_at": (datetime,), - "updated_by": (str,), - } - - attribute_map = { - "created_by": "created_by", - "end_at": "end_at", - "name": "name", - "query": "query", - "start_at": "start_at", - "updated_by": "updated_by", - } - read_only_vars = { - "created_by", - "updated_by", - } - - def __init__( - self_, - end_at: datetime, - name: str, - query: str, - start_at: datetime, - created_by: Union[str, UnsetType] = unset, - updated_by: Union[str, UnsetType] = unset, - **kwargs, - ): - """ - Attributes of a maintenance window, including its schedule and the query that determines which cases are affected. - - :param created_by: The UUID of the user who created this maintenance window. Read-only. - :type created_by: str, optional - - :param end_at: The ISO 8601 timestamp when the maintenance window ends and normal notification behavior resumes. - :type end_at: datetime - - :param name: A human-readable name for the maintenance window (for example, ``Database migration - Dec 15`` ). - :type name: str - - :param query: A case search query that determines which cases are affected during the maintenance window. Uses the same syntax as the Case Management search bar. - :type query: str - - :param start_at: The ISO 8601 timestamp when the maintenance window begins and notifications start being suppressed. - :type start_at: datetime - - :param updated_by: The UUID of the user who last modified this maintenance window. Read-only. - :type updated_by: str, optional - """ - if created_by is not unset: - kwargs["created_by"] = created_by - if updated_by is not unset: - kwargs["updated_by"] = updated_by - super().__init__(kwargs) - - self_.end_at = end_at - self_.name = name - self_.query = query - self_.start_at = start_at diff --git a/src/datadog_api_client/v2/model/maintenance_window_create.py b/src/datadog_api_client/v2/model/maintenance_window_create.py deleted file mode 100644 index cb39c38fa7..0000000000 --- a/src/datadog_api_client/v2/model/maintenance_window_create.py +++ /dev/null @@ -1,48 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.maintenance_window_create_attributes import MaintenanceWindowCreateAttributes - from datadog_api_client.v2.model.maintenance_window_resource_type import MaintenanceWindowResourceType - - -class MaintenanceWindowCreate(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.maintenance_window_create_attributes import MaintenanceWindowCreateAttributes - from datadog_api_client.v2.model.maintenance_window_resource_type import MaintenanceWindowResourceType - - return { - "attributes": (MaintenanceWindowCreateAttributes,), - "type": (MaintenanceWindowResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "type": "type", - } - - def __init__(self_, attributes: MaintenanceWindowCreateAttributes, type: MaintenanceWindowResourceType, **kwargs): - """ - Data object for creating a maintenance window. - - :param attributes: Attributes required to create a maintenance window. - :type attributes: MaintenanceWindowCreateAttributes - - :param type: JSON:API resource type for maintenance windows. - :type type: MaintenanceWindowResourceType - """ - super().__init__(kwargs) - - self_.attributes = attributes - self_.type = type diff --git a/src/datadog_api_client/v2/model/maintenance_window_create_attributes.py b/src/datadog_api_client/v2/model/maintenance_window_create_attributes.py deleted file mode 100644 index 53c98b2d3e..0000000000 --- a/src/datadog_api_client/v2/model/maintenance_window_create_attributes.py +++ /dev/null @@ -1,52 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - datetime, -) - - -class MaintenanceWindowCreateAttributes(ModelNormal): - @cached_property - def openapi_types(_): - return { - "end_at": (datetime,), - "name": (str,), - "query": (str,), - "start_at": (datetime,), - } - - attribute_map = { - "end_at": "end_at", - "name": "name", - "query": "query", - "start_at": "start_at", - } - - def __init__(self_, end_at: datetime, name: str, query: str, start_at: datetime, **kwargs): - """ - Attributes required to create a maintenance window. - - :param end_at: The end time of the maintenance window. - :type end_at: datetime - - :param name: The name of the maintenance window. - :type name: str - - :param query: The query to filter event management cases for this maintenance window. - :type query: str - - :param start_at: The start time of the maintenance window. - :type start_at: datetime - """ - super().__init__(kwargs) - - self_.end_at = end_at - self_.name = name - self_.query = query - self_.start_at = start_at diff --git a/src/datadog_api_client/v2/model/maintenance_window_resource_type.py b/src/datadog_api_client/v2/model/maintenance_window_resource_type.py deleted file mode 100644 index d933c6e059..0000000000 --- a/src/datadog_api_client/v2/model/maintenance_window_resource_type.py +++ /dev/null @@ -1,35 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - - -from datadog_api_client.model_utils import ( - ModelSimple, - cached_property, -) - -from typing import ClassVar - - -class MaintenanceWindowResourceType(ModelSimple): - """ - JSON:API resource type for maintenance windows. - - :param value: If omitted defaults to "maintenance_window". Must be one of ["maintenance_window"]. - :type value: str - """ - - allowed_values = { - "maintenance_window", - } - MAINTENANCE_WINDOW: ClassVar["MaintenanceWindowResourceType"] - - @cached_property - def openapi_types(_): - return { - "value": (str,), - } - - -MaintenanceWindowResourceType.MAINTENANCE_WINDOW = MaintenanceWindowResourceType("maintenance_window") diff --git a/src/datadog_api_client/v2/model/maintenance_window_response.py b/src/datadog_api_client/v2/model/maintenance_window_response.py deleted file mode 100644 index 74ce52a5b3..0000000000 --- a/src/datadog_api_client/v2/model/maintenance_window_response.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.maintenance_window import MaintenanceWindow - - -class MaintenanceWindowResponse(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.maintenance_window import MaintenanceWindow - - return { - "data": (MaintenanceWindow,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: MaintenanceWindow, **kwargs): - """ - Response containing a single maintenance window. - - :param data: A maintenance window that defines a scheduled time period during which case-related notifications and automation rules are suppressed. Each maintenance window applies to cases matching a specified query. - :type data: MaintenanceWindow - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/maintenance_window_update.py b/src/datadog_api_client/v2/model/maintenance_window_update.py deleted file mode 100644 index 6fa79c69cb..0000000000 --- a/src/datadog_api_client/v2/model/maintenance_window_update.py +++ /dev/null @@ -1,56 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - unset, - UnsetType, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.maintenance_window_update_attributes import MaintenanceWindowUpdateAttributes - from datadog_api_client.v2.model.maintenance_window_resource_type import MaintenanceWindowResourceType - - -class MaintenanceWindowUpdate(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.maintenance_window_update_attributes import MaintenanceWindowUpdateAttributes - from datadog_api_client.v2.model.maintenance_window_resource_type import MaintenanceWindowResourceType - - return { - "attributes": (MaintenanceWindowUpdateAttributes,), - "type": (MaintenanceWindowResourceType,), - } - - attribute_map = { - "attributes": "attributes", - "type": "type", - } - - def __init__( - self_, - type: MaintenanceWindowResourceType, - attributes: Union[MaintenanceWindowUpdateAttributes, UnsetType] = unset, - **kwargs, - ): - """ - Data object for updating a maintenance window. - - :param attributes: Attributes that can be updated on a maintenance window. All fields are optional; only provided fields are changed. - :type attributes: MaintenanceWindowUpdateAttributes, optional - - :param type: JSON:API resource type for maintenance windows. - :type type: MaintenanceWindowResourceType - """ - if attributes is not unset: - kwargs["attributes"] = attributes - super().__init__(kwargs) - - self_.type = type diff --git a/src/datadog_api_client/v2/model/maintenance_window_update_attributes.py b/src/datadog_api_client/v2/model/maintenance_window_update_attributes.py deleted file mode 100644 index 407f01cb19..0000000000 --- a/src/datadog_api_client/v2/model/maintenance_window_update_attributes.py +++ /dev/null @@ -1,65 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import Union - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, - datetime, - unset, - UnsetType, -) - - -class MaintenanceWindowUpdateAttributes(ModelNormal): - @cached_property - def openapi_types(_): - return { - "end_at": (datetime,), - "name": (str,), - "query": (str,), - "start_at": (datetime,), - } - - attribute_map = { - "end_at": "end_at", - "name": "name", - "query": "query", - "start_at": "start_at", - } - - def __init__( - self_, - end_at: Union[datetime, UnsetType] = unset, - name: Union[str, UnsetType] = unset, - query: Union[str, UnsetType] = unset, - start_at: Union[datetime, UnsetType] = unset, - **kwargs, - ): - """ - Attributes that can be updated on a maintenance window. All fields are optional; only provided fields are changed. - - :param end_at: The end time of the maintenance window. - :type end_at: datetime, optional - - :param name: The name of the maintenance window. - :type name: str, optional - - :param query: The query to filter event management cases for this maintenance window. - :type query: str, optional - - :param start_at: The start time of the maintenance window. - :type start_at: datetime, optional - """ - if end_at is not unset: - kwargs["end_at"] = end_at - if name is not unset: - kwargs["name"] = name - if query is not unset: - kwargs["query"] = query - if start_at is not unset: - kwargs["start_at"] = start_at - super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/maintenance_window_update_request.py b/src/datadog_api_client/v2/model/maintenance_window_update_request.py deleted file mode 100644 index 199ce09835..0000000000 --- a/src/datadog_api_client/v2/model/maintenance_window_update_request.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.maintenance_window_update import MaintenanceWindowUpdate - - -class MaintenanceWindowUpdateRequest(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.maintenance_window_update import MaintenanceWindowUpdate - - return { - "data": (MaintenanceWindowUpdate,), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: MaintenanceWindowUpdate, **kwargs): - """ - Request payload for updating a maintenance window. - - :param data: Data object for updating a maintenance window. - :type data: MaintenanceWindowUpdate - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/maintenance_windows_response.py b/src/datadog_api_client/v2/model/maintenance_windows_response.py deleted file mode 100644 index dc2c5ae9e1..0000000000 --- a/src/datadog_api_client/v2/model/maintenance_windows_response.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import List, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.maintenance_window import MaintenanceWindow - - -class MaintenanceWindowsResponse(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.maintenance_window import MaintenanceWindow - - return { - "data": ([MaintenanceWindow],), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: List[MaintenanceWindow], **kwargs): - """ - Response containing a list of maintenance windows. - - :param data: List of maintenance windows. - :type data: [MaintenanceWindow] - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/model_lab_artifact_info.py b/src/datadog_api_client/v2/model/model_lab_artifact_info.py new file mode 100644 index 0000000000..a4686daed2 --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_artifact_info.py @@ -0,0 +1,64 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + datetime, + none_type, + unset, + UnsetType, +) + + +class ModelLabArtifactInfo(ModelNormal): + @cached_property + def openapi_types(_): + return { + "artifact_path": (str,), + "created_at": (datetime,), + "file_size": (int, none_type), + "filename": (str,), + } + + attribute_map = { + "artifact_path": "artifact_path", + "created_at": "created_at", + "file_size": "file_size", + "filename": "filename", + } + + def __init__( + self_, + artifact_path: str, + created_at: datetime, + filename: str, + file_size: Union[int, none_type, UnsetType] = unset, + **kwargs, + ): + """ + Information about a project-level artifact file. + + :param artifact_path: The full artifact path relative to the project's artifact root. + :type artifact_path: str + + :param created_at: The date and time the artifact was created. + :type created_at: datetime + + :param file_size: The size of the file in bytes. + :type file_size: int, none_type, optional + + :param filename: The filename of the artifact. + :type filename: str + """ + if file_size is not unset: + kwargs["file_size"] = file_size + super().__init__(kwargs) + + self_.artifact_path = artifact_path + self_.created_at = created_at + self_.filename = filename diff --git a/src/datadog_api_client/v2/model/model_lab_artifact_object_info.py b/src/datadog_api_client/v2/model/model_lab_artifact_object_info.py new file mode 100644 index 0000000000..e93cb5afa8 --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_artifact_object_info.py @@ -0,0 +1,50 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + none_type, + unset, + UnsetType, +) + + +class ModelLabArtifactObjectInfo(ModelNormal): + @cached_property + def openapi_types(_): + return { + "file_size": (int, none_type), + "is_dir": (bool,), + "path": (str,), + } + + attribute_map = { + "file_size": "file_size", + "is_dir": "is_dir", + "path": "path", + } + + def __init__(self_, is_dir: bool, path: str, file_size: Union[int, none_type, UnsetType] = unset, **kwargs): + """ + Information about an artifact file or directory within a run. + + :param file_size: The size of the file in bytes. + :type file_size: int, none_type, optional + + :param is_dir: Whether this artifact entry is a directory. + :type is_dir: bool + + :param path: The path of the artifact relative to the run's artifact root. + :type path: str + """ + if file_size is not unset: + kwargs["file_size"] = file_size + super().__init__(kwargs) + + self_.is_dir = is_dir + self_.path = path diff --git a/src/datadog_api_client/v2/model/model_lab_facet_keys_attributes.py b/src/datadog_api_client/v2/model/model_lab_facet_keys_attributes.py new file mode 100644 index 0000000000..1c64b0172f --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_facet_keys_attributes.py @@ -0,0 +1,47 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import List, Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + none_type, +) + + +class ModelLabFacetKeysAttributes(ModelNormal): + @cached_property + def openapi_types(_): + return { + "metrics": ([str], none_type), + "parameters": ([str],), + "tags": ([str],), + } + + attribute_map = { + "metrics": "metrics", + "parameters": "parameters", + "tags": "tags", + } + + def __init__(self_, metrics: Union[List[str], none_type], parameters: List[str], tags: List[str], **kwargs): + """ + Available facet key names for filtering resources. + + :param metrics: The list of available metric facet keys. + :type metrics: [str], none_type + + :param parameters: The list of available parameter facet keys. + :type parameters: [str] + + :param tags: The list of available tag facet keys. + :type tags: [str] + """ + super().__init__(kwargs) + + self_.metrics = metrics + self_.parameters = parameters + self_.tags = tags diff --git a/src/datadog_api_client/v2/model/model_lab_facet_keys_data.py b/src/datadog_api_client/v2/model/model_lab_facet_keys_data.py new file mode 100644 index 0000000000..a4a6cddb7b --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_facet_keys_data.py @@ -0,0 +1,54 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.model_lab_facet_keys_attributes import ModelLabFacetKeysAttributes + from datadog_api_client.v2.model.model_lab_facet_keys_type import ModelLabFacetKeysType + + +class ModelLabFacetKeysData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.model_lab_facet_keys_attributes import ModelLabFacetKeysAttributes + from datadog_api_client.v2.model.model_lab_facet_keys_type import ModelLabFacetKeysType + + return { + "attributes": (ModelLabFacetKeysAttributes,), + "id": (str,), + "type": (ModelLabFacetKeysType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__(self_, attributes: ModelLabFacetKeysAttributes, id: str, type: ModelLabFacetKeysType, **kwargs): + """ + A facet keys JSON:API resource object. + + :param attributes: Available facet key names for filtering resources. + :type attributes: ModelLabFacetKeysAttributes + + :param id: The unique identifier of the facet keys resource. + :type id: str + + :param type: The JSON:API type for a facet keys resource. + :type type: ModelLabFacetKeysType + """ + super().__init__(kwargs) + + self_.attributes = attributes + self_.id = id + self_.type = type diff --git a/src/datadog_api_client/v2/model/case_link_create_request.py b/src/datadog_api_client/v2/model/model_lab_facet_keys_response.py similarity index 55% rename from src/datadog_api_client/v2/model/case_link_create_request.py rename to src/datadog_api_client/v2/model/model_lab_facet_keys_response.py index 1d4897ff97..0dac63d8ba 100644 --- a/src/datadog_api_client/v2/model/case_link_create_request.py +++ b/src/datadog_api_client/v2/model/model_lab_facet_keys_response.py @@ -12,28 +12,28 @@ if TYPE_CHECKING: - from datadog_api_client.v2.model.case_link_create import CaseLinkCreate + from datadog_api_client.v2.model.model_lab_facet_keys_data import ModelLabFacetKeysData -class CaseLinkCreateRequest(ModelNormal): +class ModelLabFacetKeysResponse(ModelNormal): @cached_property def openapi_types(_): - from datadog_api_client.v2.model.case_link_create import CaseLinkCreate + from datadog_api_client.v2.model.model_lab_facet_keys_data import ModelLabFacetKeysData return { - "data": (CaseLinkCreate,), + "data": (ModelLabFacetKeysData,), } attribute_map = { "data": "data", } - def __init__(self_, data: CaseLinkCreate, **kwargs): + def __init__(self_, data: ModelLabFacetKeysData, **kwargs): """ - Request payload for creating a link between two entities. + Response containing available facet keys. - :param data: Data object for creating a case link. - :type data: CaseLinkCreate + :param data: A facet keys JSON:API resource object. + :type data: ModelLabFacetKeysData """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_watcher_resource_type.py b/src/datadog_api_client/v2/model/model_lab_facet_keys_type.py similarity index 63% rename from src/datadog_api_client/v2/model/case_watcher_resource_type.py rename to src/datadog_api_client/v2/model/model_lab_facet_keys_type.py index cefdbda506..60c92d916e 100644 --- a/src/datadog_api_client/v2/model/case_watcher_resource_type.py +++ b/src/datadog_api_client/v2/model/model_lab_facet_keys_type.py @@ -12,18 +12,18 @@ from typing import ClassVar -class CaseWatcherResourceType(ModelSimple): +class ModelLabFacetKeysType(ModelSimple): """ - JSON:API resource type for case watchers. + The JSON:API type for a facet keys resource. - :param value: If omitted defaults to "watcher". Must be one of ["watcher"]. + :param value: If omitted defaults to "facet_keys". Must be one of ["facet_keys"]. :type value: str """ allowed_values = { - "watcher", + "facet_keys", } - WATCHER: ClassVar["CaseWatcherResourceType"] + FACET_KEYS: ClassVar["ModelLabFacetKeysType"] @cached_property def openapi_types(_): @@ -32,4 +32,4 @@ def openapi_types(_): } -CaseWatcherResourceType.WATCHER = CaseWatcherResourceType("watcher") +ModelLabFacetKeysType.FACET_KEYS = ModelLabFacetKeysType("facet_keys") diff --git a/src/datadog_api_client/v2/model/model_lab_facet_type.py b/src/datadog_api_client/v2/model/model_lab_facet_type.py new file mode 100644 index 0000000000..2cd5b0be0b --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_facet_type.py @@ -0,0 +1,44 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + + +from datadog_api_client.model_utils import ( + ModelSimple, + cached_property, +) + +from typing import ClassVar + + +class ModelLabFacetType(ModelSimple): + """ + The type of facet for filtering Model Lab runs. + + :param value: Must be one of ["parameter", "attribute", "tag", "metric"]. + :type value: str + """ + + allowed_values = { + "parameter", + "attribute", + "tag", + "metric", + } + PARAMETER: ClassVar["ModelLabFacetType"] + ATTRIBUTE: ClassVar["ModelLabFacetType"] + TAG: ClassVar["ModelLabFacetType"] + METRIC: ClassVar["ModelLabFacetType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +ModelLabFacetType.PARAMETER = ModelLabFacetType("parameter") +ModelLabFacetType.ATTRIBUTE = ModelLabFacetType("attribute") +ModelLabFacetType.TAG = ModelLabFacetType("tag") +ModelLabFacetType.METRIC = ModelLabFacetType("metric") diff --git a/src/datadog_api_client/v2/model/model_lab_facet_values_attributes.py b/src/datadog_api_client/v2/model/model_lab_facet_values_attributes.py new file mode 100644 index 0000000000..e46f906574 --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_facet_values_attributes.py @@ -0,0 +1,78 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import List, Union, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.model_lab_metric_stat_range import ModelLabMetricStatRange + from datadog_api_client.v2.model.model_lab_numeric_range import ModelLabNumericRange + + +class ModelLabFacetValuesAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.model_lab_metric_stat_range import ModelLabMetricStatRange + from datadog_api_client.v2.model.model_lab_numeric_range import ModelLabNumericRange + + return { + "facet_name": (str,), + "facet_type": (str,), + "metric_stat_ranges": ([ModelLabMetricStatRange],), + "numeric_range": (ModelLabNumericRange,), + "values": ([str],), + } + + attribute_map = { + "facet_name": "facet_name", + "facet_type": "facet_type", + "metric_stat_ranges": "metric_stat_ranges", + "numeric_range": "numeric_range", + "values": "values", + } + + def __init__( + self_, + facet_name: str, + facet_type: str, + values: List[str], + metric_stat_ranges: Union[List[ModelLabMetricStatRange], UnsetType] = unset, + numeric_range: Union[ModelLabNumericRange, UnsetType] = unset, + **kwargs, + ): + """ + Available values for a specific facet key. + + :param facet_name: The name of the facet. + :type facet_name: str + + :param facet_type: The type of the facet. + :type facet_type: str + + :param metric_stat_ranges: The ranges for each metric statistic. + :type metric_stat_ranges: [ModelLabMetricStatRange], optional + + :param numeric_range: The numeric range of values for a facet. + :type numeric_range: ModelLabNumericRange, optional + + :param values: The list of available string values for this facet. + :type values: [str] + """ + if metric_stat_ranges is not unset: + kwargs["metric_stat_ranges"] = metric_stat_ranges + if numeric_range is not unset: + kwargs["numeric_range"] = numeric_range + super().__init__(kwargs) + + self_.facet_name = facet_name + self_.facet_type = facet_type + self_.values = values diff --git a/src/datadog_api_client/v2/model/model_lab_facet_values_data.py b/src/datadog_api_client/v2/model/model_lab_facet_values_data.py new file mode 100644 index 0000000000..34a081eb3e --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_facet_values_data.py @@ -0,0 +1,54 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.model_lab_facet_values_attributes import ModelLabFacetValuesAttributes + from datadog_api_client.v2.model.model_lab_facet_values_type import ModelLabFacetValuesType + + +class ModelLabFacetValuesData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.model_lab_facet_values_attributes import ModelLabFacetValuesAttributes + from datadog_api_client.v2.model.model_lab_facet_values_type import ModelLabFacetValuesType + + return { + "attributes": (ModelLabFacetValuesAttributes,), + "id": (str,), + "type": (ModelLabFacetValuesType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__(self_, attributes: ModelLabFacetValuesAttributes, id: str, type: ModelLabFacetValuesType, **kwargs): + """ + A facet values JSON:API resource object. + + :param attributes: Available values for a specific facet key. + :type attributes: ModelLabFacetValuesAttributes + + :param id: The unique identifier of the facet values resource. + :type id: str + + :param type: The JSON:API type for a facet values resource. + :type type: ModelLabFacetValuesType + """ + super().__init__(kwargs) + + self_.attributes = attributes + self_.id = id + self_.type = type diff --git a/src/datadog_api_client/v2/model/maintenance_window_create_request.py b/src/datadog_api_client/v2/model/model_lab_facet_values_response.py similarity index 54% rename from src/datadog_api_client/v2/model/maintenance_window_create_request.py rename to src/datadog_api_client/v2/model/model_lab_facet_values_response.py index 1f2ba5178c..ff3ec7f03f 100644 --- a/src/datadog_api_client/v2/model/maintenance_window_create_request.py +++ b/src/datadog_api_client/v2/model/model_lab_facet_values_response.py @@ -12,28 +12,28 @@ if TYPE_CHECKING: - from datadog_api_client.v2.model.maintenance_window_create import MaintenanceWindowCreate + from datadog_api_client.v2.model.model_lab_facet_values_data import ModelLabFacetValuesData -class MaintenanceWindowCreateRequest(ModelNormal): +class ModelLabFacetValuesResponse(ModelNormal): @cached_property def openapi_types(_): - from datadog_api_client.v2.model.maintenance_window_create import MaintenanceWindowCreate + from datadog_api_client.v2.model.model_lab_facet_values_data import ModelLabFacetValuesData return { - "data": (MaintenanceWindowCreate,), + "data": (ModelLabFacetValuesData,), } attribute_map = { "data": "data", } - def __init__(self_, data: MaintenanceWindowCreate, **kwargs): + def __init__(self_, data: ModelLabFacetValuesData, **kwargs): """ - Request payload for creating a maintenance window. + Response containing available values for a facet key. - :param data: Data object for creating a maintenance window. - :type data: MaintenanceWindowCreate + :param data: A facet values JSON:API resource object. + :type data: ModelLabFacetValuesData """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_aggregate_resource_type.py b/src/datadog_api_client/v2/model/model_lab_facet_values_type.py similarity index 62% rename from src/datadog_api_client/v2/model/case_aggregate_resource_type.py rename to src/datadog_api_client/v2/model/model_lab_facet_values_type.py index 0d82bd7fbf..742f968854 100644 --- a/src/datadog_api_client/v2/model/case_aggregate_resource_type.py +++ b/src/datadog_api_client/v2/model/model_lab_facet_values_type.py @@ -12,18 +12,18 @@ from typing import ClassVar -class CaseAggregateResourceType(ModelSimple): +class ModelLabFacetValuesType(ModelSimple): """ - JSON:API resource type for case aggregation requests. + The JSON:API type for a facet values resource. - :param value: If omitted defaults to "aggregate". Must be one of ["aggregate"]. + :param value: If omitted defaults to "facet_values". Must be one of ["facet_values"]. :type value: str """ allowed_values = { - "aggregate", + "facet_values", } - AGGREGATE: ClassVar["CaseAggregateResourceType"] + FACET_VALUES: ClassVar["ModelLabFacetValuesType"] @cached_property def openapi_types(_): @@ -32,4 +32,4 @@ def openapi_types(_): } -CaseAggregateResourceType.AGGREGATE = CaseAggregateResourceType("aggregate") +ModelLabFacetValuesType.FACET_VALUES = ModelLabFacetValuesType("facet_values") diff --git a/src/datadog_api_client/v2/model/model_lab_metric_stat_range.py b/src/datadog_api_client/v2/model/model_lab_metric_stat_range.py new file mode 100644 index 0000000000..098de2c051 --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_metric_stat_range.py @@ -0,0 +1,45 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, +) + + +class ModelLabMetricStatRange(ModelNormal): + @cached_property + def openapi_types(_): + return { + "max": (float,), + "min": (float,), + "stat": (str,), + } + + attribute_map = { + "max": "max", + "min": "min", + "stat": "stat", + } + + def __init__(self_, max: float, min: float, stat: str, **kwargs): + """ + The range of values for a specific metric statistic. + + :param max: The maximum value of the statistic. + :type max: float + + :param min: The minimum value of the statistic. + :type min: float + + :param stat: The metric statistic name. + :type stat: str + """ + super().__init__(kwargs) + + self_.max = max + self_.min = min + self_.stat = stat diff --git a/src/datadog_api_client/v2/model/model_lab_metric_summary.py b/src/datadog_api_client/v2/model/model_lab_metric_summary.py new file mode 100644 index 0000000000..7f7d204be8 --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_metric_summary.py @@ -0,0 +1,104 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + none_type, + unset, + UnsetType, +) + + +class ModelLabMetricSummary(ModelNormal): + @cached_property + def openapi_types(_): + return { + "count": (int,), + "first_step": (int, none_type), + "key": (str,), + "last_step": (int, none_type), + "latest": (float, none_type), + "max": (float, none_type), + "mean": (float, none_type), + "min": (float, none_type), + "stddev": (float, none_type), + } + + attribute_map = { + "count": "count", + "first_step": "first_step", + "key": "key", + "last_step": "last_step", + "latest": "latest", + "max": "max", + "mean": "mean", + "min": "min", + "stddev": "stddev", + } + + def __init__( + self_, + count: int, + key: str, + first_step: Union[int, none_type, UnsetType] = unset, + last_step: Union[int, none_type, UnsetType] = unset, + latest: Union[float, none_type, UnsetType] = unset, + max: Union[float, none_type, UnsetType] = unset, + mean: Union[float, none_type, UnsetType] = unset, + min: Union[float, none_type, UnsetType] = unset, + stddev: Union[float, none_type, UnsetType] = unset, + **kwargs, + ): + """ + Summary statistics for a metric recorded during a Model Lab run. + + :param count: The total number of recorded values. + :type count: int + + :param first_step: The first step at which the metric was recorded. + :type first_step: int, none_type, optional + + :param key: The metric name. + :type key: str + + :param last_step: The last step at which the metric was recorded. + :type last_step: int, none_type, optional + + :param latest: The most recently recorded value. + :type latest: float, none_type, optional + + :param max: The maximum recorded value. + :type max: float, none_type, optional + + :param mean: The mean of recorded values. + :type mean: float, none_type, optional + + :param min: The minimum recorded value. + :type min: float, none_type, optional + + :param stddev: The standard deviation of recorded values. + :type stddev: float, none_type, optional + """ + if first_step is not unset: + kwargs["first_step"] = first_step + if last_step is not unset: + kwargs["last_step"] = last_step + if latest is not unset: + kwargs["latest"] = latest + if max is not unset: + kwargs["max"] = max + if mean is not unset: + kwargs["mean"] = mean + if min is not unset: + kwargs["min"] = min + if stddev is not unset: + kwargs["stddev"] = stddev + super().__init__(kwargs) + + self_.count = count + self_.key = key diff --git a/src/datadog_api_client/v2/model/case_update_due_date_attributes.py b/src/datadog_api_client/v2/model/model_lab_numeric_range.py similarity index 54% rename from src/datadog_api_client/v2/model/case_update_due_date_attributes.py rename to src/datadog_api_client/v2/model/model_lab_numeric_range.py index dd88a87542..d425822f18 100644 --- a/src/datadog_api_client/v2/model/case_update_due_date_attributes.py +++ b/src/datadog_api_client/v2/model/model_lab_numeric_range.py @@ -10,24 +10,30 @@ ) -class CaseUpdateDueDateAttributes(ModelNormal): +class ModelLabNumericRange(ModelNormal): @cached_property def openapi_types(_): return { - "due_date": (str,), + "max": (float,), + "min": (float,), } attribute_map = { - "due_date": "due_date", + "max": "max", + "min": "min", } - def __init__(self_, due_date: str, **kwargs): + def __init__(self_, max: float, min: float, **kwargs): """ - Attributes for setting or clearing a case's due date. + The numeric range of values for a facet. - :param due_date: The target resolution date for the case, in ``YYYY-MM-DD`` format. Set to ``null`` to clear the due date. - :type due_date: str + :param max: The maximum value. + :type max: float + + :param min: The minimum value. + :type min: float """ super().__init__(kwargs) - self_.due_date = due_date + self_.max = max + self_.min = min diff --git a/src/datadog_api_client/v2/model/case_type_update_request.py b/src/datadog_api_client/v2/model/model_lab_page_meta.py similarity index 51% rename from src/datadog_api_client/v2/model/case_type_update_request.py rename to src/datadog_api_client/v2/model/model_lab_page_meta.py index 801e88078b..bb44a2c9b0 100644 --- a/src/datadog_api_client/v2/model/case_type_update_request.py +++ b/src/datadog_api_client/v2/model/model_lab_page_meta.py @@ -12,29 +12,29 @@ if TYPE_CHECKING: - from datadog_api_client.v2.model.case_type_update import CaseTypeUpdate + from datadog_api_client.v2.model.model_lab_page_meta_page import ModelLabPageMetaPage -class CaseTypeUpdateRequest(ModelNormal): +class ModelLabPageMeta(ModelNormal): @cached_property def openapi_types(_): - from datadog_api_client.v2.model.case_type_update import CaseTypeUpdate + from datadog_api_client.v2.model.model_lab_page_meta_page import ModelLabPageMetaPage return { - "data": (CaseTypeUpdate,), + "page": (ModelLabPageMetaPage,), } attribute_map = { - "data": "data", + "page": "page", } - def __init__(self_, data: CaseTypeUpdate, **kwargs): + def __init__(self_, page: ModelLabPageMetaPage, **kwargs): """ - Request payload for updating a case type. + Pagination metadata for a list response. - :param data: Data object for updating a case type. - :type data: CaseTypeUpdate + :param page: Pagination details for a list response. + :type page: ModelLabPageMetaPage """ super().__init__(kwargs) - self_.data = data + self_.page = page diff --git a/src/datadog_api_client/v2/model/model_lab_page_meta_page.py b/src/datadog_api_client/v2/model/model_lab_page_meta_page.py new file mode 100644 index 0000000000..e390ab0f98 --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_page_meta_page.py @@ -0,0 +1,95 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + none_type, + unset, + UnsetType, +) + + +class ModelLabPageMetaPage(ModelNormal): + @cached_property + def openapi_types(_): + return { + "first_number": (int,), + "last_number": (int,), + "next_number": (int, none_type), + "number": (int,), + "prev_number": (int, none_type), + "size": (int,), + "total": (int,), + "type": (str,), + } + + attribute_map = { + "first_number": "first_number", + "last_number": "last_number", + "next_number": "next_number", + "number": "number", + "prev_number": "prev_number", + "size": "size", + "total": "total", + "type": "type", + } + + def __init__( + self_, + number: int, + size: int, + total: int, + first_number: Union[int, UnsetType] = unset, + last_number: Union[int, UnsetType] = unset, + next_number: Union[int, none_type, UnsetType] = unset, + prev_number: Union[int, none_type, UnsetType] = unset, + type: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + Pagination details for a list response. + + :param first_number: The first page number. + :type first_number: int, optional + + :param last_number: The last page number. + :type last_number: int, optional + + :param next_number: The next page number. + :type next_number: int, none_type, optional + + :param number: The current page number. + :type number: int + + :param prev_number: The previous page number. + :type prev_number: int, none_type, optional + + :param size: The number of items per page. + :type size: int + + :param total: The total number of items. + :type total: int + + :param type: The pagination type. + :type type: str, optional + """ + if first_number is not unset: + kwargs["first_number"] = first_number + if last_number is not unset: + kwargs["last_number"] = last_number + if next_number is not unset: + kwargs["next_number"] = next_number + if prev_number is not unset: + kwargs["prev_number"] = prev_number + if type is not unset: + kwargs["type"] = type + super().__init__(kwargs) + + self_.number = number + self_.size = size + self_.total = total diff --git a/src/datadog_api_client/v2/model/model_lab_pagination_links.py b/src/datadog_api_client/v2/model/model_lab_pagination_links.py new file mode 100644 index 0000000000..85ad1f5c32 --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_pagination_links.py @@ -0,0 +1,73 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + none_type, + unset, + UnsetType, +) + + +class ModelLabPaginationLinks(ModelNormal): + @cached_property + def openapi_types(_): + return { + "first": (str,), + "last": (str,), + "next": (str, none_type), + "prev": (str, none_type), + "self": (str,), + } + + attribute_map = { + "first": "first", + "last": "last", + "next": "next", + "prev": "prev", + "self": "self", + } + + def __init__( + self_, + first: Union[str, UnsetType] = unset, + last: Union[str, UnsetType] = unset, + next: Union[str, none_type, UnsetType] = unset, + prev: Union[str, none_type, UnsetType] = unset, + self: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + Pagination links for navigating list responses. + + :param first: Link to the first page. + :type first: str, optional + + :param last: Link to the last page. + :type last: str, optional + + :param next: Link to the next page. + :type next: str, none_type, optional + + :param prev: Link to the previous page. + :type prev: str, none_type, optional + + :param self: Link to the current page. + :type self: str, optional + """ + if first is not unset: + kwargs["first"] = first + if last is not unset: + kwargs["last"] = last + if next is not unset: + kwargs["next"] = next + if prev is not unset: + kwargs["prev"] = prev + if self is not unset: + kwargs["self"] = self + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_links_response.py b/src/datadog_api_client/v2/model/model_lab_project_artifacts_attributes.py similarity index 53% rename from src/datadog_api_client/v2/model/case_links_response.py rename to src/datadog_api_client/v2/model/model_lab_project_artifacts_attributes.py index 778aea2c08..dff42bdf6f 100644 --- a/src/datadog_api_client/v2/model/case_links_response.py +++ b/src/datadog_api_client/v2/model/model_lab_project_artifacts_attributes.py @@ -12,29 +12,29 @@ if TYPE_CHECKING: - from datadog_api_client.v2.model.case_link import CaseLink + from datadog_api_client.v2.model.model_lab_artifact_info import ModelLabArtifactInfo -class CaseLinksResponse(ModelNormal): +class ModelLabProjectArtifactsAttributes(ModelNormal): @cached_property def openapi_types(_): - from datadog_api_client.v2.model.case_link import CaseLink + from datadog_api_client.v2.model.model_lab_artifact_info import ModelLabArtifactInfo return { - "data": ([CaseLink],), + "files": ([ModelLabArtifactInfo],), } attribute_map = { - "data": "data", + "files": "files", } - def __init__(self_, data: List[CaseLink], **kwargs): + def __init__(self_, files: List[ModelLabArtifactInfo], **kwargs): """ - Response containing a list of case links. + Artifact listing for a Model Lab project. - :param data: A list of case links. - :type data: [CaseLink] + :param files: The list of artifact files associated with the project. + :type files: [ModelLabArtifactInfo] """ super().__init__(kwargs) - self_.data = data + self_.files = files diff --git a/src/datadog_api_client/v2/model/model_lab_project_artifacts_data.py b/src/datadog_api_client/v2/model/model_lab_project_artifacts_data.py new file mode 100644 index 0000000000..39ed214f42 --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_project_artifacts_data.py @@ -0,0 +1,58 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.model_lab_project_artifacts_attributes import ModelLabProjectArtifactsAttributes + from datadog_api_client.v2.model.model_lab_project_artifacts_type import ModelLabProjectArtifactsType + + +class ModelLabProjectArtifactsData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.model_lab_project_artifacts_attributes import ( + ModelLabProjectArtifactsAttributes, + ) + from datadog_api_client.v2.model.model_lab_project_artifacts_type import ModelLabProjectArtifactsType + + return { + "attributes": (ModelLabProjectArtifactsAttributes,), + "id": (str,), + "type": (ModelLabProjectArtifactsType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, attributes: ModelLabProjectArtifactsAttributes, id: str, type: ModelLabProjectArtifactsType, **kwargs + ): + """ + A project artifacts JSON:API resource object. + + :param attributes: Artifact listing for a Model Lab project. + :type attributes: ModelLabProjectArtifactsAttributes + + :param id: The unique identifier of the project artifacts resource. + :type id: str + + :param type: The JSON:API type for a project artifacts resource. + :type type: ModelLabProjectArtifactsType + """ + super().__init__(kwargs) + + self_.attributes = attributes + self_.id = id + self_.type = type diff --git a/src/datadog_api_client/v2/model/case_insights_request.py b/src/datadog_api_client/v2/model/model_lab_project_artifacts_response.py similarity index 51% rename from src/datadog_api_client/v2/model/case_insights_request.py rename to src/datadog_api_client/v2/model/model_lab_project_artifacts_response.py index 62271457ae..ca30cb210a 100644 --- a/src/datadog_api_client/v2/model/case_insights_request.py +++ b/src/datadog_api_client/v2/model/model_lab_project_artifacts_response.py @@ -12,28 +12,28 @@ if TYPE_CHECKING: - from datadog_api_client.v2.model.case_insights_data import CaseInsightsData + from datadog_api_client.v2.model.model_lab_project_artifacts_data import ModelLabProjectArtifactsData -class CaseInsightsRequest(ModelNormal): +class ModelLabProjectArtifactsResponse(ModelNormal): @cached_property def openapi_types(_): - from datadog_api_client.v2.model.case_insights_data import CaseInsightsData + from datadog_api_client.v2.model.model_lab_project_artifacts_data import ModelLabProjectArtifactsData return { - "data": (CaseInsightsData,), + "data": (ModelLabProjectArtifactsData,), } attribute_map = { "data": "data", } - def __init__(self_, data: CaseInsightsData, **kwargs): + def __init__(self_, data: ModelLabProjectArtifactsData, **kwargs): """ - Request payload for adding or removing case insights. + Response containing the artifact listing for a Model Lab project. - :param data: Data object containing the insights to add or remove. - :type data: CaseInsightsData + :param data: A project artifacts JSON:API resource object. + :type data: ModelLabProjectArtifactsData """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/model_lab_project_artifacts_type.py b/src/datadog_api_client/v2/model/model_lab_project_artifacts_type.py new file mode 100644 index 0000000000..ab605e0575 --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_project_artifacts_type.py @@ -0,0 +1,35 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + + +from datadog_api_client.model_utils import ( + ModelSimple, + cached_property, +) + +from typing import ClassVar + + +class ModelLabProjectArtifactsType(ModelSimple): + """ + The JSON:API type for a project artifacts resource. + + :param value: If omitted defaults to "project_files". Must be one of ["project_files"]. + :type value: str + """ + + allowed_values = { + "project_files", + } + PROJECT_FILES: ClassVar["ModelLabProjectArtifactsType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +ModelLabProjectArtifactsType.PROJECT_FILES = ModelLabProjectArtifactsType("project_files") diff --git a/src/datadog_api_client/v2/model/model_lab_project_attributes.py b/src/datadog_api_client/v2/model/model_lab_project_attributes.py new file mode 100644 index 0000000000..d00d0a58b0 --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_project_attributes.py @@ -0,0 +1,114 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import List, Union, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + datetime, + none_type, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.model_lab_tag import ModelLabTag + + +class ModelLabProjectAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.model_lab_tag import ModelLabTag + + return { + "artifact_storage_location": (str,), + "created_at": (datetime,), + "deleted_at": (datetime, none_type), + "description": (str,), + "external_url": (str, none_type), + "is_starred": (bool,), + "name": (str,), + "owner_id": (str, none_type), + "tags": ([ModelLabTag],), + "updated_at": (datetime,), + } + + attribute_map = { + "artifact_storage_location": "artifact_storage_location", + "created_at": "created_at", + "deleted_at": "deleted_at", + "description": "description", + "external_url": "external_url", + "is_starred": "is_starred", + "name": "name", + "owner_id": "owner_id", + "tags": "tags", + "updated_at": "updated_at", + } + + def __init__( + self_, + artifact_storage_location: str, + created_at: datetime, + description: str, + is_starred: bool, + name: str, + tags: List[ModelLabTag], + updated_at: datetime, + deleted_at: Union[datetime, none_type, UnsetType] = unset, + external_url: Union[str, none_type, UnsetType] = unset, + owner_id: Union[str, none_type, UnsetType] = unset, + **kwargs, + ): + """ + Attributes of a Model Lab project. + + :param artifact_storage_location: The storage location for project artifacts. + :type artifact_storage_location: str + + :param created_at: The date and time the project was created. + :type created_at: datetime + + :param deleted_at: The date and time the project was soft-deleted. + :type deleted_at: datetime, none_type, optional + + :param description: A description of the project. + :type description: str + + :param external_url: An optional external URL associated with the project. + :type external_url: str, none_type, optional + + :param is_starred: Whether the project is starred by the current user. + :type is_starred: bool + + :param name: The name of the project. + :type name: str + + :param owner_id: The UUID of the project owner. + :type owner_id: str, none_type, optional + + :param tags: The list of tags associated with the project. + :type tags: [ModelLabTag] + + :param updated_at: The date and time the project was last updated. + :type updated_at: datetime + """ + if deleted_at is not unset: + kwargs["deleted_at"] = deleted_at + if external_url is not unset: + kwargs["external_url"] = external_url + if owner_id is not unset: + kwargs["owner_id"] = owner_id + super().__init__(kwargs) + + self_.artifact_storage_location = artifact_storage_location + self_.created_at = created_at + self_.description = description + self_.is_starred = is_starred + self_.name = name + self_.tags = tags + self_.updated_at = updated_at diff --git a/src/datadog_api_client/v2/model/model_lab_project_data.py b/src/datadog_api_client/v2/model/model_lab_project_data.py new file mode 100644 index 0000000000..34dc9c3a7b --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_project_data.py @@ -0,0 +1,54 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.model_lab_project_attributes import ModelLabProjectAttributes + from datadog_api_client.v2.model.model_lab_project_type import ModelLabProjectType + + +class ModelLabProjectData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.model_lab_project_attributes import ModelLabProjectAttributes + from datadog_api_client.v2.model.model_lab_project_type import ModelLabProjectType + + return { + "attributes": (ModelLabProjectAttributes,), + "id": (str,), + "type": (ModelLabProjectType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__(self_, attributes: ModelLabProjectAttributes, id: str, type: ModelLabProjectType, **kwargs): + """ + A Model Lab project JSON:API resource object. + + :param attributes: Attributes of a Model Lab project. + :type attributes: ModelLabProjectAttributes + + :param id: The unique identifier of the project. + :type id: str + + :param type: The JSON:API type for a Model Lab project resource. + :type type: ModelLabProjectType + """ + super().__init__(kwargs) + + self_.attributes = attributes + self_.id = id + self_.type = type diff --git a/src/datadog_api_client/v2/model/case_bulk_resource_type.py b/src/datadog_api_client/v2/model/model_lab_project_facet_type.py similarity index 65% rename from src/datadog_api_client/v2/model/case_bulk_resource_type.py rename to src/datadog_api_client/v2/model/model_lab_project_facet_type.py index 9df16a731b..50426fbf0d 100644 --- a/src/datadog_api_client/v2/model/case_bulk_resource_type.py +++ b/src/datadog_api_client/v2/model/model_lab_project_facet_type.py @@ -12,18 +12,18 @@ from typing import ClassVar -class CaseBulkResourceType(ModelSimple): +class ModelLabProjectFacetType(ModelSimple): """ - JSON:API resource type for bulk case operations. + The type of facet for filtering Model Lab projects. - :param value: If omitted defaults to "bulk". Must be one of ["bulk"]. + :param value: If omitted defaults to "tag". Must be one of ["tag"]. :type value: str """ allowed_values = { - "bulk", + "tag", } - BULK: ClassVar["CaseBulkResourceType"] + TAG: ClassVar["ModelLabProjectFacetType"] @cached_property def openapi_types(_): @@ -32,4 +32,4 @@ def openapi_types(_): } -CaseBulkResourceType.BULK = CaseBulkResourceType("bulk") +ModelLabProjectFacetType.TAG = ModelLabProjectFacetType("tag") diff --git a/src/datadog_api_client/v2/model/case_link_response.py b/src/datadog_api_client/v2/model/model_lab_project_response.py similarity index 55% rename from src/datadog_api_client/v2/model/case_link_response.py rename to src/datadog_api_client/v2/model/model_lab_project_response.py index 7c1cebac5a..a62a131af5 100644 --- a/src/datadog_api_client/v2/model/case_link_response.py +++ b/src/datadog_api_client/v2/model/model_lab_project_response.py @@ -12,28 +12,28 @@ if TYPE_CHECKING: - from datadog_api_client.v2.model.case_link import CaseLink + from datadog_api_client.v2.model.model_lab_project_data import ModelLabProjectData -class CaseLinkResponse(ModelNormal): +class ModelLabProjectResponse(ModelNormal): @cached_property def openapi_types(_): - from datadog_api_client.v2.model.case_link import CaseLink + from datadog_api_client.v2.model.model_lab_project_data import ModelLabProjectData return { - "data": (CaseLink,), + "data": (ModelLabProjectData,), } attribute_map = { "data": "data", } - def __init__(self_, data: CaseLink, **kwargs): + def __init__(self_, data: ModelLabProjectData, **kwargs): """ - Response containing a single case link. + Response containing a single Model Lab project. - :param data: A directional link representing a relationship between two entities. At least one entity must be a case. - :type data: CaseLink + :param data: A Model Lab project JSON:API resource object. + :type data: ModelLabProjectData """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_link_resource_type.py b/src/datadog_api_client/v2/model/model_lab_project_type.py similarity index 64% rename from src/datadog_api_client/v2/model/case_link_resource_type.py rename to src/datadog_api_client/v2/model/model_lab_project_type.py index 3effcd542e..2b5c4dabee 100644 --- a/src/datadog_api_client/v2/model/case_link_resource_type.py +++ b/src/datadog_api_client/v2/model/model_lab_project_type.py @@ -12,18 +12,18 @@ from typing import ClassVar -class CaseLinkResourceType(ModelSimple): +class ModelLabProjectType(ModelSimple): """ - JSON:API resource type for case links. + The JSON:API type for a Model Lab project resource. - :param value: If omitted defaults to "link". Must be one of ["link"]. + :param value: If omitted defaults to "projects". Must be one of ["projects"]. :type value: str """ allowed_values = { - "link", + "projects", } - LINK: ClassVar["CaseLinkResourceType"] + PROJECTS: ClassVar["ModelLabProjectType"] @cached_property def openapi_types(_): @@ -32,4 +32,4 @@ def openapi_types(_): } -CaseLinkResourceType.LINK = CaseLinkResourceType("link") +ModelLabProjectType.PROJECTS = ModelLabProjectType("projects") diff --git a/src/datadog_api_client/v2/model/model_lab_projects_response.py b/src/datadog_api_client/v2/model/model_lab_projects_response.py new file mode 100644 index 0000000000..64f7e93551 --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_projects_response.py @@ -0,0 +1,65 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import List, Union, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.model_lab_project_data import ModelLabProjectData + from datadog_api_client.v2.model.model_lab_pagination_links import ModelLabPaginationLinks + from datadog_api_client.v2.model.model_lab_page_meta import ModelLabPageMeta + + +class ModelLabProjectsResponse(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.model_lab_project_data import ModelLabProjectData + from datadog_api_client.v2.model.model_lab_pagination_links import ModelLabPaginationLinks + from datadog_api_client.v2.model.model_lab_page_meta import ModelLabPageMeta + + return { + "data": ([ModelLabProjectData],), + "links": (ModelLabPaginationLinks,), + "meta": (ModelLabPageMeta,), + } + + attribute_map = { + "data": "data", + "links": "links", + "meta": "meta", + } + + def __init__( + self_, + data: List[ModelLabProjectData], + meta: ModelLabPageMeta, + links: Union[ModelLabPaginationLinks, UnsetType] = unset, + **kwargs, + ): + """ + Response containing a list of Model Lab projects with pagination metadata. + + :param data: The list of projects. + :type data: [ModelLabProjectData] + + :param links: Pagination links for navigating list responses. + :type links: ModelLabPaginationLinks, optional + + :param meta: Pagination metadata for a list response. + :type meta: ModelLabPageMeta + """ + if links is not unset: + kwargs["links"] = links + super().__init__(kwargs) + + self_.data = data + self_.meta = meta diff --git a/src/datadog_api_client/v2/model/model_lab_run_artifacts_attributes.py b/src/datadog_api_client/v2/model/model_lab_run_artifacts_attributes.py new file mode 100644 index 0000000000..a23020dacb --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_run_artifacts_attributes.py @@ -0,0 +1,46 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import List, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.model_lab_artifact_object_info import ModelLabArtifactObjectInfo + + +class ModelLabRunArtifactsAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.model_lab_artifact_object_info import ModelLabArtifactObjectInfo + + return { + "files": ([ModelLabArtifactObjectInfo],), + "path_in_project": (str,), + } + + attribute_map = { + "files": "files", + "path_in_project": "path_in_project", + } + + def __init__(self_, files: List[ModelLabArtifactObjectInfo], path_in_project: str, **kwargs): + """ + Artifact listing for a Model Lab run. + + :param files: The list of artifact files and directories. + :type files: [ModelLabArtifactObjectInfo] + + :param path_in_project: The path of the run's artifacts relative to the project's artifact root. + :type path_in_project: str + """ + super().__init__(kwargs) + + self_.files = files + self_.path_in_project = path_in_project diff --git a/src/datadog_api_client/v2/model/model_lab_run_artifacts_data.py b/src/datadog_api_client/v2/model/model_lab_run_artifacts_data.py new file mode 100644 index 0000000000..23969f5b4e --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_run_artifacts_data.py @@ -0,0 +1,54 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.model_lab_run_artifacts_attributes import ModelLabRunArtifactsAttributes + from datadog_api_client.v2.model.model_lab_run_artifacts_type import ModelLabRunArtifactsType + + +class ModelLabRunArtifactsData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.model_lab_run_artifacts_attributes import ModelLabRunArtifactsAttributes + from datadog_api_client.v2.model.model_lab_run_artifacts_type import ModelLabRunArtifactsType + + return { + "attributes": (ModelLabRunArtifactsAttributes,), + "id": (str,), + "type": (ModelLabRunArtifactsType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__(self_, attributes: ModelLabRunArtifactsAttributes, id: str, type: ModelLabRunArtifactsType, **kwargs): + """ + A run artifacts JSON:API resource object. + + :param attributes: Artifact listing for a Model Lab run. + :type attributes: ModelLabRunArtifactsAttributes + + :param id: The unique identifier of the artifacts resource. + :type id: str + + :param type: The JSON:API type for a run artifacts resource. + :type type: ModelLabRunArtifactsType + """ + super().__init__(kwargs) + + self_.attributes = attributes + self_.id = id + self_.type = type diff --git a/src/datadog_api_client/v2/model/automation_rule_create_request.py b/src/datadog_api_client/v2/model/model_lab_run_artifacts_response.py similarity index 53% rename from src/datadog_api_client/v2/model/automation_rule_create_request.py rename to src/datadog_api_client/v2/model/model_lab_run_artifacts_response.py index 3b3a968b1c..d64b590e73 100644 --- a/src/datadog_api_client/v2/model/automation_rule_create_request.py +++ b/src/datadog_api_client/v2/model/model_lab_run_artifacts_response.py @@ -12,28 +12,28 @@ if TYPE_CHECKING: - from datadog_api_client.v2.model.automation_rule_create import AutomationRuleCreate + from datadog_api_client.v2.model.model_lab_run_artifacts_data import ModelLabRunArtifactsData -class AutomationRuleCreateRequest(ModelNormal): +class ModelLabRunArtifactsResponse(ModelNormal): @cached_property def openapi_types(_): - from datadog_api_client.v2.model.automation_rule_create import AutomationRuleCreate + from datadog_api_client.v2.model.model_lab_run_artifacts_data import ModelLabRunArtifactsData return { - "data": (AutomationRuleCreate,), + "data": (ModelLabRunArtifactsData,), } attribute_map = { "data": "data", } - def __init__(self_, data: AutomationRuleCreate, **kwargs): + def __init__(self_, data: ModelLabRunArtifactsData, **kwargs): """ - Request payload for creating an automation rule. + Response containing the artifact listing for a Model Lab run. - :param data: Data object for creating an automation rule. - :type data: AutomationRuleCreate + :param data: A run artifacts JSON:API resource object. + :type data: ModelLabRunArtifactsData """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/case_automation_rule_resource_type.py b/src/datadog_api_client/v2/model/model_lab_run_artifacts_type.py similarity index 62% rename from src/datadog_api_client/v2/model/case_automation_rule_resource_type.py rename to src/datadog_api_client/v2/model/model_lab_run_artifacts_type.py index fce001ce52..d9cb32eb87 100644 --- a/src/datadog_api_client/v2/model/case_automation_rule_resource_type.py +++ b/src/datadog_api_client/v2/model/model_lab_run_artifacts_type.py @@ -12,18 +12,18 @@ from typing import ClassVar -class CaseAutomationRuleResourceType(ModelSimple): +class ModelLabRunArtifactsType(ModelSimple): """ - JSON:API resource type for case automation rules. + The JSON:API type for a run artifacts resource. - :param value: If omitted defaults to "rule". Must be one of ["rule"]. + :param value: If omitted defaults to "artifacts". Must be one of ["artifacts"]. :type value: str """ allowed_values = { - "rule", + "artifacts", } - RULE: ClassVar["CaseAutomationRuleResourceType"] + ARTIFACTS: ClassVar["ModelLabRunArtifactsType"] @cached_property def openapi_types(_): @@ -32,4 +32,4 @@ def openapi_types(_): } -CaseAutomationRuleResourceType.RULE = CaseAutomationRuleResourceType("rule") +ModelLabRunArtifactsType.ARTIFACTS = ModelLabRunArtifactsType("artifacts") diff --git a/src/datadog_api_client/v2/model/model_lab_run_attributes.py b/src/datadog_api_client/v2/model/model_lab_run_attributes.py new file mode 100644 index 0000000000..7810dd563f --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_run_attributes.py @@ -0,0 +1,185 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import List, Union, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + datetime, + none_type, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.model_lab_metric_summary import ModelLabMetricSummary + from datadog_api_client.v2.model.model_lab_run_param import ModelLabRunParam + from datadog_api_client.v2.model.model_lab_run_status import ModelLabRunStatus + from datadog_api_client.v2.model.model_lab_tag import ModelLabTag + + +class ModelLabRunAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.model_lab_metric_summary import ModelLabMetricSummary + from datadog_api_client.v2.model.model_lab_run_param import ModelLabRunParam + from datadog_api_client.v2.model.model_lab_run_status import ModelLabRunStatus + from datadog_api_client.v2.model.model_lab_tag import ModelLabTag + + return { + "completed_at": (datetime, none_type), + "created_at": (datetime,), + "deleted_at": (datetime, none_type), + "descendant_match": (bool,), + "description": (str,), + "duration": (float, none_type), + "external_url": (str, none_type), + "has_children": (bool,), + "is_pinned": (bool,), + "metric_summaries": ([ModelLabMetricSummary],), + "mlflow_artifact_location": (str,), + "name": (str,), + "owner_id": (str, none_type), + "params": ([ModelLabRunParam], none_type), + "project_id": (int,), + "started_at": (datetime,), + "status": (ModelLabRunStatus,), + "tags": ([ModelLabTag],), + "updated_at": (datetime,), + } + + attribute_map = { + "completed_at": "completed_at", + "created_at": "created_at", + "deleted_at": "deleted_at", + "descendant_match": "descendant_match", + "description": "description", + "duration": "duration", + "external_url": "external_url", + "has_children": "has_children", + "is_pinned": "is_pinned", + "metric_summaries": "metric_summaries", + "mlflow_artifact_location": "mlflow_artifact_location", + "name": "name", + "owner_id": "owner_id", + "params": "params", + "project_id": "project_id", + "started_at": "started_at", + "status": "status", + "tags": "tags", + "updated_at": "updated_at", + } + + def __init__( + self_, + created_at: datetime, + descendant_match: bool, + description: str, + has_children: bool, + is_pinned: bool, + metric_summaries: List[ModelLabMetricSummary], + mlflow_artifact_location: str, + name: str, + params: Union[List[ModelLabRunParam], none_type], + project_id: int, + started_at: datetime, + status: ModelLabRunStatus, + tags: List[ModelLabTag], + updated_at: datetime, + completed_at: Union[datetime, none_type, UnsetType] = unset, + deleted_at: Union[datetime, none_type, UnsetType] = unset, + duration: Union[float, none_type, UnsetType] = unset, + external_url: Union[str, none_type, UnsetType] = unset, + owner_id: Union[str, none_type, UnsetType] = unset, + **kwargs, + ): + """ + Attributes of a Model Lab run. + + :param completed_at: The date and time the run completed. + :type completed_at: datetime, none_type, optional + + :param created_at: The date and time the run was created. + :type created_at: datetime + + :param deleted_at: The date and time the run was soft-deleted. + :type deleted_at: datetime, none_type, optional + + :param descendant_match: Whether a descendant run matched the applied filters. + :type descendant_match: bool + + :param description: A description of the run. + :type description: str + + :param duration: The duration of the run in seconds. + :type duration: float, none_type, optional + + :param external_url: An optional external URL associated with the run. + :type external_url: str, none_type, optional + + :param has_children: Whether the run has child runs. + :type has_children: bool + + :param is_pinned: Whether the run is pinned by the current user. + :type is_pinned: bool + + :param metric_summaries: Summary statistics for metrics recorded during the run. + :type metric_summaries: [ModelLabMetricSummary] + + :param mlflow_artifact_location: The MLflow artifact storage location for this run. + :type mlflow_artifact_location: str + + :param name: The name of the run. + :type name: str + + :param owner_id: The UUID of the run owner. + :type owner_id: str, none_type, optional + + :param params: The list of parameters used for the run. + :type params: [ModelLabRunParam], none_type + + :param project_id: The ID of the project this run belongs to. + :type project_id: int + + :param started_at: The date and time the run started. + :type started_at: datetime + + :param status: The status of a Model Lab run. + :type status: ModelLabRunStatus + + :param tags: The list of tags associated with the run. + :type tags: [ModelLabTag] + + :param updated_at: The date and time the run was last updated. + :type updated_at: datetime + """ + if completed_at is not unset: + kwargs["completed_at"] = completed_at + if deleted_at is not unset: + kwargs["deleted_at"] = deleted_at + if duration is not unset: + kwargs["duration"] = duration + if external_url is not unset: + kwargs["external_url"] = external_url + if owner_id is not unset: + kwargs["owner_id"] = owner_id + super().__init__(kwargs) + + self_.created_at = created_at + self_.descendant_match = descendant_match + self_.description = description + self_.has_children = has_children + self_.is_pinned = is_pinned + self_.metric_summaries = metric_summaries + self_.mlflow_artifact_location = mlflow_artifact_location + self_.name = name + self_.params = params + self_.project_id = project_id + self_.started_at = started_at + self_.status = status + self_.tags = tags + self_.updated_at = updated_at diff --git a/src/datadog_api_client/v2/model/model_lab_run_data.py b/src/datadog_api_client/v2/model/model_lab_run_data.py new file mode 100644 index 0000000000..a8f08ff9fc --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_run_data.py @@ -0,0 +1,54 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.model_lab_run_attributes import ModelLabRunAttributes + from datadog_api_client.v2.model.model_lab_run_type import ModelLabRunType + + +class ModelLabRunData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.model_lab_run_attributes import ModelLabRunAttributes + from datadog_api_client.v2.model.model_lab_run_type import ModelLabRunType + + return { + "attributes": (ModelLabRunAttributes,), + "id": (str,), + "type": (ModelLabRunType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__(self_, attributes: ModelLabRunAttributes, id: str, type: ModelLabRunType, **kwargs): + """ + A Model Lab run JSON:API resource object. + + :param attributes: Attributes of a Model Lab run. + :type attributes: ModelLabRunAttributes + + :param id: The unique identifier of the run. + :type id: str + + :param type: The JSON:API type for a Model Lab run resource. + :type type: ModelLabRunType + """ + super().__init__(kwargs) + + self_.attributes = attributes + self_.id = id + self_.type = type diff --git a/src/datadog_api_client/v2/model/case_count_group_value.py b/src/datadog_api_client/v2/model/model_lab_run_param.py similarity index 60% rename from src/datadog_api_client/v2/model/case_count_group_value.py rename to src/datadog_api_client/v2/model/model_lab_run_param.py index c6dd66dc5a..ecca2c3a00 100644 --- a/src/datadog_api_client/v2/model/case_count_group_value.py +++ b/src/datadog_api_client/v2/model/model_lab_run_param.py @@ -10,30 +10,30 @@ ) -class CaseCountGroupValue(ModelNormal): +class ModelLabRunParam(ModelNormal): @cached_property def openapi_types(_): return { - "count": (int,), + "key": (str,), "value": (str,), } attribute_map = { - "count": "count", + "key": "key", "value": "value", } - def __init__(self_, count: int, value: str, **kwargs): + def __init__(self_, key: str, value: str, **kwargs): """ - A single value within a count group, representing the number of cases with that specific field value. + A key-value parameter for a Model Lab run. - :param count: Count of cases for this value. - :type count: int + :param key: The parameter key. + :type key: str - :param value: The group value. + :param value: The parameter value. :type value: str """ super().__init__(kwargs) - self_.count = count + self_.key = key self_.value = value diff --git a/src/datadog_api_client/v2/model/case_view_update_request.py b/src/datadog_api_client/v2/model/model_lab_run_response.py similarity index 58% rename from src/datadog_api_client/v2/model/case_view_update_request.py rename to src/datadog_api_client/v2/model/model_lab_run_response.py index fa19ff449b..ef45e85afa 100644 --- a/src/datadog_api_client/v2/model/case_view_update_request.py +++ b/src/datadog_api_client/v2/model/model_lab_run_response.py @@ -12,28 +12,28 @@ if TYPE_CHECKING: - from datadog_api_client.v2.model.case_view_update import CaseViewUpdate + from datadog_api_client.v2.model.model_lab_run_data import ModelLabRunData -class CaseViewUpdateRequest(ModelNormal): +class ModelLabRunResponse(ModelNormal): @cached_property def openapi_types(_): - from datadog_api_client.v2.model.case_view_update import CaseViewUpdate + from datadog_api_client.v2.model.model_lab_run_data import ModelLabRunData return { - "data": (CaseViewUpdate,), + "data": (ModelLabRunData,), } attribute_map = { "data": "data", } - def __init__(self_, data: CaseViewUpdate, **kwargs): + def __init__(self_, data: ModelLabRunData, **kwargs): """ - Request payload for updating a case view. + Response containing a single Model Lab run. - :param data: Data object for updating a case view. - :type data: CaseViewUpdate + :param data: A Model Lab run JSON:API resource object. + :type data: ModelLabRunData """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/model_lab_run_status.py b/src/datadog_api_client/v2/model/model_lab_run_status.py new file mode 100644 index 0000000000..305541d51a --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_run_status.py @@ -0,0 +1,53 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + + +from datadog_api_client.model_utils import ( + ModelSimple, + cached_property, +) + +from typing import ClassVar + + +class ModelLabRunStatus(ModelSimple): + """ + The status of a Model Lab run. + + :param value: Must be one of ["pending", "running", "completed", "failed", "killed", "unresponsive", "paused"]. + :type value: str + """ + + allowed_values = { + "pending", + "running", + "completed", + "failed", + "killed", + "unresponsive", + "paused", + } + PENDING: ClassVar["ModelLabRunStatus"] + RUNNING: ClassVar["ModelLabRunStatus"] + COMPLETED: ClassVar["ModelLabRunStatus"] + FAILED: ClassVar["ModelLabRunStatus"] + KILLED: ClassVar["ModelLabRunStatus"] + UNRESPONSIVE: ClassVar["ModelLabRunStatus"] + PAUSED: ClassVar["ModelLabRunStatus"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +ModelLabRunStatus.PENDING = ModelLabRunStatus("pending") +ModelLabRunStatus.RUNNING = ModelLabRunStatus("running") +ModelLabRunStatus.COMPLETED = ModelLabRunStatus("completed") +ModelLabRunStatus.FAILED = ModelLabRunStatus("failed") +ModelLabRunStatus.KILLED = ModelLabRunStatus("killed") +ModelLabRunStatus.UNRESPONSIVE = ModelLabRunStatus("unresponsive") +ModelLabRunStatus.PAUSED = ModelLabRunStatus("paused") diff --git a/src/datadog_api_client/v2/model/case_view_resource_type.py b/src/datadog_api_client/v2/model/model_lab_run_type.py similarity index 67% rename from src/datadog_api_client/v2/model/case_view_resource_type.py rename to src/datadog_api_client/v2/model/model_lab_run_type.py index 6a59151c39..029cf40e2a 100644 --- a/src/datadog_api_client/v2/model/case_view_resource_type.py +++ b/src/datadog_api_client/v2/model/model_lab_run_type.py @@ -12,18 +12,18 @@ from typing import ClassVar -class CaseViewResourceType(ModelSimple): +class ModelLabRunType(ModelSimple): """ - JSON:API resource type for case views. + The JSON:API type for a Model Lab run resource. - :param value: If omitted defaults to "view". Must be one of ["view"]. + :param value: If omitted defaults to "runs". Must be one of ["runs"]. :type value: str """ allowed_values = { - "view", + "runs", } - VIEW: ClassVar["CaseViewResourceType"] + RUNS: ClassVar["ModelLabRunType"] @cached_property def openapi_types(_): @@ -32,4 +32,4 @@ def openapi_types(_): } -CaseViewResourceType.VIEW = CaseViewResourceType("view") +ModelLabRunType.RUNS = ModelLabRunType("runs") diff --git a/src/datadog_api_client/v2/model/model_lab_runs_response.py b/src/datadog_api_client/v2/model/model_lab_runs_response.py new file mode 100644 index 0000000000..cd62e9bd07 --- /dev/null +++ b/src/datadog_api_client/v2/model/model_lab_runs_response.py @@ -0,0 +1,65 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import List, Union, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.model_lab_run_data import ModelLabRunData + from datadog_api_client.v2.model.model_lab_pagination_links import ModelLabPaginationLinks + from datadog_api_client.v2.model.model_lab_page_meta import ModelLabPageMeta + + +class ModelLabRunsResponse(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.model_lab_run_data import ModelLabRunData + from datadog_api_client.v2.model.model_lab_pagination_links import ModelLabPaginationLinks + from datadog_api_client.v2.model.model_lab_page_meta import ModelLabPageMeta + + return { + "data": ([ModelLabRunData],), + "links": (ModelLabPaginationLinks,), + "meta": (ModelLabPageMeta,), + } + + attribute_map = { + "data": "data", + "links": "links", + "meta": "meta", + } + + def __init__( + self_, + data: List[ModelLabRunData], + meta: ModelLabPageMeta, + links: Union[ModelLabPaginationLinks, UnsetType] = unset, + **kwargs, + ): + """ + Response containing a list of Model Lab runs with pagination metadata. + + :param data: The list of runs. + :type data: [ModelLabRunData] + + :param links: Pagination links for navigating list responses. + :type links: ModelLabPaginationLinks, optional + + :param meta: Pagination metadata for a list response. + :type meta: ModelLabPageMeta + """ + if links is not unset: + kwargs["links"] = links + super().__init__(kwargs) + + self_.data = data + self_.meta = meta diff --git a/src/datadog_api_client/v2/model/custom_attribute_select_option.py b/src/datadog_api_client/v2/model/model_lab_tag.py similarity index 67% rename from src/datadog_api_client/v2/model/custom_attribute_select_option.py rename to src/datadog_api_client/v2/model/model_lab_tag.py index e31d8f7e3c..1d7371c97e 100644 --- a/src/datadog_api_client/v2/model/custom_attribute_select_option.py +++ b/src/datadog_api_client/v2/model/model_lab_tag.py @@ -10,24 +10,30 @@ ) -class CustomAttributeSelectOption(ModelNormal): +class ModelLabTag(ModelNormal): @cached_property def openapi_types(_): return { + "key": (str,), "value": (str,), } attribute_map = { + "key": "key", "value": "value", } - def __init__(self_, value: str, **kwargs): + def __init__(self_, key: str, value: str, **kwargs): """ - A selectable option for a SELECT-type custom attribute. + A key-value tag attached to a resource. - :param value: Option value. + :param key: The tag key. + :type key: str + + :param value: The tag value. :type value: str """ super().__init__(kwargs) + self_.key = key self_.value = value diff --git a/src/datadog_api_client/v2/model/project_favorite.py b/src/datadog_api_client/v2/model/project_favorite.py deleted file mode 100644 index 0aa314f5de..0000000000 --- a/src/datadog_api_client/v2/model/project_favorite.py +++ /dev/null @@ -1,46 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.project_favorite_resource_type import ProjectFavoriteResourceType - - -class ProjectFavorite(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.project_favorite_resource_type import ProjectFavoriteResourceType - - return { - "id": (str,), - "type": (ProjectFavoriteResourceType,), - } - - attribute_map = { - "id": "id", - "type": "type", - } - - def __init__(self_, id: str, type: ProjectFavoriteResourceType, **kwargs): - """ - Represents a case project that the current user has bookmarked for quick access. Favorited projects appear prominently in the Case Management UI. - - :param id: The UUID of the favorited project. - :type id: str - - :param type: JSON:API resource type for project favorites. - :type type: ProjectFavoriteResourceType - """ - super().__init__(kwargs) - - self_.id = id - self_.type = type diff --git a/src/datadog_api_client/v2/model/project_favorite_resource_type.py b/src/datadog_api_client/v2/model/project_favorite_resource_type.py deleted file mode 100644 index a558d1c4fe..0000000000 --- a/src/datadog_api_client/v2/model/project_favorite_resource_type.py +++ /dev/null @@ -1,35 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - - -from datadog_api_client.model_utils import ( - ModelSimple, - cached_property, -) - -from typing import ClassVar - - -class ProjectFavoriteResourceType(ModelSimple): - """ - JSON:API resource type for project favorites. - - :param value: If omitted defaults to "project_favorite". Must be one of ["project_favorite"]. - :type value: str - """ - - allowed_values = { - "project_favorite", - } - PROJECT_FAVORITE: ClassVar["ProjectFavoriteResourceType"] - - @cached_property - def openapi_types(_): - return { - "value": (str,), - } - - -ProjectFavoriteResourceType.PROJECT_FAVORITE = ProjectFavoriteResourceType("project_favorite") diff --git a/src/datadog_api_client/v2/model/project_favorites_response.py b/src/datadog_api_client/v2/model/project_favorites_response.py deleted file mode 100644 index 3b4f228891..0000000000 --- a/src/datadog_api_client/v2/model/project_favorites_response.py +++ /dev/null @@ -1,40 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2019-Present Datadog, Inc. -from __future__ import annotations - -from typing import List, TYPE_CHECKING - -from datadog_api_client.model_utils import ( - ModelNormal, - cached_property, -) - - -if TYPE_CHECKING: - from datadog_api_client.v2.model.project_favorite import ProjectFavorite - - -class ProjectFavoritesResponse(ModelNormal): - @cached_property - def openapi_types(_): - from datadog_api_client.v2.model.project_favorite import ProjectFavorite - - return { - "data": ([ProjectFavorite],), - } - - attribute_map = { - "data": "data", - } - - def __init__(self_, data: List[ProjectFavorite], **kwargs): - """ - Response containing the list of projects the current user has favorited. - - :param data: List of project favorites. - :type data: [ProjectFavorite] - """ - super().__init__(kwargs) - - self_.data = data diff --git a/src/datadog_api_client/v2/model/timeline_cell.py b/src/datadog_api_client/v2/model/timeline_cell.py index e3781532e8..4b6a3ee955 100644 --- a/src/datadog_api_client/v2/model/timeline_cell.py +++ b/src/datadog_api_client/v2/model/timeline_cell.py @@ -63,12 +63,12 @@ def __init__( **kwargs, ): """ - Attributes of a timeline cell, representing a single event in a case's chronological activity log (for example, a comment, status change, or assignment update). + timeline cell - :param author: The author of the timeline cell. Currently only user authors are supported. + :param author: author of the timeline cell :type author: TimelineCellAuthor, optional - :param cell_content: The content payload of a timeline cell, varying by cell type. + :param cell_content: timeline cell content :type cell_content: TimelineCellContent, optional :param created_at: Timestamp of when the cell was created @@ -80,7 +80,7 @@ def __init__( :param modified_at: Timestamp of when the cell was last modified :type modified_at: datetime, optional - :param type: The type of content in the timeline cell. Currently only ``COMMENT`` is supported in this endpoint. + :param type: Timeline cell content type :type type: TimelineCellType, optional """ if author is not unset: diff --git a/src/datadog_api_client/v2/model/timeline_cell_author.py b/src/datadog_api_client/v2/model/timeline_cell_author.py index 48919da795..94b2a51cdc 100644 --- a/src/datadog_api_client/v2/model/timeline_cell_author.py +++ b/src/datadog_api_client/v2/model/timeline_cell_author.py @@ -13,12 +13,12 @@ class TimelineCellAuthor(ModelComposed): def __init__(self, **kwargs): """ - The author of the timeline cell. Currently only user authors are supported. + author of the timeline cell - :param content: Profile information for the user who authored the timeline cell. + :param content: user author content. :type content: TimelineCellAuthorUserContent, optional - :param type: The type of timeline cell author. Currently only `USER` is supported. + :param type: user author type. :type type: TimelineCellAuthorUserType, optional """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/timeline_cell_author_user.py b/src/datadog_api_client/v2/model/timeline_cell_author_user.py index 3c8857c695..1ad3902245 100644 --- a/src/datadog_api_client/v2/model/timeline_cell_author_user.py +++ b/src/datadog_api_client/v2/model/timeline_cell_author_user.py @@ -41,12 +41,12 @@ def __init__( **kwargs, ): """ - A user who authored a timeline cell. + timeline cell user author - :param content: Profile information for the user who authored the timeline cell. + :param content: user author content. :type content: TimelineCellAuthorUserContent, optional - :param type: The type of timeline cell author. Currently only ``USER`` is supported. + :param type: user author type. :type type: TimelineCellAuthorUserType, optional """ if content is not unset: diff --git a/src/datadog_api_client/v2/model/timeline_cell_author_user_content.py b/src/datadog_api_client/v2/model/timeline_cell_author_user_content.py index 4594a3ab2e..b32f89371f 100644 --- a/src/datadog_api_client/v2/model/timeline_cell_author_user_content.py +++ b/src/datadog_api_client/v2/model/timeline_cell_author_user_content.py @@ -39,18 +39,18 @@ def __init__( **kwargs, ): """ - Profile information for the user who authored the timeline cell. + user author content. - :param email: The email address of the user. + :param email: user email :type email: str, optional - :param handle: The Datadog handle of the user. + :param handle: user handle :type handle: str, optional - :param id: The UUID of the user. + :param id: user UUID :type id: str, optional - :param name: The display name of the user. + :param name: user name :type name: str, optional """ if email is not unset: diff --git a/src/datadog_api_client/v2/model/timeline_cell_author_user_type.py b/src/datadog_api_client/v2/model/timeline_cell_author_user_type.py index ad614e51db..d15571e252 100644 --- a/src/datadog_api_client/v2/model/timeline_cell_author_user_type.py +++ b/src/datadog_api_client/v2/model/timeline_cell_author_user_type.py @@ -14,7 +14,7 @@ class TimelineCellAuthorUserType(ModelSimple): """ - The type of timeline cell author. Currently only `USER` is supported. + user author type. :param value: If omitted defaults to "USER". Must be one of ["USER"]. :type value: str diff --git a/src/datadog_api_client/v2/model/timeline_cell_content.py b/src/datadog_api_client/v2/model/timeline_cell_content.py index a5110d4ba5..86d5d8d47b 100644 --- a/src/datadog_api_client/v2/model/timeline_cell_content.py +++ b/src/datadog_api_client/v2/model/timeline_cell_content.py @@ -13,9 +13,9 @@ class TimelineCellContent(ModelComposed): def __init__(self, **kwargs): """ - The content payload of a timeline cell, varying by cell type. + timeline cell content - :param message: The text content of the comment. Supports Markdown formatting. + :param message: comment message :type message: str, optional """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/timeline_cell_content_comment.py b/src/datadog_api_client/v2/model/timeline_cell_content_comment.py index 342b7fd2e2..dd17fb5510 100644 --- a/src/datadog_api_client/v2/model/timeline_cell_content_comment.py +++ b/src/datadog_api_client/v2/model/timeline_cell_content_comment.py @@ -26,9 +26,9 @@ def openapi_types(_): def __init__(self_, message: Union[str, UnsetType] = unset, **kwargs): """ - The content of a comment timeline cell. + comment content - :param message: The text content of the comment. Supports Markdown formatting. + :param message: comment message :type message: str, optional """ if message is not unset: diff --git a/src/datadog_api_client/v2/model/timeline_cell_resource.py b/src/datadog_api_client/v2/model/timeline_cell_resource.py index 58810fbb6b..ef37d1708e 100644 --- a/src/datadog_api_client/v2/model/timeline_cell_resource.py +++ b/src/datadog_api_client/v2/model/timeline_cell_resource.py @@ -36,15 +36,15 @@ def openapi_types(_): def __init__(self_, attributes: TimelineCell, id: str, type: TimelineCellResourceType, **kwargs): """ - A timeline cell resource representing a single entry in a case's activity timeline. + Timeline cell JSON:API resource - :param attributes: Attributes of a timeline cell, representing a single event in a case's chronological activity log (for example, a comment, status change, or assignment update). + :param attributes: timeline cell :type attributes: TimelineCell :param id: Timeline cell's identifier :type id: str - :param type: JSON:API resource type for timeline cells. + :param type: Timeline cell JSON:API resource type :type type: TimelineCellResourceType """ super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/timeline_cell_resource_type.py b/src/datadog_api_client/v2/model/timeline_cell_resource_type.py index 414ba769b0..822cf468ff 100644 --- a/src/datadog_api_client/v2/model/timeline_cell_resource_type.py +++ b/src/datadog_api_client/v2/model/timeline_cell_resource_type.py @@ -14,7 +14,7 @@ class TimelineCellResourceType(ModelSimple): """ - JSON:API resource type for timeline cells. + Timeline cell JSON:API resource type :param value: If omitted defaults to "timeline_cell". Must be one of ["timeline_cell"]. :type value: str diff --git a/src/datadog_api_client/v2/model/timeline_cell_type.py b/src/datadog_api_client/v2/model/timeline_cell_type.py index 6d91f38901..9524459304 100644 --- a/src/datadog_api_client/v2/model/timeline_cell_type.py +++ b/src/datadog_api_client/v2/model/timeline_cell_type.py @@ -14,7 +14,7 @@ class TimelineCellType(ModelSimple): """ - The type of content in the timeline cell. Currently only `COMMENT` is supported in this endpoint. + Timeline cell content type :param value: If omitted defaults to "COMMENT". Must be one of ["COMMENT"]. :type value: str diff --git a/src/datadog_api_client/v2/model/timeline_response.py b/src/datadog_api_client/v2/model/timeline_response.py index 1c37d34905..71b2c4a0f6 100644 --- a/src/datadog_api_client/v2/model/timeline_response.py +++ b/src/datadog_api_client/v2/model/timeline_response.py @@ -32,7 +32,7 @@ def openapi_types(_): def __init__(self_, data: Union[List[TimelineCellResource], UnsetType] = unset, **kwargs): """ - Response containing the chronological list of timeline cells for a case. + Timeline response :param data: The ``TimelineResponse`` ``data``. :type data: [TimelineCellResource], optional diff --git a/src/datadog_api_client/v2/models/__init__.py b/src/datadog_api_client/v2/models/__init__.py index 9320d7065e..e6a1000787 100644 --- a/src/datadog_api_client/v2/models/__init__.py +++ b/src/datadog_api_client/v2/models/__init__.py @@ -501,22 +501,6 @@ from datadog_api_client.v2.model.authn_mappings_type import AuthNMappingsType from datadog_api_client.v2.model.auto_close_inactive_cases import AutoCloseInactiveCases from datadog_api_client.v2.model.auto_transition_assigned_cases import AutoTransitionAssignedCases -from datadog_api_client.v2.model.automation_rule import AutomationRule -from datadog_api_client.v2.model.automation_rule_action import AutomationRuleAction -from datadog_api_client.v2.model.automation_rule_action_data import AutomationRuleActionData -from datadog_api_client.v2.model.automation_rule_action_type import AutomationRuleActionType -from datadog_api_client.v2.model.automation_rule_attributes import AutomationRuleAttributes -from datadog_api_client.v2.model.automation_rule_create import AutomationRuleCreate -from datadog_api_client.v2.model.automation_rule_create_attributes import AutomationRuleCreateAttributes -from datadog_api_client.v2.model.automation_rule_create_request import AutomationRuleCreateRequest -from datadog_api_client.v2.model.automation_rule_relationships import AutomationRuleRelationships -from datadog_api_client.v2.model.automation_rule_response import AutomationRuleResponse -from datadog_api_client.v2.model.automation_rule_trigger import AutomationRuleTrigger -from datadog_api_client.v2.model.automation_rule_trigger_data import AutomationRuleTriggerData -from datadog_api_client.v2.model.automation_rule_trigger_type import AutomationRuleTriggerType -from datadog_api_client.v2.model.automation_rule_update import AutomationRuleUpdate -from datadog_api_client.v2.model.automation_rule_update_request import AutomationRuleUpdateRequest -from datadog_api_client.v2.model.automation_rules_response import AutomationRulesResponse from datadog_api_client.v2.model.aws_cur_config import AwsCURConfig from datadog_api_client.v2.model.aws_cur_config_attributes import AwsCURConfigAttributes from datadog_api_client.v2.model.aws_cur_config_patch_data import AwsCURConfigPatchData @@ -773,34 +757,13 @@ from datadog_api_client.v2.model.cancel_data_deletion_response_body import CancelDataDeletionResponseBody from datadog_api_client.v2.model.case import Case from datadog_api_client.v2.model.case3rd_party_ticket_status import Case3rdPartyTicketStatus -from datadog_api_client.v2.model.case_aggregate_group import CaseAggregateGroup -from datadog_api_client.v2.model.case_aggregate_group_by import CaseAggregateGroupBy -from datadog_api_client.v2.model.case_aggregate_request import CaseAggregateRequest -from datadog_api_client.v2.model.case_aggregate_request_attributes import CaseAggregateRequestAttributes -from datadog_api_client.v2.model.case_aggregate_request_data import CaseAggregateRequestData -from datadog_api_client.v2.model.case_aggregate_resource_type import CaseAggregateResourceType -from datadog_api_client.v2.model.case_aggregate_response import CaseAggregateResponse -from datadog_api_client.v2.model.case_aggregate_response_attributes import CaseAggregateResponseAttributes -from datadog_api_client.v2.model.case_aggregate_response_data import CaseAggregateResponseData from datadog_api_client.v2.model.case_assign import CaseAssign from datadog_api_client.v2.model.case_assign_attributes import CaseAssignAttributes from datadog_api_client.v2.model.case_assign_request import CaseAssignRequest from datadog_api_client.v2.model.case_attributes import CaseAttributes -from datadog_api_client.v2.model.case_automation_rule_resource_type import CaseAutomationRuleResourceType -from datadog_api_client.v2.model.case_automation_rule_state import CaseAutomationRuleState -from datadog_api_client.v2.model.case_bulk_action_type import CaseBulkActionType -from datadog_api_client.v2.model.case_bulk_resource_type import CaseBulkResourceType -from datadog_api_client.v2.model.case_bulk_update_request import CaseBulkUpdateRequest -from datadog_api_client.v2.model.case_bulk_update_request_attributes import CaseBulkUpdateRequestAttributes -from datadog_api_client.v2.model.case_bulk_update_request_data import CaseBulkUpdateRequestData from datadog_api_client.v2.model.case_comment import CaseComment from datadog_api_client.v2.model.case_comment_attributes import CaseCommentAttributes from datadog_api_client.v2.model.case_comment_request import CaseCommentRequest -from datadog_api_client.v2.model.case_count_group import CaseCountGroup -from datadog_api_client.v2.model.case_count_group_value import CaseCountGroupValue -from datadog_api_client.v2.model.case_count_response import CaseCountResponse -from datadog_api_client.v2.model.case_count_response_attributes import CaseCountResponseAttributes -from datadog_api_client.v2.model.case_count_response_data import CaseCountResponseData from datadog_api_client.v2.model.case_create import CaseCreate from datadog_api_client.v2.model.case_create_attributes import CaseCreateAttributes from datadog_api_client.v2.model.case_create_relationships import CaseCreateRelationships @@ -808,19 +771,7 @@ from datadog_api_client.v2.model.case_data_type import CaseDataType from datadog_api_client.v2.model.case_empty import CaseEmpty from datadog_api_client.v2.model.case_empty_request import CaseEmptyRequest -from datadog_api_client.v2.model.case_insight import CaseInsight -from datadog_api_client.v2.model.case_insight_type import CaseInsightType -from datadog_api_client.v2.model.case_insights_attributes import CaseInsightsAttributes -from datadog_api_client.v2.model.case_insights_data import CaseInsightsData from datadog_api_client.v2.model.case_insights_items import CaseInsightsItems -from datadog_api_client.v2.model.case_insights_request import CaseInsightsRequest -from datadog_api_client.v2.model.case_link import CaseLink -from datadog_api_client.v2.model.case_link_attributes import CaseLinkAttributes -from datadog_api_client.v2.model.case_link_create import CaseLinkCreate -from datadog_api_client.v2.model.case_link_create_request import CaseLinkCreateRequest -from datadog_api_client.v2.model.case_link_resource_type import CaseLinkResourceType -from datadog_api_client.v2.model.case_link_response import CaseLinkResponse -from datadog_api_client.v2.model.case_links_response import CaseLinksResponse from datadog_api_client.v2.model.case_management_project import CaseManagementProject from datadog_api_client.v2.model.case_management_project_data import CaseManagementProjectData from datadog_api_client.v2.model.case_management_project_data_type import CaseManagementProjectDataType @@ -855,52 +806,24 @@ from datadog_api_client.v2.model.case_type_resource_attributes import CaseTypeResourceAttributes from datadog_api_client.v2.model.case_type_resource_type import CaseTypeResourceType from datadog_api_client.v2.model.case_type_response import CaseTypeResponse -from datadog_api_client.v2.model.case_type_update import CaseTypeUpdate -from datadog_api_client.v2.model.case_type_update_request import CaseTypeUpdateRequest from datadog_api_client.v2.model.case_types_response import CaseTypesResponse from datadog_api_client.v2.model.case_update_attributes import CaseUpdateAttributes from datadog_api_client.v2.model.case_update_attributes_attributes import CaseUpdateAttributesAttributes from datadog_api_client.v2.model.case_update_attributes_request import CaseUpdateAttributesRequest -from datadog_api_client.v2.model.case_update_comment import CaseUpdateComment -from datadog_api_client.v2.model.case_update_comment_attributes import CaseUpdateCommentAttributes -from datadog_api_client.v2.model.case_update_comment_request import CaseUpdateCommentRequest from datadog_api_client.v2.model.case_update_custom_attribute import CaseUpdateCustomAttribute from datadog_api_client.v2.model.case_update_custom_attribute_request import CaseUpdateCustomAttributeRequest from datadog_api_client.v2.model.case_update_description import CaseUpdateDescription from datadog_api_client.v2.model.case_update_description_attributes import CaseUpdateDescriptionAttributes from datadog_api_client.v2.model.case_update_description_request import CaseUpdateDescriptionRequest -from datadog_api_client.v2.model.case_update_due_date import CaseUpdateDueDate -from datadog_api_client.v2.model.case_update_due_date_attributes import CaseUpdateDueDateAttributes -from datadog_api_client.v2.model.case_update_due_date_request import CaseUpdateDueDateRequest from datadog_api_client.v2.model.case_update_priority import CaseUpdatePriority from datadog_api_client.v2.model.case_update_priority_attributes import CaseUpdatePriorityAttributes from datadog_api_client.v2.model.case_update_priority_request import CaseUpdatePriorityRequest -from datadog_api_client.v2.model.case_update_resolved_reason import CaseUpdateResolvedReason -from datadog_api_client.v2.model.case_update_resolved_reason_attributes import CaseUpdateResolvedReasonAttributes -from datadog_api_client.v2.model.case_update_resolved_reason_request import CaseUpdateResolvedReasonRequest from datadog_api_client.v2.model.case_update_status import CaseUpdateStatus from datadog_api_client.v2.model.case_update_status_attributes import CaseUpdateStatusAttributes from datadog_api_client.v2.model.case_update_status_request import CaseUpdateStatusRequest from datadog_api_client.v2.model.case_update_title import CaseUpdateTitle from datadog_api_client.v2.model.case_update_title_attributes import CaseUpdateTitleAttributes from datadog_api_client.v2.model.case_update_title_request import CaseUpdateTitleRequest -from datadog_api_client.v2.model.case_view import CaseView -from datadog_api_client.v2.model.case_view_attributes import CaseViewAttributes -from datadog_api_client.v2.model.case_view_create import CaseViewCreate -from datadog_api_client.v2.model.case_view_create_attributes import CaseViewCreateAttributes -from datadog_api_client.v2.model.case_view_create_request import CaseViewCreateRequest -from datadog_api_client.v2.model.case_view_relationships import CaseViewRelationships -from datadog_api_client.v2.model.case_view_resource_type import CaseViewResourceType -from datadog_api_client.v2.model.case_view_response import CaseViewResponse -from datadog_api_client.v2.model.case_view_update import CaseViewUpdate -from datadog_api_client.v2.model.case_view_update_attributes import CaseViewUpdateAttributes -from datadog_api_client.v2.model.case_view_update_request import CaseViewUpdateRequest -from datadog_api_client.v2.model.case_views_response import CaseViewsResponse -from datadog_api_client.v2.model.case_watcher import CaseWatcher -from datadog_api_client.v2.model.case_watcher_relationships import CaseWatcherRelationships -from datadog_api_client.v2.model.case_watcher_resource_type import CaseWatcherResourceType -from datadog_api_client.v2.model.case_watcher_user_relationship import CaseWatcherUserRelationship -from datadog_api_client.v2.model.case_watchers_response import CaseWatchersResponse from datadog_api_client.v2.model.cases_response import CasesResponse from datadog_api_client.v2.model.cases_response_meta import CasesResponseMeta from datadog_api_client.v2.model.cases_response_meta_pagination import CasesResponseMetaPagination @@ -1656,13 +1579,8 @@ ) from datadog_api_client.v2.model.custom_attribute_config_resource_type import CustomAttributeConfigResourceType from datadog_api_client.v2.model.custom_attribute_config_response import CustomAttributeConfigResponse -from datadog_api_client.v2.model.custom_attribute_config_update import CustomAttributeConfigUpdate -from datadog_api_client.v2.model.custom_attribute_config_update_attributes import CustomAttributeConfigUpdateAttributes -from datadog_api_client.v2.model.custom_attribute_config_update_request import CustomAttributeConfigUpdateRequest from datadog_api_client.v2.model.custom_attribute_configs_response import CustomAttributeConfigsResponse -from datadog_api_client.v2.model.custom_attribute_select_option import CustomAttributeSelectOption from datadog_api_client.v2.model.custom_attribute_type import CustomAttributeType -from datadog_api_client.v2.model.custom_attribute_type_data import CustomAttributeTypeData from datadog_api_client.v2.model.custom_attribute_value import CustomAttributeValue from datadog_api_client.v2.model.custom_attribute_values_union import CustomAttributeValuesUnion from datadog_api_client.v2.model.custom_connection import CustomConnection @@ -3726,17 +3644,6 @@ from datadog_api_client.v2.model.maintenance_data_relationships_status_page_data import ( MaintenanceDataRelationshipsStatusPageData, ) -from datadog_api_client.v2.model.maintenance_window import MaintenanceWindow -from datadog_api_client.v2.model.maintenance_window_attributes import MaintenanceWindowAttributes -from datadog_api_client.v2.model.maintenance_window_create import MaintenanceWindowCreate -from datadog_api_client.v2.model.maintenance_window_create_attributes import MaintenanceWindowCreateAttributes -from datadog_api_client.v2.model.maintenance_window_create_request import MaintenanceWindowCreateRequest -from datadog_api_client.v2.model.maintenance_window_resource_type import MaintenanceWindowResourceType -from datadog_api_client.v2.model.maintenance_window_response import MaintenanceWindowResponse -from datadog_api_client.v2.model.maintenance_window_update import MaintenanceWindowUpdate -from datadog_api_client.v2.model.maintenance_window_update_attributes import MaintenanceWindowUpdateAttributes -from datadog_api_client.v2.model.maintenance_window_update_request import MaintenanceWindowUpdateRequest -from datadog_api_client.v2.model.maintenance_windows_response import MaintenanceWindowsResponse from datadog_api_client.v2.model.managed_orgs_data import ManagedOrgsData from datadog_api_client.v2.model.managed_orgs_relationship_to_org import ManagedOrgsRelationshipToOrg from datadog_api_client.v2.model.managed_orgs_relationship_to_orgs import ManagedOrgsRelationshipToOrgs @@ -3935,6 +3842,45 @@ from datadog_api_client.v2.model.microsoft_teams_workflows_webhook_response_attributes import ( MicrosoftTeamsWorkflowsWebhookResponseAttributes, ) +from datadog_api_client.v2.model.model_lab_artifact_info import ModelLabArtifactInfo +from datadog_api_client.v2.model.model_lab_artifact_object_info import ModelLabArtifactObjectInfo +from datadog_api_client.v2.model.model_lab_facet_keys_attributes import ModelLabFacetKeysAttributes +from datadog_api_client.v2.model.model_lab_facet_keys_data import ModelLabFacetKeysData +from datadog_api_client.v2.model.model_lab_facet_keys_response import ModelLabFacetKeysResponse +from datadog_api_client.v2.model.model_lab_facet_keys_type import ModelLabFacetKeysType +from datadog_api_client.v2.model.model_lab_facet_type import ModelLabFacetType +from datadog_api_client.v2.model.model_lab_facet_values_attributes import ModelLabFacetValuesAttributes +from datadog_api_client.v2.model.model_lab_facet_values_data import ModelLabFacetValuesData +from datadog_api_client.v2.model.model_lab_facet_values_response import ModelLabFacetValuesResponse +from datadog_api_client.v2.model.model_lab_facet_values_type import ModelLabFacetValuesType +from datadog_api_client.v2.model.model_lab_metric_stat_range import ModelLabMetricStatRange +from datadog_api_client.v2.model.model_lab_metric_summary import ModelLabMetricSummary +from datadog_api_client.v2.model.model_lab_numeric_range import ModelLabNumericRange +from datadog_api_client.v2.model.model_lab_page_meta import ModelLabPageMeta +from datadog_api_client.v2.model.model_lab_page_meta_page import ModelLabPageMetaPage +from datadog_api_client.v2.model.model_lab_pagination_links import ModelLabPaginationLinks +from datadog_api_client.v2.model.model_lab_project_artifacts_attributes import ModelLabProjectArtifactsAttributes +from datadog_api_client.v2.model.model_lab_project_artifacts_data import ModelLabProjectArtifactsData +from datadog_api_client.v2.model.model_lab_project_artifacts_response import ModelLabProjectArtifactsResponse +from datadog_api_client.v2.model.model_lab_project_artifacts_type import ModelLabProjectArtifactsType +from datadog_api_client.v2.model.model_lab_project_attributes import ModelLabProjectAttributes +from datadog_api_client.v2.model.model_lab_project_data import ModelLabProjectData +from datadog_api_client.v2.model.model_lab_project_facet_type import ModelLabProjectFacetType +from datadog_api_client.v2.model.model_lab_project_response import ModelLabProjectResponse +from datadog_api_client.v2.model.model_lab_project_type import ModelLabProjectType +from datadog_api_client.v2.model.model_lab_projects_response import ModelLabProjectsResponse +from datadog_api_client.v2.model.model_lab_run_artifacts_attributes import ModelLabRunArtifactsAttributes +from datadog_api_client.v2.model.model_lab_run_artifacts_data import ModelLabRunArtifactsData +from datadog_api_client.v2.model.model_lab_run_artifacts_response import ModelLabRunArtifactsResponse +from datadog_api_client.v2.model.model_lab_run_artifacts_type import ModelLabRunArtifactsType +from datadog_api_client.v2.model.model_lab_run_attributes import ModelLabRunAttributes +from datadog_api_client.v2.model.model_lab_run_data import ModelLabRunData +from datadog_api_client.v2.model.model_lab_run_param import ModelLabRunParam +from datadog_api_client.v2.model.model_lab_run_response import ModelLabRunResponse +from datadog_api_client.v2.model.model_lab_run_status import ModelLabRunStatus +from datadog_api_client.v2.model.model_lab_run_type import ModelLabRunType +from datadog_api_client.v2.model.model_lab_runs_response import ModelLabRunsResponse +from datadog_api_client.v2.model.model_lab_tag import ModelLabTag from datadog_api_client.v2.model.monitor_alert_trigger_attributes import MonitorAlertTriggerAttributes from datadog_api_client.v2.model.monitor_config_policy_attribute_create_request import ( MonitorConfigPolicyAttributeCreateRequest, @@ -5304,9 +5250,6 @@ from datadog_api_client.v2.model.project_create import ProjectCreate from datadog_api_client.v2.model.project_create_attributes import ProjectCreateAttributes from datadog_api_client.v2.model.project_create_request import ProjectCreateRequest -from datadog_api_client.v2.model.project_favorite import ProjectFavorite -from datadog_api_client.v2.model.project_favorite_resource_type import ProjectFavoriteResourceType -from datadog_api_client.v2.model.project_favorites_response import ProjectFavoritesResponse from datadog_api_client.v2.model.project_notification_settings import ProjectNotificationSettings from datadog_api_client.v2.model.project_relationship import ProjectRelationship from datadog_api_client.v2.model.project_relationship_data import ProjectRelationshipData @@ -8179,22 +8122,6 @@ "AuthNMappingsType", "AutoCloseInactiveCases", "AutoTransitionAssignedCases", - "AutomationRule", - "AutomationRuleAction", - "AutomationRuleActionData", - "AutomationRuleActionType", - "AutomationRuleAttributes", - "AutomationRuleCreate", - "AutomationRuleCreateAttributes", - "AutomationRuleCreateRequest", - "AutomationRuleRelationships", - "AutomationRuleResponse", - "AutomationRuleTrigger", - "AutomationRuleTriggerData", - "AutomationRuleTriggerType", - "AutomationRuleUpdate", - "AutomationRuleUpdateRequest", - "AutomationRulesResponse", "AwsCURConfig", "AwsCURConfigAttributes", "AwsCURConfigPatchData", @@ -8403,34 +8330,13 @@ "CancelDataDeletionResponseBody", "Case", "Case3rdPartyTicketStatus", - "CaseAggregateGroup", - "CaseAggregateGroupBy", - "CaseAggregateRequest", - "CaseAggregateRequestAttributes", - "CaseAggregateRequestData", - "CaseAggregateResourceType", - "CaseAggregateResponse", - "CaseAggregateResponseAttributes", - "CaseAggregateResponseData", "CaseAssign", "CaseAssignAttributes", "CaseAssignRequest", "CaseAttributes", - "CaseAutomationRuleResourceType", - "CaseAutomationRuleState", - "CaseBulkActionType", - "CaseBulkResourceType", - "CaseBulkUpdateRequest", - "CaseBulkUpdateRequestAttributes", - "CaseBulkUpdateRequestData", "CaseComment", "CaseCommentAttributes", "CaseCommentRequest", - "CaseCountGroup", - "CaseCountGroupValue", - "CaseCountResponse", - "CaseCountResponseAttributes", - "CaseCountResponseData", "CaseCreate", "CaseCreateAttributes", "CaseCreateRelationships", @@ -8438,19 +8344,7 @@ "CaseDataType", "CaseEmpty", "CaseEmptyRequest", - "CaseInsight", - "CaseInsightType", - "CaseInsightsAttributes", - "CaseInsightsData", "CaseInsightsItems", - "CaseInsightsRequest", - "CaseLink", - "CaseLinkAttributes", - "CaseLinkCreate", - "CaseLinkCreateRequest", - "CaseLinkResourceType", - "CaseLinkResponse", - "CaseLinksResponse", "CaseManagementProject", "CaseManagementProjectData", "CaseManagementProjectDataType", @@ -8485,52 +8379,24 @@ "CaseTypeResourceAttributes", "CaseTypeResourceType", "CaseTypeResponse", - "CaseTypeUpdate", - "CaseTypeUpdateRequest", "CaseTypesResponse", "CaseUpdateAttributes", "CaseUpdateAttributesAttributes", "CaseUpdateAttributesRequest", - "CaseUpdateComment", - "CaseUpdateCommentAttributes", - "CaseUpdateCommentRequest", "CaseUpdateCustomAttribute", "CaseUpdateCustomAttributeRequest", "CaseUpdateDescription", "CaseUpdateDescriptionAttributes", "CaseUpdateDescriptionRequest", - "CaseUpdateDueDate", - "CaseUpdateDueDateAttributes", - "CaseUpdateDueDateRequest", "CaseUpdatePriority", "CaseUpdatePriorityAttributes", "CaseUpdatePriorityRequest", - "CaseUpdateResolvedReason", - "CaseUpdateResolvedReasonAttributes", - "CaseUpdateResolvedReasonRequest", "CaseUpdateStatus", "CaseUpdateStatusAttributes", "CaseUpdateStatusRequest", "CaseUpdateTitle", "CaseUpdateTitleAttributes", "CaseUpdateTitleRequest", - "CaseView", - "CaseViewAttributes", - "CaseViewCreate", - "CaseViewCreateAttributes", - "CaseViewCreateRequest", - "CaseViewRelationships", - "CaseViewResourceType", - "CaseViewResponse", - "CaseViewUpdate", - "CaseViewUpdateAttributes", - "CaseViewUpdateRequest", - "CaseViewsResponse", - "CaseWatcher", - "CaseWatcherRelationships", - "CaseWatcherResourceType", - "CaseWatcherUserRelationship", - "CaseWatchersResponse", "CasesResponse", "CasesResponseMeta", "CasesResponseMetaPagination", @@ -9052,13 +8918,8 @@ "CustomAttributeConfigResourceAttributes", "CustomAttributeConfigResourceType", "CustomAttributeConfigResponse", - "CustomAttributeConfigUpdate", - "CustomAttributeConfigUpdateAttributes", - "CustomAttributeConfigUpdateRequest", "CustomAttributeConfigsResponse", - "CustomAttributeSelectOption", "CustomAttributeType", - "CustomAttributeTypeData", "CustomAttributeValue", "CustomAttributeValuesUnion", "CustomConnection", @@ -10644,17 +10505,6 @@ "MaintenanceDataRelationshipsLastModifiedByUserData", "MaintenanceDataRelationshipsStatusPage", "MaintenanceDataRelationshipsStatusPageData", - "MaintenanceWindow", - "MaintenanceWindowAttributes", - "MaintenanceWindowCreate", - "MaintenanceWindowCreateAttributes", - "MaintenanceWindowCreateRequest", - "MaintenanceWindowResourceType", - "MaintenanceWindowResponse", - "MaintenanceWindowUpdate", - "MaintenanceWindowUpdateAttributes", - "MaintenanceWindowUpdateRequest", - "MaintenanceWindowsResponse", "ManagedOrgsData", "ManagedOrgsRelationshipToOrg", "ManagedOrgsRelationshipToOrgs", @@ -10791,6 +10641,45 @@ "MicrosoftTeamsWorkflowsWebhookHandleType", "MicrosoftTeamsWorkflowsWebhookHandlesResponse", "MicrosoftTeamsWorkflowsWebhookResponseAttributes", + "ModelLabArtifactInfo", + "ModelLabArtifactObjectInfo", + "ModelLabFacetKeysAttributes", + "ModelLabFacetKeysData", + "ModelLabFacetKeysResponse", + "ModelLabFacetKeysType", + "ModelLabFacetType", + "ModelLabFacetValuesAttributes", + "ModelLabFacetValuesData", + "ModelLabFacetValuesResponse", + "ModelLabFacetValuesType", + "ModelLabMetricStatRange", + "ModelLabMetricSummary", + "ModelLabNumericRange", + "ModelLabPageMeta", + "ModelLabPageMetaPage", + "ModelLabPaginationLinks", + "ModelLabProjectArtifactsAttributes", + "ModelLabProjectArtifactsData", + "ModelLabProjectArtifactsResponse", + "ModelLabProjectArtifactsType", + "ModelLabProjectAttributes", + "ModelLabProjectData", + "ModelLabProjectFacetType", + "ModelLabProjectResponse", + "ModelLabProjectType", + "ModelLabProjectsResponse", + "ModelLabRunArtifactsAttributes", + "ModelLabRunArtifactsData", + "ModelLabRunArtifactsResponse", + "ModelLabRunArtifactsType", + "ModelLabRunAttributes", + "ModelLabRunData", + "ModelLabRunParam", + "ModelLabRunResponse", + "ModelLabRunStatus", + "ModelLabRunType", + "ModelLabRunsResponse", + "ModelLabTag", "MonitorAlertTriggerAttributes", "MonitorConfigPolicyAttributeCreateRequest", "MonitorConfigPolicyAttributeEditRequest", @@ -11554,9 +11443,6 @@ "ProjectCreate", "ProjectCreateAttributes", "ProjectCreateRequest", - "ProjectFavorite", - "ProjectFavoriteResourceType", - "ProjectFavoritesResponse", "ProjectNotificationSettings", "ProjectRelationship", "ProjectRelationshipData", diff --git a/tests/v2/cassettes/test_scenarios/test_delete_a_model_lab_run_returns_no_content_response.frozen b/tests/v2/cassettes/test_scenarios/test_delete_a_model_lab_run_returns_no_content_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_delete_a_model_lab_run_returns_no_content_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_delete_a_model_lab_run_returns_no_content_response.yaml b/tests/v2/cassettes/test_scenarios/test_delete_a_model_lab_run_returns_no_content_response.yaml new file mode 100644 index 0000000000..344437ecae --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_delete_a_model_lab_run_returns_no_content_response.yaml @@ -0,0 +1,16 @@ +interactions: +- request: + body: null + headers: + accept: + - '*/*' + method: DELETE + uri: https://api.datadoghq.com/api/v2/model-lab-api/runs/70158 + response: + body: + string: '' + headers: {} + status: + code: 204 + message: No Content +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_delete_a_model_lab_run_returns_not_found_response.frozen b/tests/v2/cassettes/test_scenarios/test_delete_a_model_lab_run_returns_not_found_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_delete_a_model_lab_run_returns_not_found_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_delete_a_model_lab_run_returns_not_found_response.yaml b/tests/v2/cassettes/test_scenarios/test_delete_a_model_lab_run_returns_not_found_response.yaml new file mode 100644 index 0000000000..90d20a2669 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_delete_a_model_lab_run_returns_not_found_response.yaml @@ -0,0 +1,18 @@ +interactions: +- request: + body: null + headers: + accept: + - '*/*' + method: DELETE + uri: https://api.datadoghq.com/api/v2/model-lab-api/runs/999999 + response: + body: + string: '{"errors":[{"title":"Generic Error","detail":"run not found"}]}' + headers: + content-type: + - application/json + status: + code: 404 + message: Not Found +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_download_artifact_content_returns_ok_response.frozen b/tests/v2/cassettes/test_scenarios/test_download_artifact_content_returns_ok_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_download_artifact_content_returns_ok_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_download_artifact_content_returns_ok_response.yaml b/tests/v2/cassettes/test_scenarios/test_download_artifact_content_returns_ok_response.yaml new file mode 100644 index 0000000000..00b6bbcea3 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_download_artifact_content_returns_ok_response.yaml @@ -0,0 +1,18 @@ +interactions: +- request: + body: null + headers: + accept: + - application/octet-stream, application/json + method: GET + uri: https://api.datadoghq.com/api/v2/model-lab-api/artifacts/content?project_id=2387&artifact_path=f635c73b70594ab6bb6e212cdf87d0d5%2Fartifacts%2Flora_model%2Fadapter_config.json + response: + body: + string: data + headers: + content-type: + - application/octet-stream + status: + code: 200 + message: OK +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_project_returns_not_found_response.frozen b/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_project_returns_not_found_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_project_returns_not_found_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_project_returns_not_found_response.yaml b/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_project_returns_not_found_response.yaml new file mode 100644 index 0000000000..b48d0827e1 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_project_returns_not_found_response.yaml @@ -0,0 +1,18 @@ +interactions: +- request: + body: null + headers: + accept: + - application/json + method: GET + uri: https://api.datadoghq.com/api/v2/model-lab-api/projects/999999 + response: + body: + string: '{"errors":[{"title":"Generic Error","detail":"project not found"}]}' + headers: + content-type: + - application/json + status: + code: 404 + message: Not Found +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_project_returns_ok_response.frozen b/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_project_returns_ok_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_project_returns_ok_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_project_returns_ok_response.yaml b/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_project_returns_ok_response.yaml new file mode 100644 index 0000000000..333a0190bd --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_project_returns_ok_response.yaml @@ -0,0 +1,18 @@ +interactions: +- request: + body: null + headers: + accept: + - application/json + method: GET + uri: https://api.datadoghq.com/api/v2/model-lab-api/projects/2387 + response: + body: + string: '{"data":{"id":"2387","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76421","created_at":"2026-05-15T02:54:52.457827Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76421","is_starred":false,"name":"ft-gpt2-smoke-1778812860","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-15T02:54:52.468614Z"}}}' + headers: + content-type: + - application/json + status: + code: 200 + message: OK +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_run_returns_not_found_response.frozen b/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_run_returns_not_found_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_run_returns_not_found_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_run_returns_not_found_response.yaml b/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_run_returns_not_found_response.yaml new file mode 100644 index 0000000000..cfe4a5ccf5 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_run_returns_not_found_response.yaml @@ -0,0 +1,18 @@ +interactions: +- request: + body: null + headers: + accept: + - application/json + method: GET + uri: https://api.datadoghq.com/api/v2/model-lab-api/runs/999999 + response: + body: + string: '{"errors":[{"title":"Generic Error","detail":"run not found"}]}' + headers: + content-type: + - application/json + status: + code: 404 + message: Not Found +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_run_returns_ok_response.frozen b/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_run_returns_ok_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_run_returns_ok_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_run_returns_ok_response.yaml b/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_run_returns_ok_response.yaml new file mode 100644 index 0000000000..74ab2f8a1e --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_get_a_model_lab_run_returns_ok_response.yaml @@ -0,0 +1,21 @@ +interactions: +- request: + body: null + headers: + accept: + - application/json + method: GET + uri: https://api.datadoghq.com/api/v2/model-lab-api/runs/70158 + response: + body: + string: '{"data":{"id":"70158","type":"runs","attributes":{"completed_at":"2026-05-15T02:57:03.079Z","created_at":"2026-05-15T02:54:52.684452Z","descendant_match":false,"description":"","duration":130.498,"external_url":"https://mlflow.us1.staging.dog/#/runs/f635c73b70594ab6bb6e212cdf87d0d5","has_children":false,"is_pinned":false,"metric_summaries":[{"key":"eval_loss","min":3.214665412902832,"max":3.9457361698150635,"mean":3.5802007913589478,"latest":3.214665412902832,"count":4,"first_step":0,"last_step":204},{"key":"learning_rate","min":0,"max":0.0001,"mean":4.9999999999999996e-05,"latest":5.154639175257732e-07,"count":408,"first_step":1,"last_step":204},{"key":"train_steps_per_second","min":1.951,"max":1.951,"mean":1.951,"latest":1.951,"count":1,"first_step":204,"last_step":204},{"key":"entropy","min":3.1330020427703857,"max":4.252453327178955,"mean":3.6496509979752934,"latest":3.1330020427703857,"count":204,"first_step":1,"last_step":204},{"key":"eval_runtime","min":6.3487,"max":6.7308,"mean":6.53975,"latest":6.3487,"count":2,"first_step":0,"last_step":204},{"key":"grad_norm","min":0.4185899794101715,"max":1.697460651397705,"mean":0.9965703097336432,"latest":1.3113601207733154,"count":204,"first_step":1,"last_step":204},{"key":"total_flos","min":31781629558784,"max":31781629558784,"mean":31781629558784,"latest":31781629558784,"count":1,"first_step":204,"last_step":204},{"key":"training_runtime_seconds","min":106.08,"max":106.08,"mean":106.08,"latest":106.08,"count":1,"first_step":0,"last_step":0},{"key":"train_loss","min":3.10653018951416,"max":4.4325761795043945,"mean":3.6260507060032263,"latest":3.6260507060032263,"count":205,"first_step":1,"last_step":204},{"key":"train_runtime","min":104.5855,"max":104.5855,"mean":104.5855,"latest":104.5855,"count":1,"first_step":204,"last_step":204},{"key":"train_samples_per_second","min":7.802,"max":7.802,"mean":7.802,"latest":7.802,"count":1,"first_step":204,"last_step":204},{"key":"eval_mean_token_accuracy","min":0.3437899912104887,"max":0.40528977969113517,"mean":0.37453988545081196,"latest":0.40528977969113517,"count":2,"first_step":0,"last_step":204},{"key":"eval_num_tokens","min":0,"max":115650,"mean":57825,"latest":115650,"count":2,"first_step":0,"last_step":204},{"key":"eval_samples_per_second","min":30.308,"max":32.133,"mean":31.2205,"latest":32.133,"count":2,"first_step":0,"last_step":204},{"key":"eval_steps_per_second","min":7.577,"max":8.033,"mean":7.805,"latest":8.033,"count":2,"first_step":0,"last_step":204},{"key":"final_train_loss","min":3.6260507060032263,"max":3.6260507060032263,"mean":3.6260507060032263,"latest":3.6260507060032263,"count":1,"first_step":0,"last_step":0},{"key":"mean_token_accuracy","min":0.2756052017211914,"max":0.4394785761833191,"mean":0.36340271316322625,"latest":0.4110320210456848,"count":204,"first_step":1,"last_step":204},{"key":"epoch","min":0,"max":1,"mean":0.5048309178743962,"latest":1,"count":207,"first_step":0,"last_step":204},{"key":"eval_entropy","min":3.4261409394881306,"max":3.795459279827043,"mean":3.610800109657587,"latest":3.4261409394881306,"count":2,"first_step":0,"last_step":204},{"key":"loss","min":3.10653018951416,"max":4.4325761795043945,"mean":3.6260507060032263,"latest":3.171748638153076,"count":204,"first_step":1,"last_step":204},{"key":"num_tokens","min":602,"max":115650,"mean":58002.029411764706,"latest":115650,"count":204,"first_step":1,"last_step":204},{"key":"total_steps","min":204,"max":204,"mean":204,"latest":204,"count":1,"first_step":0,"last_step":0}],"mlflow_artifact_location":"mlflow-artifacts:///2387/70158/artifacts","name":"ft-gpt2-smoke-1778812860-1778813692","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":[{"key":"_name_or_path","value":"gpt2"},{"key":"activation_function","value":"gelu_new"},{"key":"adam_beta1","value":"0.9"},{"key":"adam_beta2","value":"0.999"},{"key":"adam_epsilon","value":"1e-08"},{"key":"add_cross_attention","value":"False"},{"key":"architectures","value":"[''GPT2LMHeadModel'']"},{"key":"attn_pdrop","value":"0.1"},{"key":"auto_find_batch_size","value":"False"},{"key":"average_tokens_across_devices","value":"True"},{"key":"bf16","value":"True"},{"key":"bf16_full_eval","value":"False"},{"key":"bos_token_id","value":"50256"},{"key":"chunk_size_feed_forward","value":"0"},{"key":"dataset","value":"s3://aip-long-running-jobs/savita.manghnani/train_amplified.zip"},{"key":"disable_tqdm","value":"False"},{"key":"dtype","value":"bfloat16"},{"key":"embd_pdrop","value":"0.1"},{"key":"eos_token_id","value":"50256"},{"key":"eval_accumulation_steps","value":"None"},{"key":"eval_delay","value":"0"},{"key":"eval_do_concat_batches","value":"True"},{"key":"eval_on_start","value":"True"},{"key":"eval_steps","value":"None"},{"key":"eval_strategy","value":"epoch"},{"key":"eval_use_gather_object","value":"False"},{"key":"fp16","value":"False"},{"key":"fp16_full_eval","value":"False"},{"key":"gradient_accumulation_steps","value":"1"},{"key":"gradient_checkpointing","value":"False"},{"key":"gradient_checkpointing_kwargs","value":"None"},{"key":"id2label","value":"{0: + ''LABEL_0'', 1: ''LABEL_1''}"},{"key":"include_for_metrics","value":"[]"},{"key":"include_num_input_tokens_seen","value":"no"},{"key":"initializer_range","value":"0.02"},{"key":"is_encoder_decoder","value":"False"},{"key":"label2id","value":"{''LABEL_0'': + 0, ''LABEL_1'': 1}"},{"key":"label_smoothing_factor","value":"0.0"},{"key":"layer_norm_epsilon","value":"1e-05"},{"key":"learning_rate","value":"0.0001"},{"key":"liger_kernel_config","value":"None"},{"key":"log_level","value":"passive"},{"key":"log_level_replica","value":"warning"},{"key":"log_on_each_node","value":"True"},{"key":"logging_first_step","value":"False"},{"key":"logging_nan_inf_filter","value":"True"},{"key":"logging_steps","value":"1"},{"key":"logging_strategy","value":"steps"},{"key":"lora_alpha","value":"16"},{"key":"lora_dropout","value":"0.1"},{"key":"lora_rank","value":"8"},{"key":"lr_scheduler_kwargs","value":"None"},{"key":"lr_scheduler_type","value":"linear"},{"key":"max_grad_norm","value":"1.0"},{"key":"max_length","value":"2048"},{"key":"max_steps","value":"-1"},{"key":"method","value":"lora"},{"key":"model_name","value":"gpt2"},{"key":"model_type","value":"gpt2"},{"key":"n_ctx","value":"1024"},{"key":"n_embd","value":"768"},{"key":"n_head","value":"12"},{"key":"n_inner","value":"None"},{"key":"n_layer","value":"12"},{"key":"n_positions","value":"1024"},{"key":"neftune_noise_alpha","value":"None"},{"key":"num_epochs","value":"1"},{"key":"num_train_epochs","value":"1"},{"key":"optim","value":"adamw_torch_fused"},{"key":"optim_args","value":"None"},{"key":"optim_target_modules","value":"None"},{"key":"optimizer","value":"adamw_8bit"},{"key":"output_attentions","value":"False"},{"key":"output_dir","value":"./lora_output"},{"key":"output_hidden_states","value":"False"},{"key":"packing","value":"False"},{"key":"pad_token_id","value":"50256"},{"key":"per_device_batch_size","value":"2"},{"key":"per_device_eval_batch_size","value":"2"},{"key":"per_device_train_batch_size","value":"2"},{"key":"precision","value":"bf16"},{"key":"prediction_loss_only","value":"False"},{"key":"problem_type","value":"None"},{"key":"project","value":"huggingface"},{"key":"reorder_and_upcast_attn","value":"False"},{"key":"report_to","value":"[''mlflow'']"},{"key":"resid_pdrop","value":"0.1"},{"key":"return_dict","value":"True"},{"key":"run_name","value":"None"},{"key":"scale_attn_by_inverse_layer_idx","value":"False"},{"key":"scale_attn_weights","value":"True"},{"key":"summary_activation","value":"None"},{"key":"summary_first_dropout","value":"0.1"},{"key":"summary_proj_to_labels","value":"True"},{"key":"summary_type","value":"cls_index"},{"key":"summary_use_proj","value":"True"},{"key":"task_specific_params","value":"{''text-generation'': + {''do_sample'': True, ''max_length'': 50}}"},{"key":"tf32","value":"None"},{"key":"tie_word_embeddings","value":"True"},{"key":"torch_compile","value":"False"},{"key":"torch_compile_backend","value":"None"},{"key":"torch_compile_mode","value":"None"},{"key":"torch_empty_cache_steps","value":"None"},{"key":"trackio_bucket_id","value":"None"},{"key":"trackio_space_id","value":"None"},{"key":"trackio_static_space_id","value":"None"},{"key":"trainer","value":"trl-sft-raytrain"},{"key":"transformers_version","value":"5.8.1"},{"key":"use_cache","value":"False"},{"key":"use_liger_kernel","value":"False"},{"key":"vocab_size","value":"50257"},{"key":"warmup_steps","value":"10"},{"key":"weight_decay","value":"0.0"}],"project_id":2387,"started_at":"2026-05-15T02:54:52.581Z","status":"completed","tags":[{"key":"mlflow.runName","value":"ft-gpt2-smoke-1778812860-1778813692"},{"key":"mlflow.source.name","value":"/home/ray/.venv/lib/python3.12/site-packages/ray/_private/workers/default_worker.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"resumed","value":"false"}],"updated_at":"2026-05-15T02:57:03.257618Z"}}}' + headers: + content-type: + - application/json + status: + code: 200 + message: OK +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_artifacts_returns_ok_response.frozen b/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_artifacts_returns_ok_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_artifacts_returns_ok_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_artifacts_returns_ok_response.yaml b/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_artifacts_returns_ok_response.yaml new file mode 100644 index 0000000000..3e70138cd9 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_artifacts_returns_ok_response.yaml @@ -0,0 +1,18 @@ +interactions: +- request: + body: null + headers: + accept: + - application/json + method: GET + uri: https://api.datadoghq.com/api/v2/model-lab-api/projects/2387/artifacts + response: + body: + string: '{"data":{"id":"2387","type":"project_files","attributes":{"files":[{"filename":"README.md","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/README.md","created_at":"2026-05-15T02:57:00Z","file_size":1389},{"filename":"adapter_config.json","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/adapter_config.json","created_at":"2026-05-15T02:57:01Z","file_size":1015},{"filename":"adapter_model.safetensors","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/adapter_model.safetensors","created_at":"2026-05-15T02:57:01Z","file_size":4730632},{"filename":"README.md","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/checkpoint-204/README.md","created_at":"2026-05-15T02:57:02Z","file_size":5174},{"filename":"adapter_config.json","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/checkpoint-204/adapter_config.json","created_at":"2026-05-15T02:57:02Z","file_size":1015},{"filename":"adapter_model.safetensors","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/checkpoint-204/adapter_model.safetensors","created_at":"2026-05-15T02:57:03Z","file_size":4730632},{"filename":"optimizer.bin","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/checkpoint-204/optimizer.bin","created_at":"2026-05-15T02:57:02Z","file_size":9534155},{"filename":"pytorch_model_fsdp.bin","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/checkpoint-204/pytorch_model_fsdp.bin","created_at":"2026-05-15T02:57:03Z","file_size":4754405},{"filename":"rng_state_0.pth","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/checkpoint-204/rng_state_0.pth","created_at":"2026-05-15T02:57:03Z","file_size":14725},{"filename":"scheduler.pt","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/checkpoint-204/scheduler.pt","created_at":"2026-05-15T02:57:02Z","file_size":1465},{"filename":"tokenizer.json","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/checkpoint-204/tokenizer.json","created_at":"2026-05-15T02:57:03Z","file_size":3557680},{"filename":"tokenizer_config.json","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/checkpoint-204/tokenizer_config.json","created_at":"2026-05-15T02:57:02Z","file_size":326},{"filename":"trainer_state.json","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/checkpoint-204/trainer_state.json","created_at":"2026-05-15T02:57:02Z","file_size":62194},{"filename":"training_args.bin","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/checkpoint-204/training_args.bin","created_at":"2026-05-15T02:57:03Z","file_size":6097},{"filename":"run_config.json","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/run_config.json","created_at":"2026-05-15T02:57:00Z","file_size":991},{"filename":"tokenizer.json","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/tokenizer.json","created_at":"2026-05-15T02:57:01Z","file_size":3557680},{"filename":"tokenizer_config.json","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/tokenizer_config.json","created_at":"2026-05-15T02:57:01Z","file_size":326},{"filename":"training_args.bin","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/training_args.bin","created_at":"2026-05-15T02:57:02Z","file_size":6097},{"filename":"training_metrics.json","artifact_path":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/training_metrics.json","created_at":"2026-05-15T02:57:01Z","file_size":55890}]}}}' + headers: + content-type: + - application/json + status: + code: 200 + message: OK +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_facet_keys_returns_ok_response.frozen b/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_facet_keys_returns_ok_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_facet_keys_returns_ok_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_facet_keys_returns_ok_response.yaml b/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_facet_keys_returns_ok_response.yaml new file mode 100644 index 0000000000..308ae97863 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_facet_keys_returns_ok_response.yaml @@ -0,0 +1,18 @@ +interactions: +- request: + body: null + headers: + accept: + - application/json + method: GET + uri: https://api.datadoghq.com/api/v2/model-lab-api/project-facet-keys + response: + body: + string: '{"data":{"id":"2","type":"facet_keys","attributes":{"metrics":null,"parameters":[],"tags":["age","beatings","mlflow.experimentKind","mlflow.experiment.ownerID","morale","team","usecase","weather"]}}}' + headers: + content-type: + - application/json + status: + code: 200 + message: OK +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_facet_values_returns_ok_response.frozen b/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_facet_values_returns_ok_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_facet_values_returns_ok_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_facet_values_returns_ok_response.yaml b/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_facet_values_returns_ok_response.yaml new file mode 100644 index 0000000000..35bbd6dac4 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_list_model_lab_project_facet_values_returns_ok_response.yaml @@ -0,0 +1,18 @@ +interactions: +- request: + body: null + headers: + accept: + - application/json + method: GET + uri: https://api.datadoghq.com/api/v2/model-lab-api/project-facet-values?facet_type=tag&facet_name=model + response: + body: + string: '{"data":{"id":"tag:model","type":"facet_values","attributes":{"facet_name":"model","facet_type":"tag","values":[]}}}' + headers: + content-type: + - application/json + status: + code: 200 + message: OK +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_list_model_lab_projects_returns_ok_response.frozen b/tests/v2/cassettes/test_scenarios/test_list_model_lab_projects_returns_ok_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_list_model_lab_projects_returns_ok_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_list_model_lab_projects_returns_ok_response.yaml b/tests/v2/cassettes/test_scenarios/test_list_model_lab_projects_returns_ok_response.yaml new file mode 100644 index 0000000000..f9104c362a --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_list_model_lab_projects_returns_ok_response.yaml @@ -0,0 +1,18 @@ +interactions: +- request: + body: null + headers: + accept: + - application/json + method: GET + uri: https://api.datadoghq.com/api/v2/model-lab-api/projects + response: + body: + string: '{"data":[{"id":"2439","type":"projects","attributes":{"artifact_storage_location":"model-lab:///2439","created_at":"2026-05-18T16:44:48.672513Z","description":"","is_starred":false,"name":"test-bdd-recording-1779122688","tags":[],"updated_at":"2026-05-18T16:44:48.684473Z"}},{"id":"2438","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76991","created_at":"2026-05-18T15:55:50.180276Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76991","is_starred":false,"name":"qwen36-27b-qlora-fsdp-1779119158","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-18T15:55:50.188677Z"}},{"id":"2437","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76989","created_at":"2026-05-18T15:46:35.705961Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76989","is_starred":false,"name":"qwen36-27b-lora-bf16-fsdp-1779118712","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-18T15:46:35.715063Z"}},{"id":"2436","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76981","created_at":"2026-05-18T14:36:11.355331Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76981","is_starred":false,"name":"llm-benchmark/gpt-oss-20b","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-18T14:36:11.363352Z"}},{"id":"2435","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76980","created_at":"2026-05-18T14:36:06.310431Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76980","is_starred":false,"name":"llm-benchmark/Qwen3.5-4B","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-18T14:36:06.318305Z"}},{"id":"2434","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76979","created_at":"2026-05-18T14:36:00.539314Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76979","is_starred":false,"name":"llm-benchmark/Qwen3-4B","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-18T14:36:00.546338Z"}},{"id":"2433","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76978","created_at":"2026-05-18T14:35:55.610359Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76978","is_starred":false,"name":"llm-benchmark/Qwen2.5-Coder-7B","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-18T14:35:55.618194Z"}},{"id":"2432","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76977","created_at":"2026-05-18T14:35:50.418713Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76977","is_starred":false,"name":"llm-benchmark/Qwen3-8B","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-18T14:35:50.428634Z"}},{"id":"2399","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76545","created_at":"2026-05-15T21:26:54.883458Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76545","is_starred":false,"name":"ft-qwen36-27b-lora-bf16-fsdp-1778879891","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-15T21:26:54.894726Z"}},{"id":"2398","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76541","created_at":"2026-05-15T21:00:45.799634Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76541","is_starred":false,"name":"ft-qwen36-27b-qlora-fsdp-a100-1778878296","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-15T21:00:45.812402Z"}},{"id":"2397","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76540","created_at":"2026-05-15T20:59:43.336624Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76540","is_starred":false,"name":"ft-qwen36-27b-qlora-a100-1778878293","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-15T20:59:43.346736Z"}},{"id":"2396","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76534","created_at":"2026-05-15T20:16:47.48412Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76534","is_starred":false,"name":"ft-qwen36-27b-qlora-1gpu-1778873109","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-15T20:16:47.494291Z"}},{"id":"2395","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76533","created_at":"2026-05-15T20:12:05.975402Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76533","is_starred":false,"name":"ft-qwen36-27b-qlora-fsdp-1778873254","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-15T20:12:05.984538Z"}},{"id":"2394","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76531","created_at":"2026-05-15T19:59:46.814886Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76531","is_starred":false,"name":"ft-qwen36-27b-qlora-1gpu-1778872828","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-15T19:59:46.824596Z"}},{"id":"2393","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76528","created_at":"2026-05-15T19:43:03.893417Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76528","is_starred":false,"name":"ft-qwen36-27b-qlora-fsdp-1778873442","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-15T19:43:03.901909Z"}},{"id":"2392","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76527","created_at":"2026-05-15T19:41:00.782593Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76527","is_starred":false,"name":"ft-qwen36-27b-qlora-1778872484","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-15T19:41:00.792616Z"}},{"id":"2391","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76522","created_at":"2026-05-15T18:58:22.785747Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76522","is_starred":false,"name":"ft-qwen35-9b-qlora-1778870929","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-15T18:58:22.79593Z"}},{"id":"2390","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76514","created_at":"2026-05-15T17:49:04.684478Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76514","is_starred":false,"name":"ft-qwen35-9b-qlora-1778866175","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-15T17:49:04.694823Z"}},{"id":"2389","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76483","created_at":"2026-05-15T12:52:28.046954Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76483","is_starred":false,"name":"ft-qwen35-9b-qlora-1778848889","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-15T12:52:28.057141Z"}},{"id":"2388","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76425","created_at":"2026-05-15T03:18:25.363827Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76425","is_starred":false,"name":"ft-qwen35-9b-qlora-1778814244","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-15T03:18:25.375252Z"}},{"id":"2387","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76421","created_at":"2026-05-15T02:54:52.457827Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76421","is_starred":false,"name":"ft-gpt2-smoke-1778812860","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-15T02:54:52.468614Z"}},{"id":"2386","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76396","created_at":"2026-05-14T23:30:56.250532Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76396","is_starred":false,"name":"gpt2-smoke-1778800651","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-14T23:30:56.261218Z"}},{"id":"2385","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76393","created_at":"2026-05-14T23:10:18.350308Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76393","is_starred":false,"name":"gpt2-smoke-1778799710","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-14T23:10:18.361036Z"}},{"id":"2352","type":"projects","attributes":{"artifact_storage_location":"model-lab:///76357","created_at":"2026-05-14T17:21:01.714616Z","description":"","external_url":"https://mlflow.us1.staging.dog/#/experiments/76357","is_starred":false,"name":"qwen3-4b-thinking-false-1778778667","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","tags":[],"updated_at":"2026-05-14T17:21:01.724501Z"}},{"id":"2351","type":"projects","attributes":{"artifact_storage_location":"model-lab:///2351","created_at":"2026-05-14T13:24:26.439419Z","description":"","is_starred":false,"name":"40-model-lab-online-rlaif","owner_id":"11e6980a-089e-49ea-be5c-c821408af46d","tags":[],"updated_at":"2026-05-14T13:24:26.452049Z"}}],"meta":{"page":{"type":"number_size","number":0,"size":25,"total":403,"first_number":0,"prev_number":null,"next_number":1,"last_number":16}},"links":{"self":"https://api.datad0g.com/api/v2/model-lab-api/projects","first":"https://api.datad0g.com/api/v2/model-lab-api/projects?page[number]=0&page[size]=25","last":"https://api.datad0g.com/api/v2/model-lab-api/projects?page[number]=16&page[size]=25","next":"https://api.datad0g.com/api/v2/model-lab-api/projects?page[number]=1&page[size]=25"}}' + headers: + content-type: + - application/json + status: + code: 200 + message: OK +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_artifacts_returns_ok_response.frozen b/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_artifacts_returns_ok_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_artifacts_returns_ok_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_artifacts_returns_ok_response.yaml b/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_artifacts_returns_ok_response.yaml new file mode 100644 index 0000000000..c3b5f9aebb --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_artifacts_returns_ok_response.yaml @@ -0,0 +1,18 @@ +interactions: +- request: + body: null + headers: + accept: + - application/json + method: GET + uri: https://api.datadoghq.com/api/v2/model-lab-api/runs/70158/artifacts + response: + body: + string: '{"data":{"id":"70158","type":"artifacts","attributes":{"files":[{"path":"lora_model/","is_dir":true}],"path_in_project":"f635c73b70594ab6bb6e212cdf87d0d5/artifacts"}}}' + headers: + content-type: + - application/json + status: + code: 200 + message: OK +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_facet_keys_returns_ok_response.frozen b/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_facet_keys_returns_ok_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_facet_keys_returns_ok_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_facet_keys_returns_ok_response.yaml b/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_facet_keys_returns_ok_response.yaml new file mode 100644 index 0000000000..238ecb2322 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_facet_keys_returns_ok_response.yaml @@ -0,0 +1,18 @@ +interactions: +- request: + body: null + headers: + accept: + - application/json + method: GET + uri: https://api.datadoghq.com/api/v2/model-lab-api/facet-keys?filter%5Bproject_id%5D=2387 + response: + body: + string: '{"data":{"id":"2387","type":"facet_keys","attributes":{"metrics":["entropy","epoch","eval_entropy","eval_loss","eval_mean_token_accuracy","eval_num_tokens","eval_runtime","eval_samples_per_second","eval_steps_per_second","final_train_loss","grad_norm","learning_rate","loss","mean_token_accuracy","num_tokens","total_flos","total_steps","training_runtime_seconds","train_loss","train_runtime","train_samples_per_second","train_steps_per_second"],"parameters":["activation_function","adam_beta1","adam_beta2","adam_epsilon","add_cross_attention","architectures","attn_pdrop","auto_find_batch_size","average_tokens_across_devices","bf16","bf16_full_eval","bos_token_id","chunk_size_feed_forward","dataset","disable_tqdm","dtype","embd_pdrop","eos_token_id","eval_accumulation_steps","eval_delay","eval_do_concat_batches","eval_on_start","eval_steps","eval_strategy","eval_use_gather_object","fp16","fp16_full_eval","gradient_accumulation_steps","gradient_checkpointing","gradient_checkpointing_kwargs","id2label","include_for_metrics","include_num_input_tokens_seen","initializer_range","is_encoder_decoder","label2id","label_smoothing_factor","layer_norm_epsilon","learning_rate","liger_kernel_config","logging_first_step","logging_nan_inf_filter","logging_steps","logging_strategy","log_level","log_level_replica","log_on_each_node","lora_alpha","lora_dropout","lora_rank","lr_scheduler_kwargs","lr_scheduler_type","max_grad_norm","max_length","max_steps","method","model_name","model_type","_name_or_path","n_ctx","neftune_noise_alpha","n_embd","n_head","n_inner","n_layer","n_positions","num_epochs","num_train_epochs","optim","optim_args","optimizer","optim_target_modules","output_attentions","output_dir","output_hidden_states","packing","pad_token_id","per_device_batch_size","per_device_eval_batch_size","per_device_train_batch_size","precision","prediction_loss_only","problem_type","project","reorder_and_upcast_attn","report_to","resid_pdrop","return_dict","run_name","scale_attn_by_inverse_layer_idx","scale_attn_weights","summary_activation","summary_first_dropout","summary_proj_to_labels","summary_type","summary_use_proj","task_specific_params","tf32","tie_word_embeddings","torch_compile","torch_compile_backend","torch_compile_mode","torch_empty_cache_steps","trackio_bucket_id","trackio_space_id","trackio_static_space_id","trainer","transformers_version","use_cache","use_liger_kernel","vocab_size","warmup_steps","weight_decay"],"tags":["mlflow.runName","mlflow.source.name","mlflow.source.type","mlflow.user","resumed"]}}}' + headers: + content-type: + - application/json + status: + code: 200 + message: OK +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_facet_values_returns_ok_response.frozen b/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_facet_values_returns_ok_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_facet_values_returns_ok_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_facet_values_returns_ok_response.yaml b/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_facet_values_returns_ok_response.yaml new file mode 100644 index 0000000000..e9f41ed3a6 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_list_model_lab_run_facet_values_returns_ok_response.yaml @@ -0,0 +1,18 @@ +interactions: +- request: + body: null + headers: + accept: + - application/json + method: GET + uri: https://api.datadoghq.com/api/v2/model-lab-api/facet-values?filter%5Bproject_id%5D=2387&facet_type=tag&facet_name=model + response: + body: + string: '{"data":{"id":"tag:model:2387","type":"facet_values","attributes":{"facet_name":"model","facet_type":"tag","values":[]}}}' + headers: + content-type: + - application/json + status: + code: 200 + message: OK +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_list_model_lab_runs_returns_ok_response.frozen b/tests/v2/cassettes/test_scenarios/test_list_model_lab_runs_returns_ok_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_list_model_lab_runs_returns_ok_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_list_model_lab_runs_returns_ok_response.yaml b/tests/v2/cassettes/test_scenarios/test_list_model_lab_runs_returns_ok_response.yaml new file mode 100644 index 0000000000..9b2967ec2e --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_list_model_lab_runs_returns_ok_response.yaml @@ -0,0 +1,26 @@ +interactions: +- request: + body: null + headers: + accept: + - application/json + method: GET + uri: https://api.datadoghq.com/api/v2/model-lab-api/runs + response: + body: + string: '{"data":[{"id":"71355","type":"runs","attributes":{"created_at":"2026-05-18T15:55:50.38705Z","descendant_match":false,"description":"","external_url":"https://mlflow.us1.staging.dog/#/runs/967b528b3e994b34a67348b790f5faba","has_children":false,"is_pinned":false,"metric_summaries":[],"mlflow_artifact_location":"mlflow-artifacts:///2438/71355/artifacts","name":"qwen36-27b-qlora-fsdp-1779119158-1779119750","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":[{"key":"config_max_length","value":"512"},{"key":"dataset","value":"s3://aip-long-running-jobs/savita.manghnani/qwen3_without_thinking.zip"},{"key":"gradient_accumulation_steps","value":"1"},{"key":"learning_rate","value":"0.0001"},{"key":"lora_alpha","value":"16"},{"key":"lora_dropout","value":"0.1"},{"key":"lora_rank","value":"8"},{"key":"method","value":"qlora-4bit"},{"key":"model_name","value":"Qwen/Qwen3.6-27B"},{"key":"num_epochs","value":"1"},{"key":"optimizer","value":"adamw_8bit"},{"key":"packing","value":"False"},{"key":"per_device_batch_size","value":"2"},{"key":"precision","value":"bf16"},{"key":"trainer","value":"trl-sft-raytrain"}],"project_id":2438,"started_at":"2026-05-18T15:55:50.275Z","status":"running","tags":[{"key":"mlflow.runName","value":"qwen36-27b-qlora-fsdp-1779119158-1779119750"},{"key":"mlflow.source.name","value":"/home/ray/.venv/lib/python3.12/site-packages/ray/_private/workers/default_worker.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"resumed","value":"false"}],"updated_at":"2026-05-18T15:55:50.399903Z"}},{"id":"71354","type":"runs","attributes":{"created_at":"2026-05-18T15:46:35.963967Z","descendant_match":false,"description":"","external_url":"https://mlflow.us1.staging.dog/#/runs/018cbd19633e47f7b57d140b63f2f99e","has_children":false,"is_pinned":false,"metric_summaries":[],"mlflow_artifact_location":"mlflow-artifacts:///2437/71354/artifacts","name":"qwen36-27b-lora-bf16-fsdp-1779118712-1779119195","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":[{"key":"config_max_length","value":"512"},{"key":"dataset","value":"s3://aip-long-running-jobs/savita.manghnani/qwen3_without_thinking.zip"},{"key":"gradient_accumulation_steps","value":"1"},{"key":"learning_rate","value":"0.0001"},{"key":"lora_alpha","value":"16"},{"key":"lora_dropout","value":"0.1"},{"key":"lora_rank","value":"8"},{"key":"method","value":"lora"},{"key":"model_name","value":"Qwen/Qwen3.6-27B"},{"key":"num_epochs","value":"1"},{"key":"optimizer","value":"adamw_8bit"},{"key":"packing","value":"False"},{"key":"per_device_batch_size","value":"2"},{"key":"precision","value":"bf16"},{"key":"trainer","value":"trl-sft-raytrain"}],"project_id":2437,"started_at":"2026-05-18T15:46:35.799Z","status":"running","tags":[{"key":"mlflow.runName","value":"qwen36-27b-lora-bf16-fsdp-1779118712-1779119195"},{"key":"mlflow.source.name","value":"/home/ray/.venv/lib/python3.12/site-packages/ray/_private/workers/default_worker.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"resumed","value":"false"}],"updated_at":"2026-05-18T15:46:35.980176Z"}},{"id":"71353","type":"runs","attributes":{"created_at":"2026-05-18T14:36:11.550137Z","descendant_match":false,"description":"","external_url":"https://mlflow.us1.staging.dog/#/runs/7ea36d29bbaf4e74abd124f08abe514e","has_children":false,"is_pinned":false,"metric_summaries":[{"key":"system/total_input_tokens","min":10240,"max":10240,"mean":10240,"latest":10240,"count":1,"first_step":0,"last_step":0},{"key":"system/total_token_throughput","min":1627.7501525189548,"max":1627.7501525189548,"mean":1627.7501525189548,"latest":1627.7501525189548,"count":1,"first_step":0,"last_step":0},{"key":"system/median_itl_ms","min":35.59626202331856,"max":35.59626202331856,"mean":35.59626202331856,"latest":35.59626202331856,"count":1,"first_step":0,"last_step":0},{"key":"cost/gpu_cost_usd_decode","min":0.048628,"max":0.048628,"mean":0.048628,"latest":0.048628,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_e2el_ms","min":6844.651613000315,"max":6844.651613000315,"mean":6844.651613000315,"latest":6844.651613000315,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_itl_ms","min":42.46556939943183,"max":42.46556939943183,"mean":42.46556939943183,"latest":42.46556939943183,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_itl_ms","min":224.5777664042544,"max":224.5777664042544,"mean":224.5777664042544,"latest":224.5777664042544,"count":1,"first_step":0,"last_step":0},{"key":"system/completion_rate","min":1,"max":1,"mean":1,"latest":0,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_ttft_ms","min":1720.476923091337,"max":1720.476923091337,"mean":1720.476923091337,"latest":1720.476923091337,"count":1,"first_step":0,"last_step":0},{"key":"system/median_tpot_ms","min":41.04991006301936,"max":41.04991006301936,"mean":41.04991006301936,"latest":41.04991006301936,"count":1,"first_step":0,"last_step":0},{"key":"system/num_prompts","min":10,"max":10,"mean":10,"latest":10,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_e2el_ms","min":7012.529445069376,"max":7012.529445069376,"mean":7012.529445069376,"latest":7012.529445069376,"count":1,"first_step":0,"last_step":0},{"key":"system/request_throughput","min":1.4227341600550256,"max":1.4227341600550256,"mean":1.4227341600550256,"latest":1.4227341600550256,"count":1,"first_step":0,"last_step":0},{"key":"cost/gpu_cost_per_hour","min":0.5,"max":0.5,"mean":0.5,"latest":0.5,"count":1,"first_step":0,"last_step":0},{"key":"cost/input_cost_per_mtok","min":0.037,"max":0.037,"mean":0.037,"latest":0.037,"count":1,"first_step":0,"last_step":0},{"key":"cost/output_cost_per_mtok","min":0.6449,"max":0.6449,"mean":0.6449,"latest":0.6449,"count":1,"first_step":0,"last_step":0},{"key":"system/duration","min":7.028719968046062,"max":7.028719968046062,"mean":7.028719968046062,"latest":7.028719968046062,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_tpot_ms","min":46.36904549927383,"max":46.36904549927383,"mean":46.36904549927383,"latest":46.36904549927383,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_tpot_ms","min":92.36138276634182,"max":92.36138276634182,"mean":92.36138276634182,"latest":92.36138276634182,"count":1,"first_step":0,"last_step":0},{"key":"system/total_output_tokens","min":1201,"max":1201,"mean":1201,"latest":1201,"count":1,"first_step":0,"last_step":0},{"key":"cost/gpu_cost_usd_prefill","min":0.117495,"max":0.117495,"mean":0.117495,"latest":0.117495,"count":1,"first_step":0,"last_step":0},{"key":"system/completed","min":10,"max":10,"mean":10,"latest":10,"count":1,"first_step":0,"last_step":0},{"key":"system/median_e2el_ms","min":6965.079715999309,"max":6965.079715999309,"mean":6965.079715999309,"latest":6965.079715999309,"count":1,"first_step":0,"last_step":0},{"key":"system/median_ttft_ms","min":1751.7411379958503,"max":1751.7411379958503,"mean":1751.7411379958503,"latest":1751.7411379958503,"count":1,"first_step":0,"last_step":0},{"key":"system/output_throughput","min":170.87037262260858,"max":170.87037262260858,"mean":170.87037262260858,"latest":170.87037262260858,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_ttft_ms","min":2365.1834659359884,"max":2365.1834659359884,"mean":2365.1834659359884,"latest":2365.1834659359884,"count":1,"first_step":0,"last_step":0}],"mlflow_artifact_location":"mlflow-artifacts:///2436/71353/artifacts","name":"L4-gpt-oss-20b","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":[{"key":"enable_chunked_prefill","value":"True"},{"key":"enable_prefix_caching","value":"False"},{"key":"gpu_memory_utilization","value":"0.95"},{"key":"gpu_type","value":"L4"},{"key":"model","value":"openai/gpt-oss-20b"},{"key":"model.basename","value":"gpt-oss-20b"},{"key":"service_name","value":"gpt-oss-20b-bench-bgtu"},{"key":"tensor_parallel_size","value":"1"},{"key":"vllm.image","value":"727006795293.dkr.ecr.us-east-1.amazonaws.com/dd-source/domains/data_science/llm/apps/ray-llm-service:vllm-bleeding-edge-nydus"}],"project_id":2436,"started_at":"2026-05-18T14:36:11.37Z","status":"completed","tags":[{"key":"leaderboard","value":"true"}],"updated_at":"2026-05-18T14:36:16.155066Z"}},{"id":"71352","type":"runs","attributes":{"created_at":"2026-05-18T14:36:06.518157Z","descendant_match":false,"description":"","external_url":"https://mlflow.us1.staging.dog/#/runs/b7cc8492b38748a68e591dc0a39b7a22","has_children":false,"is_pinned":false,"metric_summaries":[{"key":"system/mean_tpot_ms","min":43.4315888917873,"max":43.4315888917873,"mean":43.4315888917873,"latest":43.4315888917873,"count":1,"first_step":0,"last_step":0},{"key":"system/median_tpot_ms","min":43.51078476765978,"max":43.51078476765978,"mean":43.51078476765978,"latest":43.51078476765978,"count":1,"first_step":0,"last_step":0},{"key":"system/output_throughput","min":149.83232267595528,"max":149.83232267595528,"mean":149.83232267595528,"latest":149.83232267595528,"count":1,"first_step":0,"last_step":0},{"key":"system/request_throughput","min":1.1705650209059006,"max":1.1705650209059006,"mean":1.1705650209059006,"latest":1.1705650209059006,"count":1,"first_step":0,"last_step":0},{"key":"system/median_itl_ms","min":40.42643454158679,"max":40.42643454158679,"mean":40.42643454158679,"latest":40.42643454158679,"count":1,"first_step":0,"last_step":0},{"key":"cost/output_cost_per_mtok","min":0.4206,"max":0.4206,"mean":0.4206,"latest":0.4206,"count":1,"first_step":0,"last_step":0},{"key":"system/duration","min":6.834306388045661,"max":6.834306388045661,"mean":6.834306388045661,"latest":6.834306388045661,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_itl_ms","min":43.060154871227496,"max":43.060154871227496,"mean":43.060154871227496,"latest":43.060154871227496,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_ttft_ms","min":1236.150400378392,"max":1236.150400378392,"mean":1236.150400378392,"latest":1236.150400378392,"count":1,"first_step":0,"last_step":0},{"key":"system/median_ttft_ms","min":1221.9488615519367,"max":1221.9488615519367,"mean":1221.9488615519367,"latest":1221.9488615519367,"count":1,"first_step":0,"last_step":0},{"key":"system/num_prompts","min":10,"max":10,"mean":10,"latest":10,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_tpot_ms","min":48.08998211418044,"max":48.08998211418044,"mean":48.08998211418044,"latest":48.08998211418044,"count":1,"first_step":0,"last_step":0},{"key":"cost/gpu_cost_usd_decode","min":0.064611,"max":0.064611,"mean":0.064611,"latest":0.064611,"count":1,"first_step":0,"last_step":0},{"key":"cost/gpu_cost_usd_prefill","min":0.083986,"max":0.083986,"mean":0.083986,"latest":0.083986,"count":1,"first_step":0,"last_step":0},{"key":"system/completed","min":8,"max":8,"mean":8,"latest":8,"count":1,"first_step":0,"last_step":0},{"key":"system/median_e2el_ms","min":6749.058461980894,"max":6749.058461980894,"mean":6749.058461980894,"latest":6749.058461980894,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_itl_ms","min":123.0954357003793,"max":123.0954357003793,"mean":123.0954357003793,"latest":123.0954357003793,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_ttft_ms","min":1679.515644611092,"max":1679.515644611092,"mean":1679.515644611092,"latest":1679.515644611092,"count":1,"first_step":0,"last_step":0},{"key":"system/total_input_tokens","min":8192,"max":8192,"mean":8192,"latest":8192,"count":1,"first_step":0,"last_step":0},{"key":"system/total_output_tokens","min":1024,"max":1024,"mean":1024,"latest":1024,"count":1,"first_step":0,"last_step":0},{"key":"cost/gpu_cost_per_hour","min":0.5,"max":0.5,"mean":0.5,"latest":0.5,"count":1,"first_step":0,"last_step":0},{"key":"cost/input_cost_per_mtok","min":0.0263,"max":0.0263,"mean":0.0263,"latest":0.0263,"count":1,"first_step":0,"last_step":0},{"key":"system/completion_rate","min":0.8,"max":0.8,"mean":0.8,"latest":0.8,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_e2el_ms","min":6751.962189635378,"max":6751.962189635378,"mean":6751.962189635378,"latest":6751.962189635378,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_e2el_ms","min":6818.673504971666,"max":6818.673504971666,"mean":6818.673504971666,"latest":6818.673504971666,"count":1,"first_step":0,"last_step":0},{"key":"system/total_token_throughput","min":1348.4909040835976,"max":1348.4909040835976,"mean":1348.4909040835976,"latest":1348.4909040835976,"count":1,"first_step":0,"last_step":0}],"mlflow_artifact_location":"mlflow-artifacts:///2435/71352/artifacts","name":"L4-Qwen3.5-4B","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":[{"key":"enable_chunked_prefill","value":"True"},{"key":"enable_prefix_caching","value":"False"},{"key":"gpu_memory_utilization","value":"0.95"},{"key":"gpu_type","value":"L4"},{"key":"model","value":"Qwen/Qwen3.5-4B"},{"key":"model.basename","value":"Qwen3.5-4B"},{"key":"service_name","value":"qwen3-5-4b-bench-3t8u"},{"key":"tensor_parallel_size","value":"1"},{"key":"vllm.image","value":"727006795293.dkr.ecr.us-east-1.amazonaws.com/dd-source/domains/data_science/llm/apps/ray-llm-service:vllm-bleeding-edge-nydus"}],"project_id":2435,"started_at":"2026-05-18T14:36:06.322Z","status":"completed","tags":[{"key":"leaderboard","value":"true"}],"updated_at":"2026-05-18T14:36:11.155341Z"}},{"id":"71351","type":"runs","attributes":{"created_at":"2026-05-18T14:36:01.262504Z","descendant_match":false,"description":"","external_url":"https://mlflow.us1.staging.dog/#/runs/1a7acda0ecc04ca280b77c2f5bef8dc2","has_children":false,"is_pinned":false,"metric_summaries":[{"key":"system/mean_itl_ms","min":10.056404993260262,"max":10.056404993260262,"mean":10.056404993260262,"latest":10.056404993260262,"count":1,"first_step":0,"last_step":0},{"key":"system/median_tpot_ms","min":10.248206653008898,"max":10.248206653008898,"mean":10.248206653008898,"latest":10.248206653008898,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_itl_ms","min":59.449308563488955,"max":59.449308563488955,"mean":59.449308563488955,"latest":59.449308563488955,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_tpot_ms","min":10.799848160644128,"max":10.799848160644128,"mean":10.799848160644128,"latest":10.799848160644128,"count":1,"first_step":0,"last_step":0},{"key":"system/total_output_tokens","min":896,"max":896,"mean":896,"latest":896,"count":1,"first_step":0,"last_step":0},{"key":"system/total_token_throughput","min":4736.073511532153,"max":4736.073511532153,"mean":4736.073511532153,"latest":4736.073511532153,"count":1,"first_step":0,"last_step":0},{"key":"cost/input_cost_per_mtok","min":0.0238,"max":0.0238,"mean":0.0238,"latest":0.0238,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_e2el_ms","min":1663.88821718283,"max":1663.88821718283,"mean":1663.88821718283,"latest":1663.88821718283,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_tpot_ms","min":10.16328207094587,"max":10.16328207094587,"mean":10.16328207094587,"latest":10.16328207094587,"count":1,"first_step":0,"last_step":0},{"key":"system/output_throughput","min":526.2303901702393,"max":526.2303901702393,"mean":526.2303901702393,"latest":526.2303901702393,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_e2el_ms","min":1673.3655747771263,"max":1673.3655747771263,"mean":1673.3655747771263,"latest":1673.3655747771263,"count":1,"first_step":0,"last_step":0},{"key":"cost/gpu_cost_per_hour","min":1.35,"max":1.35,"mean":1.35,"latest":1.35,"count":1,"first_step":0,"last_step":0},{"key":"cost/gpu_cost_usd_decode","min":0.035789,"max":0.035789,"mean":0.035789,"latest":0.035789,"count":1,"first_step":0,"last_step":0},{"key":"cost/output_cost_per_mtok","min":0.2962,"max":0.2962,"mean":0.2962,"latest":0.2962,"count":1,"first_step":0,"last_step":0},{"key":"system/completion_rate","min":0.7,"max":0.7,"mean":0.7,"latest":0.7,"count":1,"first_step":0,"last_step":0},{"key":"system/median_itl_ms","min":9.22439800342545,"max":9.22439800342545,"mean":9.22439800342545,"latest":9.22439800342545,"count":1,"first_step":0,"last_step":0},{"key":"system/median_ttft_ms","min":370.5793390981853,"max":370.5793390981853,"mean":370.5793390981853,"latest":370.5793390981853,"count":1,"first_step":0,"last_step":0},{"key":"system/num_prompts","min":10,"max":10,"mean":10,"latest":10,"count":1,"first_step":0,"last_step":0},{"key":"system/total_input_tokens","min":7168,"max":7168,"mean":7168,"latest":7168,"count":1,"first_step":0,"last_step":0},{"key":"cost/gpu_cost_usd_prefill","min":0.076802,"max":0.076802,"mean":0.076802,"latest":0.076802,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_ttft_ms","min":373.15139417270467,"max":373.15139417270467,"mean":373.15139417270467,"latest":373.15139417270467,"count":1,"first_step":0,"last_step":0},{"key":"system/median_e2el_ms","min":1666.9419680256397,"max":1666.9419680256397,"mean":1666.9419680256397,"latest":1666.9419680256397,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_ttft_ms","min":442.06858904799446,"max":442.06858904799446,"mean":442.06858904799446,"latest":442.06858904799446,"count":1,"first_step":0,"last_step":0},{"key":"system/request_throughput","min":4.111174923204994,"max":4.111174923204994,"mean":4.111174923204994,"latest":4.111174923204994,"count":1,"first_step":0,"last_step":0},{"key":"system/completed","min":7,"max":7,"mean":7,"latest":7,"count":1,"first_step":0,"last_step":0},{"key":"system/duration","min":1.7026762739988044,"max":1.7026762739988044,"mean":1.7026762739988044,"latest":1.7026762739988044,"count":1,"first_step":0,"last_step":0}],"mlflow_artifact_location":"mlflow-artifacts:///2434/71351/artifacts","name":"A100-Qwen3-4B","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":[{"key":"enable_chunked_prefill","value":"True"},{"key":"enable_prefix_caching","value":"False"},{"key":"gpu_memory_utilization","value":"0.95"},{"key":"gpu_type","value":"A100"},{"key":"model","value":"Qwen/Qwen3-4B"},{"key":"model.basename","value":"Qwen3-4B"},{"key":"service_name","value":"qwen3-4b-bench-95qm"},{"key":"tensor_parallel_size","value":"1"},{"key":"vllm.image","value":"727006795293.dkr.ecr.us-east-1.amazonaws.com/dd-source/domains/data_science/llm/apps/ray-llm-service:vllm-bleeding-edge-nydus"}],"project_id":2434,"started_at":"2026-05-18T14:36:00.552Z","status":"completed","tags":[{"key":"leaderboard","value":"true"}],"updated_at":"2026-05-18T14:36:06.038833Z"}},{"id":"71350","type":"runs","attributes":{"created_at":"2026-05-18T14:35:55.810039Z","descendant_match":false,"description":"","external_url":"https://mlflow.us1.staging.dog/#/runs/bcf3d94123df44e1b94c4d3b441f8660","has_children":false,"is_pinned":false,"metric_summaries":[{"key":"cost/gpu_cost_usd_decode","min":0.051152,"max":0.051152,"mean":0.051152,"latest":0.051152,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_e2el_ms","min":1780.398302944377,"max":1780.398302944377,"mean":1780.398302944377,"latest":1780.398302944377,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_tpot_ms","min":12.372558590439038,"max":12.372558590439038,"mean":12.372558590439038,"latest":12.372558590439038,"count":1,"first_step":0,"last_step":0},{"key":"system/median_ttft_ms","min":209.0833619586192,"max":209.0833619586192,"mean":209.0833619586192,"latest":209.0833619586192,"count":1,"first_step":0,"last_step":0},{"key":"system/num_prompts","min":10,"max":10,"mean":10,"latest":10,"count":1,"first_step":0,"last_step":0},{"key":"cost/gpu_cost_per_hour","min":1.35,"max":1.35,"mean":1.35,"latest":1.35,"count":1,"first_step":0,"last_step":0},{"key":"cost/input_cost_per_mtok","min":0.0294,"max":0.0294,"mean":0.0294,"latest":0.0294,"count":1,"first_step":0,"last_step":0},{"key":"system/completion_rate","min":0.2,"max":0.2,"mean":0.2,"latest":0.2,"count":1,"first_step":0,"last_step":0},{"key":"system/duration","min":1.8296654969453812,"max":1.8296654969453812,"mean":1.8296654969453812,"latest":1.8296654969453812,"count":1,"first_step":0,"last_step":0},{"key":"system/median_e2el_ms","min":1780.398302944377,"max":1780.398302944377,"mean":1780.398302944377,"latest":1780.398302944377,"count":1,"first_step":0,"last_step":0},{"key":"system/median_itl_ms","min":11.988877027761191,"max":11.988877027761191,"mean":11.988877027761191,"latest":11.988877027761191,"count":1,"first_step":0,"last_step":0},{"key":"system/output_throughput","min":139.91628547807832,"max":139.91628547807832,"mean":139.91628547807832,"latest":139.91628547807832,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_e2el_ms","min":1805.3105722554028,"max":1805.3105722554028,"mean":1805.3105722554028,"latest":1805.3105722554028,"count":1,"first_step":0,"last_step":0},{"key":"system/completed","min":2,"max":2,"mean":2,"latest":2,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_ttft_ms","min":209.0833619586192,"max":209.0833619586192,"mean":209.0833619586192,"latest":209.0833619586192,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_itl_ms","min":25.041629734914697,"max":25.041629734914697,"mean":25.041629734914697,"latest":25.041629734914697,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_ttft_ms","min":257.9028429754544,"max":257.9028429754544,"mean":257.9028429754544,"latest":257.9028429754544,"count":1,"first_step":0,"last_step":0},{"key":"system/request_throughput","min":1.093095980297487,"max":1.093095980297487,"mean":1.093095980297487,"latest":1.093095980297487,"count":1,"first_step":0,"last_step":0},{"key":"system/total_output_tokens","min":256,"max":256,"mean":256,"latest":256,"count":1,"first_step":0,"last_step":0},{"key":"system/total_token_throughput","min":1259.246569302705,"max":1259.246569302705,"mean":1259.246569302705,"latest":1259.246569302705,"count":1,"first_step":0,"last_step":0},{"key":"cost/gpu_cost_usd_prefill","min":0.095492,"max":0.095492,"mean":0.095492,"latest":0.095492,"count":1,"first_step":0,"last_step":0},{"key":"cost/output_cost_per_mtok","min":0.333,"max":0.333,"mean":0.333,"latest":0.333,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_itl_ms","min":12.273241152342962,"max":12.273241152342962,"mean":12.273241152342962,"latest":12.273241152342962,"count":1,"first_step":0,"last_step":0},{"key":"system/median_tpot_ms","min":12.372558590439038,"max":12.372558590439038,"mean":12.372558590439038,"latest":12.372558590439038,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_tpot_ms","min":12.560804351902105,"max":12.560804351902105,"mean":12.560804351902105,"latest":12.560804351902105,"count":1,"first_step":0,"last_step":0},{"key":"system/total_input_tokens","min":2048,"max":2048,"mean":2048,"latest":2048,"count":1,"first_step":0,"last_step":0}],"mlflow_artifact_location":"mlflow-artifacts:///2433/71350/artifacts","name":"A100-Qwen2.5-Coder-7B","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":[{"key":"enable_chunked_prefill","value":"True"},{"key":"enable_prefix_caching","value":"False"},{"key":"gpu_memory_utilization","value":"0.95"},{"key":"gpu_type","value":"A100"},{"key":"model","value":"Qwen/Qwen2.5-Coder-7B"},{"key":"model.basename","value":"Qwen2.5-Coder-7B"},{"key":"service_name","value":"qwen2-5-coder-7b-bench-py78"},{"key":"tensor_parallel_size","value":"1"},{"key":"vllm.image","value":"727006795293.dkr.ecr.us-east-1.amazonaws.com/dd-source/domains/data_science/llm/apps/ray-llm-service:vllm-bleeding-edge-nydus"}],"project_id":2433,"started_at":"2026-05-18T14:35:55.625Z","status":"completed","tags":[{"key":"leaderboard","value":"true"}],"updated_at":"2026-05-18T14:36:00.339161Z"}},{"id":"71349","type":"runs","attributes":{"created_at":"2026-05-18T14:35:50.654902Z","descendant_match":false,"description":"","external_url":"https://mlflow.us1.staging.dog/#/runs/56ad4005ff9e40d1a0e106d5b60130c6","has_children":false,"is_pinned":false,"metric_summaries":[{"key":"system/duration","min":2.3674380170414224,"max":2.3674380170414224,"mean":2.3674380170414224,"latest":2.3674380170414224,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_itl_ms","min":14.932849314997535,"max":14.932849314997535,"mean":14.932849314997535,"latest":14.932849314997535,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_tpot_ms","min":15.084737073538427,"max":15.084737073538427,"mean":15.084737073538427,"latest":15.084737073538427,"count":1,"first_step":0,"last_step":0},{"key":"system/median_e2el_ms","min":2337.1160394744948,"max":2337.1160394744948,"mean":2337.1160394744948,"latest":2337.1160394744948,"count":1,"first_step":0,"last_step":0},{"key":"system/median_tpot_ms","min":14.985868310845479,"max":14.985868310845479,"mean":14.985868310845479,"latest":14.985868310845479,"count":1,"first_step":0,"last_step":0},{"key":"system/output_throughput","min":324.40131250395586,"max":324.40131250395586,"mean":324.40131250395586,"latest":324.40131250395586,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_itl_ms","min":44.13257779670086,"max":44.13257779670086,"mean":44.13257779670086,"latest":44.13257779670086,"count":1,"first_step":0,"last_step":0},{"key":"cost/gpu_cost_usd_decode","min":0.08031,"max":0.08031,"mean":0.08031,"latest":0.08031,"count":1,"first_step":0,"last_step":0},{"key":"system/completion_rate","min":0.6,"max":0.6,"mean":0.6,"latest":0.6,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_ttft_ms","min":418.6328283588712,"max":418.6328283588712,"mean":418.6328283588712,"latest":418.6328283588712,"count":1,"first_step":0,"last_step":0},{"key":"system/request_throughput","min":2.534385253937155,"max":2.534385253937155,"mean":2.534385253937155,"latest":2.534385253937155,"count":1,"first_step":0,"last_step":0},{"key":"system/total_output_tokens","min":768,"max":768,"mean":768,"latest":768,"count":1,"first_step":0,"last_step":0},{"key":"system/total_token_throughput","min":2919.6118125356024,"max":2919.6118125356024,"mean":2919.6118125356024,"latest":2919.6118125356024,"count":1,"first_step":0,"last_step":0},{"key":"cost/output_cost_per_mtok","min":0.3921,"max":0.3921,"mean":0.3921,"latest":0.3921,"count":1,"first_step":0,"last_step":0},{"key":"system/completed","min":6,"max":6,"mean":6,"latest":6,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_e2el_ms","min":2351.7342927632853,"max":2351.7342927632853,"mean":2351.7342927632853,"latest":2351.7342927632853,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_tpot_ms","min":15.822381030412492,"max":15.822381030412492,"mean":15.822381030412492,"latest":15.822381030412492,"count":1,"first_step":0,"last_step":0},{"key":"cost/gpu_cost_usd_prefill","min":0.112268,"max":0.112268,"mean":0.112268,"latest":0.112268,"count":1,"first_step":0,"last_step":0},{"key":"cost/input_cost_per_mtok","min":0.0343,"max":0.0343,"mean":0.0343,"latest":0.0343,"count":1,"first_step":0,"last_step":0},{"key":"system/mean_e2el_ms","min":2334.394436698252,"max":2334.394436698252,"mean":2334.394436698252,"latest":2334.394436698252,"count":1,"first_step":0,"last_step":0},{"key":"system/median_itl_ms","min":14.451904979068786,"max":14.451904979068786,"mean":14.451904979068786,"latest":14.451904979068786,"count":1,"first_step":0,"last_step":0},{"key":"system/median_ttft_ms","min":433.9107639971189,"max":433.9107639971189,"mean":433.9107639971189,"latest":433.9107639971189,"count":1,"first_step":0,"last_step":0},{"key":"system/num_prompts","min":10,"max":10,"mean":10,"latest":10,"count":1,"first_step":0,"last_step":0},{"key":"system/p99_ttft_ms","min":513.0678390269168,"max":513.0678390269168,"mean":513.0678390269168,"latest":513.0678390269168,"count":1,"first_step":0,"last_step":0},{"key":"system/total_input_tokens","min":6144,"max":6144,"mean":6144,"latest":6144,"count":1,"first_step":0,"last_step":0},{"key":"cost/gpu_cost_per_hour","min":1.35,"max":1.35,"mean":1.35,"latest":1.35,"count":1,"first_step":0,"last_step":0}],"mlflow_artifact_location":"mlflow-artifacts:///2432/71349/artifacts","name":"A100-Qwen3-8B","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":[{"key":"enable_chunked_prefill","value":"True"},{"key":"enable_prefix_caching","value":"False"},{"key":"gpu_memory_utilization","value":"0.95"},{"key":"gpu_type","value":"A100"},{"key":"model","value":"Qwen/Qwen3-8B"},{"key":"model.basename","value":"Qwen3-8B"},{"key":"service_name","value":"qwen3-8b-bench-n3rw"},{"key":"tensor_parallel_size","value":"1"},{"key":"vllm.image","value":"727006795293.dkr.ecr.us-east-1.amazonaws.com/dd-source/domains/data_science/llm/apps/ray-llm-service:vllm-bleeding-edge-nydus"}],"project_id":2432,"started_at":"2026-05-18T14:35:50.433Z","status":"completed","tags":[{"key":"leaderboard","value":"true"}],"updated_at":"2026-05-18T14:35:55.408334Z"}},{"id":"71348","type":"runs","attributes":{"completed_at":"2026-05-18T11:11:41.612Z","created_at":"2026-05-18T11:11:40.928813Z","descendant_match":false,"description":"","duration":0.794,"external_url":"https://mlflow.us1.staging.dog/#/runs/202b5372db464aa28c3ddcca74cb7432","has_children":false,"is_pinned":false,"metric_summaries":[],"mlflow_artifact_location":"mlflow-artifacts:///1017/71348/artifacts","name":"user_service_ranker_2026-05-17","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":[{"key":"early_stopping_rounds","value":"20"},{"key":"features","value":"[''similarity_score'', + ''nb_page_views'', ''nb_days_with_page_view'', ''nb_views_since_last_page_view'', + ''nb_explorer_searches'', ''nb_days_with_explorer_search'', ''nb_searches_since_last_explorer_search'', + ''nb_cmdk_searches'', ''nb_days_with_cmdk_search'', ''nb_searches_since_last_cmdk_search'', + ''is_faves'', ''similarity_score_rank'', ''nb_page_views_rank'', ''nb_days_with_page_view_rank'', + ''nb_views_since_last_page_view_rank'', ''nb_explorer_searches_rank'', ''nb_days_with_explorer_search_rank'', + ''nb_searches_since_last_explorer_search_rank'', ''nb_cmdk_searches_rank'', + ''nb_days_with_cmdk_search_rank'', ''nb_searches_since_last_cmdk_search_rank'']"},{"key":"learning_rate","value":"0.2"},{"key":"max_depth","value":"3"},{"key":"metric","value":"ndcg"},{"key":"min_child_samples","value":"20"},{"key":"n_estimators","value":"500"},{"key":"n_groups_train","value":"242"},{"key":"n_groups_val","value":"27"},{"key":"num_leaves","value":"8"},{"key":"num_samples","value":"23883"},{"key":"objective","value":"lambdarank"},{"key":"random_state","value":"42"},{"key":"reg_alpha","value":"0.0"},{"key":"reg_lambda","value":"0.0"}],"project_id":1017,"started_at":"2026-05-18T11:11:40.818Z","status":"completed","tags":[{"key":"mlflow.runName","value":"user_service_ranker_2026-05-17"},{"key":"mlflow.source.name","value":"bootstrap_job.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"}],"updated_at":"2026-05-18T11:11:41.758491Z"}},{"id":"71347","type":"runs","attributes":{"created_at":"2026-05-18T09:53:57.946125Z","descendant_match":false,"description":"","external_url":"https://mlflow.us1.staging.dog/#/runs/a35df0b9b9b84b35a2e88ac087379036","has_children":false,"is_pinned":false,"metric_summaries":[],"mlflow_artifact_location":"mlflow-artifacts:///1742/71347/artifacts","name":"QWEN3.5-9B","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":[{"key":"benchmark_type","value":"system"},{"key":"gpu_type","value":"A100"},{"key":"model","value":"QWEN/QWEN3.5-9B"}],"project_id":1742,"started_at":"2026-05-18T09:53:57.706Z","status":"running","tags":[{"key":"experiment_name","value":"qwen3-5-9b-exp"}],"updated_at":"2026-05-18T09:53:57.959737Z"}},{"id":"71346","type":"runs","attributes":{"created_at":"2026-05-18T09:53:42.9892Z","descendant_match":false,"description":"","external_url":"https://mlflow.us1.staging.dog/#/runs/80746aeb3147419f90ded5fc615a80aa","has_children":false,"is_pinned":false,"metric_summaries":[],"mlflow_artifact_location":"mlflow-artifacts:///1742/71346/artifacts","name":"nonexistent-model-xyz","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":[{"key":"benchmark_type","value":"system"},{"key":"gpu_type","value":"L4"},{"key":"model","value":"FakeOrg/nonexistent-model-xyz"}],"project_id":1742,"started_at":"2026-05-18T09:53:42.738Z","status":"running","tags":[],"updated_at":"2026-05-18T09:53:43.000724Z"}},{"id":"71345","type":"runs","attributes":{"completed_at":"2026-05-18T08:45:15.968Z","created_at":"2026-05-18T08:45:07.586505Z","descendant_match":false,"description":"","duration":8.752,"external_url":"https://mlflow.us1.staging.dog/#/runs/203405f363da49529372474f59453dcd","has_children":false,"is_pinned":false,"metric_summaries":[{"key":"gold_accuracy","min":0.8941176470588236,"max":0.8941176470588236,"mean":0.8941176470588236,"latest":0.8941176470588236,"count":1,"first_step":0,"last_step":0},{"key":"gold_recall","min":0.5,"max":0.5,"mean":0.5,"latest":0.5,"count":1,"first_step":0,"last_step":0},{"key":"gold_tn","min":74,"max":74,"mean":74,"latest":74,"count":1,"first_step":0,"last_step":0},{"key":"snorkel_fn","min":238,"max":238,"mean":238,"latest":238,"count":1,"first_step":0,"last_step":0},{"key":"snorkel_fp","min":5,"max":5,"mean":5,"latest":5,"count":1,"first_step":0,"last_step":0},{"key":"sweep_gold_fp","min":0,"max":81,"mean":16.235294117647058,"latest":18,"count":17,"first_step":0,"last_step":86},{"key":"sweep_snorkel_tp","min":115,"max":828,"mean":549.4,"latest":828,"count":15,"first_step":0,"last_step":99},{"key":"gold_f1_score","min":0.3076923076923077,"max":0.3076923076923077,"mean":0.3076923076923077,"latest":0.3076923076923077,"count":1,"first_step":0,"last_step":0},{"key":"gold_roc_auc","min":0.95679012345679,"max":0.95679012345679,"mean":0.95679012345679,"latest":0.95679012345679,"count":1,"first_step":0,"last_step":0},{"key":"snorkel_accuracy","min":0.942376096751245,"max":0.942376096751245,"mean":0.942376096751245,"latest":0.942376096751245,"count":1,"first_step":0,"last_step":0},{"key":"snorkel_tp","min":590,"max":590,"mean":590,"latest":590,"count":1,"first_step":0,"last_step":0},{"key":"sweep_snorkel_fn","min":0,"max":713,"mean":278.6,"latest":30,"count":15,"first_step":0,"last_step":99},{"key":"gold_precision","min":0.2222222222222222,"max":0.2222222222222222,"mean":0.2222222222222222,"latest":0.2222222222222222,"count":1,"first_step":0,"last_step":0},{"key":"gold_tp","min":2,"max":2,"mean":2,"latest":2,"count":1,"first_step":0,"last_step":0},{"key":"sweep_gold_f1_score","min":0.0898876404494382,"max":0.6666666666666666,"mean":0.35542231104842736,"latest":0.30769230769230765,"count":17,"first_step":0,"last_step":86},{"key":"sweep_snorkel_precision","min":0.1963481147735357,"max":1,"mean":0.8833905951822458,"latest":0.9978401727861771,"count":15,"first_step":0,"last_step":99},{"key":"sweep_snorkel_fp","min":0,"max":3389,"mean":290.8,"latest":6,"count":15,"first_step":0,"last_step":99},{"key":"snorkel_precision","min":0.9915966386554622,"max":0.9915966386554622,"mean":0.9915966386554622,"latest":0.9915966386554622,"count":1,"first_step":0,"last_step":0},{"key":"snorkel_roc_auc","min":0.9928354095304073,"max":0.9928354095304073,"mean":0.9928354095304073,"latest":0.9928354095304073,"count":1,"first_step":0,"last_step":0},{"key":"sweep_snorkel_recall","min":0.1388888888888889,"max":1,"mean":0.6635265700483092,"latest":0.2572463768115942,"count":15,"first_step":0,"last_step":99},{"key":"gold_fp","min":7,"max":7,"mean":7,"latest":7,"count":1,"first_step":0,"last_step":0},{"key":"sweep_gold_recall","min":0.25,"max":1,"mean":0.8088235294117647,"latest":0.5,"count":17,"first_step":0,"last_step":86},{"key":"sweep_gold_tn","min":0,"max":81,"mean":64.76470588235294,"latest":63,"count":17,"first_step":0,"last_step":86},{"key":"sweep_snorkel_f1_score","min":0.24390243902439027,"max":0.9226044226044227,"mean":0.6706883729826749,"latest":0.9226044226044227,"count":15,"first_step":0,"last_step":99},{"key":"snorkel_tn","min":3384,"max":3384,"mean":3384,"latest":3384,"count":1,"first_step":0,"last_step":0},{"key":"sweep_gold_fn","min":0,"max":3,"mean":0.7647058823529411,"latest":0,"count":17,"first_step":0,"last_step":86},{"key":"sweep_gold_precision","min":0.047058823529411764,"max":1,"mean":0.3126587632153479,"latest":0.21052631578947367,"count":17,"first_step":0,"last_step":86},{"key":"sweep_gold_tp","min":1,"max":4,"mean":3.235294117647059,"latest":2,"count":17,"first_step":0,"last_step":86},{"key":"sweep_snorkel_tn","min":0,"max":3389,"mean":3098.2,"latest":3389,"count":15,"first_step":0,"last_step":99},{"key":"gold_fn","min":2,"max":2,"mean":2,"latest":2,"count":1,"first_step":0,"last_step":0},{"key":"snorkel_f1_score","min":0.8292340126493324,"max":0.8292340126493324,"mean":0.8292340126493324,"latest":0.8292340126493324,"count":1,"first_step":0,"last_step":0},{"key":"snorkel_recall","min":0.7125603864734299,"max":0.7125603864734299,"mean":0.7125603864734299,"latest":0.7125603864734299,"count":1,"first_step":0,"last_step":0}],"mlflow_artifact_location":"mlflow-artifacts:///488/71345/artifacts","name":"","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":[{"key":"is_unbalance","value":"True"},{"key":"learning_rate","value":"0.02"},{"key":"min_data_in_leaf","value":"100"},{"key":"n_estimators","value":"600"},{"key":"n_gold_samples","value":"85"},{"key":"n_jobs","value":"1"},{"key":"n_orgs","value":"1"},{"key":"n_snorkel_samples","value":"4217"},{"key":"n_training_samples","value":"229660"},{"key":"num_leaves","value":"31"},{"key":"org_ids","value":"[2]"},{"key":"random_state","value":"42"},{"key":"run_date","value":"2026-05-17"},{"key":"testing_window_days","value":"7"},{"key":"tfidf_lowercase","value":"False"},{"key":"tfidf_max_df","value":"0.95"},{"key":"tfidf_max_features","value":"30000"},{"key":"tfidf_min_df","value":"5"},{"key":"tfidf_ngram_range","value":"(1, + 2)"},{"key":"train_optimal_f1_threshold","value":"0.4115"},{"key":"training_window_days","value":"91"},{"key":"verbosity","value":"-1"},{"key":"version","value":"1"}],"project_id":488,"started_at":"2026-05-18T08:45:07.216Z","status":"completed","tags":[{"key":"mlflow.source.name","value":"bootstrap_job.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"n_orgs","value":"1"},{"key":"version","value":"1"}],"updated_at":"2026-05-18T08:45:16.3591Z"}},{"id":"71344","type":"runs","attributes":{"completed_at":"2026-05-18T05:03:26.966Z","created_at":"2026-05-18T05:01:59.834451Z","descendant_match":false,"description":"","duration":87.237,"external_url":"https://mlflow.us1.staging.dog/#/runs/2b10271e3e1546359da360a651c17bfa","has_children":false,"is_pinned":false,"metric_summaries":[{"key":"accuracy","min":1,"max":1,"mean":1,"latest":0,"count":2,"first_step":0,"last_step":0},{"key":"precision","min":1,"max":1,"mean":1,"latest":0,"count":2,"first_step":0,"last_step":0},{"key":"recall","min":1,"max":1,"mean":1,"latest":0,"count":2,"first_step":0,"last_step":0}],"mlflow_artifact_location":"mlflow-artifacts:///487/71344/artifacts","name":"mortar_train_test_alias_loading_partitioned_model","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":[{"key":"max_depth","value":"30"},{"key":"min_samples_leaf","value":"5"},{"key":"min_samples_split","value":"10"},{"key":"n_estimators","value":"100"}],"project_id":487,"started_at":"2026-05-18T05:01:59.729Z","status":"completed","tags":[{"key":"datacenter","value":"us1.staging.dog"},{"key":"mlflow.runName","value":"mortar_train_test_alias_loading_partitioned_model"},{"key":"mlflow.source.name","value":"bootstrap_job.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"train_end","value":"2026-05-18"},{"key":"train_start","value":"2026-05-17"}],"updated_at":"2026-05-18T05:03:27.148977Z"}},{"id":"71343","type":"runs","attributes":{"created_at":"2026-05-18T04:04:13.985851Z","descendant_match":false,"description":"","external_url":"https://mlflow.us1.staging.dog/#/runs/d1a9b44a39c54a34a35b956ce3469328","has_children":false,"is_pinned":false,"metric_summaries":[{"key":"accuracy","min":0.9,"max":0.9,"mean":0.9,"latest":0.9,"count":2,"first_step":0,"last_step":0},{"key":"precision","min":0.9074074074074074,"max":0.9074074074074074,"mean":0.9074074074074074,"latest":0.9074074074074074,"count":2,"first_step":0,"last_step":0},{"key":"recall","min":0.903030303030303,"max":0.903030303030303,"mean":0.903030303030303,"latest":0.903030303030303,"count":2,"first_step":0,"last_step":0}],"mlflow_artifact_location":"mlflow-artifacts:///486/71343/artifacts","name":"mortar_train_test_alias_loading_global_model","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":[{"key":"max_depth","value":"30"},{"key":"min_samples_leaf","value":"5"},{"key":"min_samples_split","value":"10"},{"key":"n_estimators","value":"100"}],"project_id":486,"started_at":"2026-05-18T04:04:13.883Z","status":"running","tags":[{"key":"datacenter","value":"us1.staging.dog"},{"key":"mlflow.runName","value":"mortar_train_test_alias_loading_global_model"},{"key":"mlflow.source.name","value":"bootstrap_job.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"train_end","value":"2026-05-18"},{"key":"train_start","value":"2026-05-17"}],"updated_at":"2026-05-18T04:04:14.000273Z"}},{"id":"71342","type":"runs","attributes":{"completed_at":"2026-05-18T03:01:58.035Z","created_at":"2026-05-18T03:01:30.842651Z","descendant_match":false,"description":"","duration":27.296,"external_url":"https://mlflow.us1.staging.dog/#/runs/6b22a5d0a54842ba9387d88316893fc9","has_children":false,"is_pinned":false,"metric_summaries":[{"key":"accuracy","min":0.9,"max":0.9666666666666667,"mean":0.9438095238095238,"latest":0.9666666666666667,"count":35,"first_step":0,"last_step":0},{"key":"precision","min":0.8783068783068783,"max":0.9777777777777779,"mean":0.9454438947296091,"latest":0.9666666666666667,"count":35,"first_step":0,"last_step":0},{"key":"recall","min":0.875,"max":0.9743589743589745,"mean":0.941554873697731,"latest":0.9722222222222222,"count":35,"first_step":0,"last_step":0}],"mlflow_artifact_location":"mlflow-artifacts:///484/71342/artifacts","name":"mortar_train_smoke_testing_partitioned_model","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":[{"key":"max_depth","value":"30"},{"key":"min_samples_leaf","value":"5"},{"key":"min_samples_split","value":"10"}],"project_id":484,"started_at":"2026-05-18T03:01:30.739Z","status":"completed","tags":[{"key":"datacenter","value":"us1.staging.dog"},{"key":"mlflow.runName","value":"mortar_train_smoke_testing_partitioned_model"},{"key":"mlflow.source.name","value":"bootstrap_job.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"train_end","value":"2026-05-18"},{"key":"train_start","value":"2026-05-17"}],"updated_at":"2026-05-18T03:01:58.176408Z"}},{"id":"71341","type":"runs","attributes":{"completed_at":"2026-05-18T02:12:00.018Z","created_at":"2026-05-18T02:11:33.56821Z","descendant_match":false,"description":"","duration":26.55,"external_url":"https://mlflow.us1.staging.dog/#/runs/f6921c2bc1014234b624d3f0c6e2f83e","has_children":false,"is_pinned":false,"metric_summaries":[],"mlflow_artifact_location":"mlflow-artifacts:///482/71341/artifacts","name":"vanilla","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":null,"project_id":482,"started_at":"2026-05-18T02:11:33.468Z","status":"completed","tags":[{"key":"code_source","value":"dd-analytics"},{"key":"datacenter","value":"us1.staging.dog"},{"key":"mlflow.runName","value":"vanilla"},{"key":"mlflow.source.name","value":"bootstrap_job.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"model_type","value":"bayesian_model_with_baseline"},{"key":"third_party_provider_service_region","value":"amazonaws-es-us-east-1"}],"updated_at":"2026-05-18T02:12:00.166487Z"}},{"id":"71340","type":"runs","attributes":{"completed_at":"2026-05-18T02:11:52.421Z","created_at":"2026-05-18T02:11:29.581542Z","descendant_match":false,"description":"","duration":22.934,"external_url":"https://mlflow.us1.staging.dog/#/runs/74f4aad59e4f4e66a726afc5db0436e1","has_children":false,"is_pinned":false,"metric_summaries":[],"mlflow_artifact_location":"mlflow-artifacts:///482/71340/artifacts","name":"vanilla","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":null,"project_id":482,"started_at":"2026-05-18T02:11:29.487Z","status":"completed","tags":[{"key":"code_source","value":"dd-analytics"},{"key":"datacenter","value":"us1.staging.dog"},{"key":"mlflow.runName","value":"vanilla"},{"key":"mlflow.source.name","value":"bootstrap_job.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"model_type","value":"bayesian_model_with_baseline"},{"key":"third_party_provider_service_region","value":"amazonaws-dynamodb-mx-central-1"}],"updated_at":"2026-05-18T02:11:52.554536Z"}},{"id":"71339","type":"runs","attributes":{"completed_at":"2026-05-18T02:11:38.852Z","created_at":"2026-05-18T02:11:17.924126Z","descendant_match":false,"description":"","duration":21.044,"external_url":"https://mlflow.us1.staging.dog/#/runs/fa21144e452d4c6eb1c2ff6bff2dbb57","has_children":false,"is_pinned":false,"metric_summaries":[],"mlflow_artifact_location":"mlflow-artifacts:///482/71339/artifacts","name":"vanilla","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":null,"project_id":482,"started_at":"2026-05-18T02:11:17.808Z","status":"completed","tags":[{"key":"code_source","value":"dd-analytics"},{"key":"datacenter","value":"us1.staging.dog"},{"key":"mlflow.runName","value":"vanilla"},{"key":"mlflow.source.name","value":"bootstrap_job.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"model_type","value":"bayesian_model_with_baseline"},{"key":"third_party_provider_service_region","value":"pagerduty"}],"updated_at":"2026-05-18T02:11:39.012518Z"}},{"id":"71338","type":"runs","attributes":{"completed_at":"2026-05-18T02:01:48.717Z","created_at":"2026-05-18T02:01:44.062453Z","descendant_match":false,"description":"","duration":4.748,"external_url":"https://mlflow.us1.staging.dog/#/runs/fcf4e0cad9f948dfb6d53eb34e3660be","has_children":false,"is_pinned":false,"metric_summaries":[{"key":"accuracy","min":1,"max":1,"mean":1,"latest":0,"count":2,"first_step":0,"last_step":0},{"key":"precision","min":1,"max":1,"mean":1,"latest":0,"count":2,"first_step":0,"last_step":0},{"key":"recall","min":1,"max":1,"mean":1,"latest":0,"count":2,"first_step":0,"last_step":0}],"mlflow_artifact_location":"mlflow-artifacts:///484/71338/artifacts","name":"mortar_train_smoke_testing_global_model","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":[{"key":"max_depth","value":"30"},{"key":"min_samples_leaf","value":"5"},{"key":"min_samples_split","value":"10"},{"key":"n_estimators","value":"100"}],"project_id":484,"started_at":"2026-05-18T02:01:43.969Z","status":"completed","tags":[{"key":"datacenter","value":"us1.staging.dog"},{"key":"mlflow.runName","value":"mortar_train_smoke_testing_global_model"},{"key":"mlflow.source.name","value":"bootstrap_job.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"train_end","value":"2026-05-18"},{"key":"train_start","value":"2026-05-17"}],"updated_at":"2026-05-18T02:01:48.856663Z"}},{"id":"71331","type":"runs","attributes":{"completed_at":"2026-05-18T01:56:03.441Z","created_at":"2026-05-18T01:52:30.49774Z","descendant_match":false,"description":"","duration":213.718,"external_url":"https://mlflow.us1.staging.dog/#/runs/48c65b0e43c049bea60fe45dfa2dca30","has_children":false,"is_pinned":false,"metric_summaries":[],"mlflow_artifact_location":"mlflow-artifacts:///482/71331/artifacts","name":"vanilla","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":null,"project_id":482,"started_at":"2026-05-18T01:52:29.723Z","status":"completed","tags":[{"key":"code_source","value":"dd-analytics"},{"key":"datacenter","value":"us1.staging.dog"},{"key":"mlflow.runName","value":"vanilla"},{"key":"mlflow.source.name","value":"bootstrap_job.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"model_type","value":"bayesian_model_with_baseline"},{"key":"third_party_provider_service_region","value":"amazonaws-monitoring-ca-west-1"}],"updated_at":"2026-05-18T01:56:03.578642Z"}},{"id":"71317","type":"runs","attributes":{"completed_at":"2026-05-18T01:55:56.61Z","created_at":"2026-05-18T01:50:27.663599Z","descendant_match":false,"description":"","duration":329.076,"external_url":"https://mlflow.us1.staging.dog/#/runs/3cf809f7034f49f8a45b678ae5b3c55f","has_children":false,"is_pinned":false,"metric_summaries":[],"mlflow_artifact_location":"mlflow-artifacts:///482/71317/artifacts","name":"vanilla","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":null,"project_id":482,"started_at":"2026-05-18T01:50:27.534Z","status":"completed","tags":[{"key":"code_source","value":"dd-analytics"},{"key":"datacenter","value":"us1.staging.dog"},{"key":"mlflow.runName","value":"vanilla"},{"key":"mlflow.source.name","value":"bootstrap_job.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"model_type","value":"bayesian_model_with_baseline"},{"key":"third_party_provider_service_region","value":"amazonaws-monitoring-mx-central-1"}],"updated_at":"2026-05-18T01:55:56.756604Z"}},{"id":"71336","type":"runs","attributes":{"completed_at":"2026-05-18T01:54:59.996Z","created_at":"2026-05-18T01:52:55.451932Z","descendant_match":false,"description":"","duration":124.633,"external_url":"https://mlflow.us1.staging.dog/#/runs/bc30dc20a00d4147832435bb46dbb533","has_children":false,"is_pinned":false,"metric_summaries":[],"mlflow_artifact_location":"mlflow-artifacts:///482/71336/artifacts","name":"vanilla","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":null,"project_id":482,"started_at":"2026-05-18T01:52:55.363Z","status":"completed","tags":[{"key":"code_source","value":"dd-analytics"},{"key":"datacenter","value":"us1.staging.dog"},{"key":"mlflow.runName","value":"vanilla"},{"key":"mlflow.source.name","value":"bootstrap_job.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"model_type","value":"bayesian_model_with_baseline"},{"key":"third_party_provider_service_region","value":"amazonaws-firehose-me-central-1"}],"updated_at":"2026-05-18T01:55:00.139099Z"}},{"id":"71337","type":"runs","attributes":{"completed_at":"2026-05-18T01:54:52.337Z","created_at":"2026-05-18T01:53:28.702892Z","descendant_match":false,"description":"","duration":83.73,"external_url":"https://mlflow.us1.staging.dog/#/runs/f38436eab3554414a3125a8299273caf","has_children":false,"is_pinned":false,"metric_summaries":[],"mlflow_artifact_location":"mlflow-artifacts:///482/71337/artifacts","name":"vanilla","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":null,"project_id":482,"started_at":"2026-05-18T01:53:28.607Z","status":"completed","tags":[{"key":"code_source","value":"dd-analytics"},{"key":"datacenter","value":"us1.staging.dog"},{"key":"mlflow.runName","value":"vanilla"},{"key":"mlflow.source.name","value":"bootstrap_job.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"model_type","value":"bayesian_model_with_baseline"},{"key":"third_party_provider_service_region","value":"amazonaws-firehose-eu-west-3"}],"updated_at":"2026-05-18T01:54:52.600823Z"}},{"id":"71326","type":"runs","attributes":{"completed_at":"2026-05-18T01:54:45.204Z","created_at":"2026-05-18T01:51:44.604428Z","descendant_match":false,"description":"","duration":180.692,"external_url":"https://mlflow.us1.staging.dog/#/runs/eb0fe4f0cbe047308dbe33b61f4b9847","has_children":false,"is_pinned":false,"metric_summaries":[],"mlflow_artifact_location":"mlflow-artifacts:///482/71326/artifacts","name":"vanilla","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":null,"project_id":482,"started_at":"2026-05-18T01:51:44.512Z","status":"completed","tags":[{"key":"code_source","value":"dd-analytics"},{"key":"datacenter","value":"us1.staging.dog"},{"key":"mlflow.runName","value":"vanilla"},{"key":"mlflow.source.name","value":"bootstrap_job.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"model_type","value":"bayesian_model_with_baseline"},{"key":"third_party_provider_service_region","value":"amazonaws-monitoring-ap-south-1"}],"updated_at":"2026-05-18T01:54:45.379615Z"}},{"id":"71332","type":"runs","attributes":{"completed_at":"2026-05-18T01:54:38.347Z","created_at":"2026-05-18T01:52:32.3427Z","descendant_match":false,"description":"","duration":126.115,"external_url":"https://mlflow.us1.staging.dog/#/runs/cafb02ded7914103aa4fd260626f3fff","has_children":false,"is_pinned":false,"metric_summaries":[],"mlflow_artifact_location":"mlflow-artifacts:///482/71332/artifacts","name":"vanilla","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":null,"project_id":482,"started_at":"2026-05-18T01:52:32.232Z","status":"completed","tags":[{"key":"code_source","value":"dd-analytics"},{"key":"datacenter","value":"us1.staging.dog"},{"key":"mlflow.runName","value":"vanilla"},{"key":"mlflow.source.name","value":"bootstrap_job.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"model_type","value":"bayesian_model_with_baseline"},{"key":"third_party_provider_service_region","value":"amazonaws-kinesis-ap-southeast-3"}],"updated_at":"2026-05-18T01:54:38.494039Z"}},{"id":"71335","type":"runs","attributes":{"completed_at":"2026-05-18T01:54:31.613Z","created_at":"2026-05-18T01:52:49.441594Z","descendant_match":false,"description":"","duration":102.264,"external_url":"https://mlflow.us1.staging.dog/#/runs/eaefc5caf34c45f7bc93448eb0ee2d33","has_children":false,"is_pinned":false,"metric_summaries":[],"mlflow_artifact_location":"mlflow-artifacts:///482/71335/artifacts","name":"vanilla","owner_id":"1d45ac49-1e4e-11f1-8c3a-42221ed6388d","params":null,"project_id":482,"started_at":"2026-05-18T01:52:49.349Z","status":"completed","tags":[{"key":"code_source","value":"dd-analytics"},{"key":"datacenter","value":"us1.staging.dog"},{"key":"mlflow.runName","value":"vanilla"},{"key":"mlflow.source.name","value":"bootstrap_job.py"},{"key":"mlflow.source.type","value":"LOCAL"},{"key":"mlflow.user","value":"dog"},{"key":"model_type","value":"bayesian_model_with_baseline"},{"key":"third_party_provider_service_region","value":"amazonaws-monitoring-us-gov-east-1"}],"updated_at":"2026-05-18T01:54:31.752756Z"}}],"meta":{"page":{"type":"number_size","number":0,"size":25,"total":65614,"first_number":0,"prev_number":null,"next_number":1,"last_number":2624}},"links":{"self":"https://api.datad0g.com/api/v2/model-lab-api/runs","first":"https://api.datad0g.com/api/v2/model-lab-api/runs?page[number]=0&page[size]=25","last":"https://api.datad0g.com/api/v2/model-lab-api/runs?page[number]=2624&page[size]=25","next":"https://api.datad0g.com/api/v2/model-lab-api/runs?page[number]=1&page[size]=25"}}' + headers: + content-type: + - application/json + status: + code: 200 + message: OK +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_pin_a_model_lab_run_returns_no_content_response.frozen b/tests/v2/cassettes/test_scenarios/test_pin_a_model_lab_run_returns_no_content_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_pin_a_model_lab_run_returns_no_content_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_pin_a_model_lab_run_returns_no_content_response.yaml b/tests/v2/cassettes/test_scenarios/test_pin_a_model_lab_run_returns_no_content_response.yaml new file mode 100644 index 0000000000..d11b9a3385 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_pin_a_model_lab_run_returns_no_content_response.yaml @@ -0,0 +1,30 @@ +interactions: +- request: + body: null + headers: + accept: + - '*/*' + method: POST + uri: https://api.datadoghq.com/api/v2/model-lab-api/runs/70158/pin + response: + body: + string: '' + headers: {} + status: + code: 204 + message: No Content +- request: + body: null + headers: + accept: + - '*/*' + method: DELETE + uri: https://api.datadoghq.com/api/v2/model-lab-api/runs/70158/pin + response: + body: + string: '' + headers: {} + status: + code: 204 + message: No Content +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_pin_a_model_lab_run_returns_not_found_response.frozen b/tests/v2/cassettes/test_scenarios/test_pin_a_model_lab_run_returns_not_found_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_pin_a_model_lab_run_returns_not_found_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_pin_a_model_lab_run_returns_not_found_response.yaml b/tests/v2/cassettes/test_scenarios/test_pin_a_model_lab_run_returns_not_found_response.yaml new file mode 100644 index 0000000000..4421d4795c --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_pin_a_model_lab_run_returns_not_found_response.yaml @@ -0,0 +1,18 @@ +interactions: +- request: + body: null + headers: + accept: + - '*/*' + method: POST + uri: https://api.datadoghq.com/api/v2/model-lab-api/runs/999999/pin + response: + body: + string: '{"errors":[{"title":"Generic Error","detail":"run not found"}]}' + headers: + content-type: + - application/json + status: + code: 404 + message: Not Found +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_star_a_model_lab_project_returns_no_content_response.frozen b/tests/v2/cassettes/test_scenarios/test_star_a_model_lab_project_returns_no_content_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_star_a_model_lab_project_returns_no_content_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_star_a_model_lab_project_returns_no_content_response.yaml b/tests/v2/cassettes/test_scenarios/test_star_a_model_lab_project_returns_no_content_response.yaml new file mode 100644 index 0000000000..50cd3030a6 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_star_a_model_lab_project_returns_no_content_response.yaml @@ -0,0 +1,30 @@ +interactions: +- request: + body: null + headers: + accept: + - '*/*' + method: POST + uri: https://api.datadoghq.com/api/v2/model-lab-api/projects/2387/star + response: + body: + string: '' + headers: {} + status: + code: 204 + message: No Content +- request: + body: null + headers: + accept: + - '*/*' + method: DELETE + uri: https://api.datadoghq.com/api/v2/model-lab-api/projects/2387/star + response: + body: + string: '' + headers: {} + status: + code: 204 + message: No Content +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_star_a_model_lab_project_returns_not_found_response.frozen b/tests/v2/cassettes/test_scenarios/test_star_a_model_lab_project_returns_not_found_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_star_a_model_lab_project_returns_not_found_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_star_a_model_lab_project_returns_not_found_response.yaml b/tests/v2/cassettes/test_scenarios/test_star_a_model_lab_project_returns_not_found_response.yaml new file mode 100644 index 0000000000..402ce14823 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_star_a_model_lab_project_returns_not_found_response.yaml @@ -0,0 +1,18 @@ +interactions: +- request: + body: null + headers: + accept: + - '*/*' + method: POST + uri: https://api.datadoghq.com/api/v2/model-lab-api/projects/999999/star + response: + body: + string: '{"errors":[{"title":"Generic Error","detail":"project not found"}]}' + headers: + content-type: + - application/json + status: + code: 404 + message: Not Found +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_unpin_a_model_lab_run_returns_no_content_response.frozen b/tests/v2/cassettes/test_scenarios/test_unpin_a_model_lab_run_returns_no_content_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_unpin_a_model_lab_run_returns_no_content_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_unpin_a_model_lab_run_returns_no_content_response.yaml b/tests/v2/cassettes/test_scenarios/test_unpin_a_model_lab_run_returns_no_content_response.yaml new file mode 100644 index 0000000000..fbb2ff4bf7 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_unpin_a_model_lab_run_returns_no_content_response.yaml @@ -0,0 +1,16 @@ +interactions: +- request: + body: null + headers: + accept: + - '*/*' + method: DELETE + uri: https://api.datadoghq.com/api/v2/model-lab-api/runs/70158/pin + response: + body: + string: '' + headers: {} + status: + code: 204 + message: No Content +version: 1 diff --git a/tests/v2/cassettes/test_scenarios/test_unstar_a_model_lab_project_returns_no_content_response.frozen b/tests/v2/cassettes/test_scenarios/test_unstar_a_model_lab_project_returns_no_content_response.frozen new file mode 100644 index 0000000000..144cd0a442 --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_unstar_a_model_lab_project_returns_no_content_response.frozen @@ -0,0 +1 @@ +2026-05-18T16:45:00.000Z \ No newline at end of file diff --git a/tests/v2/cassettes/test_scenarios/test_unstar_a_model_lab_project_returns_no_content_response.yaml b/tests/v2/cassettes/test_scenarios/test_unstar_a_model_lab_project_returns_no_content_response.yaml new file mode 100644 index 0000000000..cc2b1caf5e --- /dev/null +++ b/tests/v2/cassettes/test_scenarios/test_unstar_a_model_lab_project_returns_no_content_response.yaml @@ -0,0 +1,16 @@ +interactions: +- request: + body: null + headers: + accept: + - '*/*' + method: DELETE + uri: https://api.datadoghq.com/api/v2/model-lab-api/projects/2387/star + response: + body: + string: '' + headers: {} + status: + code: 204 + message: No Content +version: 1 diff --git a/tests/v2/features/case_management.feature b/tests/v2/features/case_management.feature index 04f9d8e069..bd67a8ddf2 100644 --- a/tests/v2/features/case_management.feature +++ b/tests/v2/features/case_management.feature @@ -10,57 +10,6 @@ Feature: Case Management And a valid "appKeyAuth" key in the system And an instance of "CaseManagement" API - @generated @skip @team:DataDog/case-management - Scenario: Add insights to a case returns "Bad Request" response - Given operation "AddCaseInsights" enabled - And new "AddCaseInsights" request - And request contains "case_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"insights": [{"ref": "/monitors/12345?q=total", "resource_id": "12345", "type": "SECURITY_SIGNAL"}]}, "type": "case"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Add insights to a case returns "Not Found" response - Given operation "AddCaseInsights" enabled - And new "AddCaseInsights" request - And request contains "case_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"insights": [{"ref": "/monitors/12345?q=total", "resource_id": "12345", "type": "SECURITY_SIGNAL"}]}, "type": "case"}} - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Add insights to a case returns "OK" response - Given operation "AddCaseInsights" enabled - And new "AddCaseInsights" request - And request contains "case_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"insights": [{"ref": "/monitors/12345?q=total", "resource_id": "12345", "type": "SECURITY_SIGNAL"}]}, "type": "case"}} - When the request is sent - Then the response status is 200 OK - - @generated @skip @team:DataDog/case-management - Scenario: Aggregate cases returns "Bad Request" response - Given operation "AggregateCases" enabled - And new "AggregateCases" request - And body with value {"data": {"attributes": {"group_by": {"groups": ["status"], "limit": 14}, "query_filter": "service:case-api"}, "type": "aggregate"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Aggregate cases returns "Not Found" response - Given operation "AggregateCases" enabled - And new "AggregateCases" request - And body with value {"data": {"attributes": {"group_by": {"groups": ["status"], "limit": 14}, "query_filter": "service:case-api"}, "type": "aggregate"}} - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Aggregate cases returns "OK" response - Given operation "AggregateCases" enabled - And new "AggregateCases" request - And body with value {"data": {"attributes": {"group_by": {"groups": ["status"], "limit": 14}, "query_filter": "service:case-api"}, "type": "aggregate"}} - When the request is sent - Then the response status is 200 OK - @team:DataDog/case-management Scenario: Archive case returns "Bad Request" response Given new "ArchiveCase" request @@ -115,30 +64,6 @@ Feature: Case Management When the request is sent Then the response status is 200 OK - @generated @skip @team:DataDog/case-management - Scenario: Bulk update cases returns "Bad Request" response - Given operation "BulkUpdateCases" enabled - And new "BulkUpdateCases" request - And body with value {"data": {"attributes": {"case_ids": ["case-id-1", "case-id-2"], "payload": {"priority": "P1"}, "type": "priority"}, "type": "bulk"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Bulk update cases returns "Not Found" response - Given operation "BulkUpdateCases" enabled - And new "BulkUpdateCases" request - And body with value {"data": {"attributes": {"case_ids": ["case-id-1", "case-id-2"], "payload": {"priority": "P1"}, "type": "priority"}, "type": "bulk"}} - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Bulk update cases returns "OK" response - Given operation "BulkUpdateCases" enabled - And new "BulkUpdateCases" request - And body with value {"data": {"attributes": {"case_ids": ["case-id-1", "case-id-2"], "payload": {"priority": "P1"}, "type": "priority"}, "type": "bulk"}} - When the request is sent - Then the response status is 200 OK - @team:DataDog/case-management Scenario: Comment case returns "Bad Request" response Given new "CommentCase" request @@ -165,27 +90,6 @@ Feature: Case Management When the request is sent Then the response status is 200 OK - @generated @skip @team:DataDog/case-management - Scenario: Count cases returns "Bad Request" response - Given operation "CountCases" enabled - And new "CountCases" request - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Count cases returns "Not Found" response - Given operation "CountCases" enabled - And new "CountCases" request - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Count cases returns "OK" response - Given operation "CountCases" enabled - And new "CountCases" request - When the request is sent - Then the response status is 200 OK - @generated @skip @team:DataDog/case-management Scenario: Create Jira issue for case returns "Accepted" response Given operation "CreateCaseJiraIssue" enabled @@ -240,30 +144,6 @@ Feature: Case Management When the request is sent Then the response status is 404 Not Found - @generated @skip @team:DataDog/case-management - Scenario: Create a case link returns "Bad Request" response - Given operation "CreateCaseLink" enabled - And new "CreateCaseLink" request - And body with value {"data": {"attributes": {"child_entity_id": "4417921d-0866-4a38-822c-6f2a0f65f77d", "child_entity_type": "CASE", "parent_entity_id": "bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f", "parent_entity_type": "CASE", "relationship": "BLOCKS"}, "type": "link"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Create a case link returns "Created" response - Given operation "CreateCaseLink" enabled - And new "CreateCaseLink" request - And body with value {"data": {"attributes": {"child_entity_id": "4417921d-0866-4a38-822c-6f2a0f65f77d", "child_entity_type": "CASE", "parent_entity_id": "bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f", "parent_entity_type": "CASE", "relationship": "BLOCKS"}, "type": "link"}} - When the request is sent - Then the response status is 201 Created - - @generated @skip @team:DataDog/case-management - Scenario: Create a case link returns "Not Found" response - Given operation "CreateCaseLink" enabled - And new "CreateCaseLink" request - And body with value {"data": {"attributes": {"child_entity_id": "4417921d-0866-4a38-822c-6f2a0f65f77d", "child_entity_type": "CASE", "parent_entity_id": "bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f", "parent_entity_type": "CASE", "relationship": "BLOCKS"}, "type": "link"}} - When the request is sent - Then the response status is 404 Not Found - @team:DataDog/case-management Scenario: Create a case returns "Bad Request" response Given new "CreateCase" request @@ -290,54 +170,6 @@ Feature: Case Management When the request is sent Then the response status is 404 Not Found - @generated @skip @team:DataDog/case-management - Scenario: Create a case view returns "Bad Request" response - Given operation "CreateCaseView" enabled - And new "CreateCaseView" request - And body with value {"data": {"attributes": {"name": "Open bugs", "project_id": "e555e290-ed65-49bd-ae18-8acbfcf18db7", "query": "status:open type:bug"}, "type": "view"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Create a case view returns "Created" response - Given operation "CreateCaseView" enabled - And new "CreateCaseView" request - And body with value {"data": {"attributes": {"name": "Open bugs", "project_id": "e555e290-ed65-49bd-ae18-8acbfcf18db7", "query": "status:open type:bug"}, "type": "view"}} - When the request is sent - Then the response status is 201 Created - - @generated @skip @team:DataDog/case-management - Scenario: Create a case view returns "Not Found" response - Given operation "CreateCaseView" enabled - And new "CreateCaseView" request - And body with value {"data": {"attributes": {"name": "Open bugs", "project_id": "e555e290-ed65-49bd-ae18-8acbfcf18db7", "query": "status:open type:bug"}, "type": "view"}} - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Create a maintenance window returns "Bad Request" response - Given operation "CreateMaintenanceWindow" enabled - And new "CreateMaintenanceWindow" request - And body with value {"data": {"attributes": {"end_at": "2026-06-01T06:00:00Z", "name": "Weekly maintenance", "query": "project:SEC", "start_at": "2026-06-01T00:00:00Z"}, "type": "maintenance_window"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Create a maintenance window returns "Created" response - Given operation "CreateMaintenanceWindow" enabled - And new "CreateMaintenanceWindow" request - And body with value {"data": {"attributes": {"end_at": "2026-06-01T06:00:00Z", "name": "Weekly maintenance", "query": "project:SEC", "start_at": "2026-06-01T00:00:00Z"}, "type": "maintenance_window"}} - When the request is sent - Then the response status is 201 Created - - @generated @skip @team:DataDog/case-management - Scenario: Create a maintenance window returns "Not Found" response - Given operation "CreateMaintenanceWindow" enabled - And new "CreateMaintenanceWindow" request - And body with value {"data": {"attributes": {"end_at": "2026-06-01T06:00:00Z", "name": "Weekly maintenance", "query": "project:SEC", "start_at": "2026-06-01T00:00:00Z"}, "type": "maintenance_window"}} - When the request is sent - Then the response status is 404 Not Found - @generated @skip @team:DataDog/case-management Scenario: Create a notification rule returns "Bad Request" response Given new "CreateProjectNotificationRule" request @@ -383,33 +215,6 @@ Feature: Case Management When the request is sent Then the response status is 404 Not Found - @generated @skip @team:DataDog/case-management - Scenario: Create an automation rule returns "Bad Request" response - Given operation "CreateCaseAutomationRule" enabled - And new "CreateCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"action": {"data": {"handle": "workflow-handle-123"}, "type": "execute_workflow"}, "name": "Auto-assign workflow", "state": "ENABLED", "trigger": {"data": {}, "type": "case_created"}}, "type": "rule"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Create an automation rule returns "Created" response - Given operation "CreateCaseAutomationRule" enabled - And new "CreateCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"action": {"data": {"handle": "workflow-handle-123"}, "type": "execute_workflow"}, "name": "Auto-assign workflow", "state": "ENABLED", "trigger": {"data": {}, "type": "case_created"}}, "type": "rule"}} - When the request is sent - Then the response status is 201 Created - - @generated @skip @team:DataDog/case-management - Scenario: Create an automation rule returns "Not Found" response - Given operation "CreateCaseAutomationRule" enabled - And new "CreateCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"action": {"data": {"handle": "workflow-handle-123"}, "type": "execute_workflow"}, "name": "Auto-assign workflow", "state": "ENABLED", "trigger": {"data": {}, "type": "case_created"}}, "type": "rule"}} - When the request is sent - Then the response status is 404 Not Found - @generated @skip @team:DataDog/case-management Scenario: Create investigation notebook for case returns "Bad Request" response Given operation "CreateCaseNotebook" enabled @@ -437,78 +242,6 @@ Feature: Case Management When the request is sent Then the response status is 404 Not Found - @generated @skip @team:DataDog/case-management - Scenario: Delete a case link returns "Bad Request" response - Given operation "DeleteCaseLink" enabled - And new "DeleteCaseLink" request - And request contains "link_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Delete a case link returns "No Content" response - Given operation "DeleteCaseLink" enabled - And new "DeleteCaseLink" request - And request contains "link_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 204 No Content - - @generated @skip @team:DataDog/case-management - Scenario: Delete a case link returns "Not Found" response - Given operation "DeleteCaseLink" enabled - And new "DeleteCaseLink" request - And request contains "link_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Delete a case view returns "Bad Request" response - Given operation "DeleteCaseView" enabled - And new "DeleteCaseView" request - And request contains "view_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Delete a case view returns "No Content" response - Given operation "DeleteCaseView" enabled - And new "DeleteCaseView" request - And request contains "view_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 204 No Content - - @generated @skip @team:DataDog/case-management - Scenario: Delete a case view returns "Not Found" response - Given operation "DeleteCaseView" enabled - And new "DeleteCaseView" request - And request contains "view_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Delete a maintenance window returns "Bad Request" response - Given operation "DeleteMaintenanceWindow" enabled - And new "DeleteMaintenanceWindow" request - And request contains "maintenance_window_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Delete a maintenance window returns "No Content" response - Given operation "DeleteMaintenanceWindow" enabled - And new "DeleteMaintenanceWindow" request - And request contains "maintenance_window_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 204 No Content - - @generated @skip @team:DataDog/case-management - Scenario: Delete a maintenance window returns "Not Found" response - Given operation "DeleteMaintenanceWindow" enabled - And new "DeleteMaintenanceWindow" request - And request contains "maintenance_window_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found - @generated @skip @team:DataDog/case-management Scenario: Delete a notification rule returns "API error response" response Given new "DeleteProjectNotificationRule" request @@ -525,24 +258,6 @@ Feature: Case Management When the request is sent Then the response status is 204 No Content - @generated @skip @team:DataDog/case-management - Scenario: Delete an automation rule returns "No Content" response - Given operation "DeleteCaseAutomationRule" enabled - And new "DeleteCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And request contains "rule_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 204 No Content - - @generated @skip @team:DataDog/case-management - Scenario: Delete an automation rule returns "Not Found" response - Given operation "DeleteCaseAutomationRule" enabled - And new "DeleteCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And request contains "rule_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found - @skip @team:DataDog/case-management Scenario: Delete case comment returns "Bad Request" response Given new "DeleteCaseComment" request @@ -591,108 +306,6 @@ Feature: Case Management When the request is sent Then the response status is 200 OK - @generated @skip @team:DataDog/case-management - Scenario: Disable an automation rule returns "Bad Request" response - Given operation "DisableCaseAutomationRule" enabled - And new "DisableCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And request contains "rule_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Disable an automation rule returns "Not Found" response - Given operation "DisableCaseAutomationRule" enabled - And new "DisableCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And request contains "rule_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Disable an automation rule returns "OK" response - Given operation "DisableCaseAutomationRule" enabled - And new "DisableCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And request contains "rule_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 200 OK - - @generated @skip @team:DataDog/case-management - Scenario: Enable an automation rule returns "Bad Request" response - Given operation "EnableCaseAutomationRule" enabled - And new "EnableCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And request contains "rule_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Enable an automation rule returns "Not Found" response - Given operation "EnableCaseAutomationRule" enabled - And new "EnableCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And request contains "rule_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Enable an automation rule returns "OK" response - Given operation "EnableCaseAutomationRule" enabled - And new "EnableCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And request contains "rule_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 200 OK - - @generated @skip @team:DataDog/case-management - Scenario: Favorite a project returns "Bad Request" response - Given operation "FavoriteCaseProject" enabled - And new "FavoriteCaseProject" request - And request contains "project_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Favorite a project returns "No Content" response - Given operation "FavoriteCaseProject" enabled - And new "FavoriteCaseProject" request - And request contains "project_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 204 No Content - - @generated @skip @team:DataDog/case-management - Scenario: Favorite a project returns "Not Found" response - Given operation "FavoriteCaseProject" enabled - And new "FavoriteCaseProject" request - And request contains "project_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Get a case view returns "Bad Request" response - Given operation "GetCaseView" enabled - And new "GetCaseView" request - And request contains "view_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Get a case view returns "Not Found" response - Given operation "GetCaseView" enabled - And new "GetCaseView" request - And request contains "view_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Get a case view returns "OK" response - Given operation "GetCaseView" enabled - And new "GetCaseView" request - And request contains "view_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 200 OK - @generated @skip @team:DataDog/case-management Scenario: Get all projects returns "Bad Request" response Given new "GetProjects" request @@ -711,57 +324,6 @@ Feature: Case Management When the request is sent Then the response status is 200 OK - @generated @skip @team:DataDog/case-management - Scenario: Get an automation rule returns "Bad Request" response - Given operation "GetCaseAutomationRule" enabled - And new "GetCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And request contains "rule_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Get an automation rule returns "Not Found" response - Given operation "GetCaseAutomationRule" enabled - And new "GetCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And request contains "rule_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Get an automation rule returns "OK" response - Given operation "GetCaseAutomationRule" enabled - And new "GetCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And request contains "rule_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 200 OK - - @generated @skip @team:DataDog/case-management - Scenario: Get case timeline returns "Bad Request" response - Given operation "ListCaseTimeline" enabled - And new "ListCaseTimeline" request - And request contains "case_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Get case timeline returns "Not Found" response - Given operation "ListCaseTimeline" enabled - And new "ListCaseTimeline" request - And request contains "case_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Get case timeline returns "OK" response - Given operation "ListCaseTimeline" enabled - And new "ListCaseTimeline" request - And request contains "case_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 200 OK - @generated @skip @team:DataDog/case-management Scenario: Get notification rules returns "Bad Request" response Given new "GetProjectNotificationRules" request @@ -890,147 +452,6 @@ Feature: Case Management When the request is sent Then the response status is 404 Not Found - @generated @skip @team:DataDog/case-management - Scenario: List automation rules returns "Bad Request" response - Given operation "ListCaseAutomationRules" enabled - And new "ListCaseAutomationRules" request - And request contains "project_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: List automation rules returns "Not Found" response - Given operation "ListCaseAutomationRules" enabled - And new "ListCaseAutomationRules" request - And request contains "project_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: List automation rules returns "OK" response - Given operation "ListCaseAutomationRules" enabled - And new "ListCaseAutomationRules" request - And request contains "project_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 200 OK - - @generated @skip @team:DataDog/case-management - Scenario: List case links returns "Bad Request" response - Given operation "ListCaseLinks" enabled - And new "ListCaseLinks" request - And request contains "entity_type" parameter from "REPLACE.ME" - And request contains "entity_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: List case links returns "Not Found" response - Given operation "ListCaseLinks" enabled - And new "ListCaseLinks" request - And request contains "entity_type" parameter from "REPLACE.ME" - And request contains "entity_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: List case links returns "OK" response - Given operation "ListCaseLinks" enabled - And new "ListCaseLinks" request - And request contains "entity_type" parameter from "REPLACE.ME" - And request contains "entity_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 200 OK - - @generated @skip @team:DataDog/case-management - Scenario: List case views returns "Bad Request" response - Given operation "ListCaseViews" enabled - And new "ListCaseViews" request - And request contains "project_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: List case views returns "Not Found" response - Given operation "ListCaseViews" enabled - And new "ListCaseViews" request - And request contains "project_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: List case views returns "OK" response - Given operation "ListCaseViews" enabled - And new "ListCaseViews" request - And request contains "project_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 200 OK - - @generated @skip @team:DataDog/case-management - Scenario: List case watchers returns "Bad Request" response - Given operation "ListCaseWatchers" enabled - And new "ListCaseWatchers" request - And request contains "case_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: List case watchers returns "Not Found" response - Given operation "ListCaseWatchers" enabled - And new "ListCaseWatchers" request - And request contains "case_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: List case watchers returns "OK" response - Given operation "ListCaseWatchers" enabled - And new "ListCaseWatchers" request - And request contains "case_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 200 OK - - @generated @skip @team:DataDog/case-management - Scenario: List maintenance windows returns "Bad Request" response - Given operation "ListMaintenanceWindows" enabled - And new "ListMaintenanceWindows" request - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: List maintenance windows returns "Not Found" response - Given operation "ListMaintenanceWindows" enabled - And new "ListMaintenanceWindows" request - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: List maintenance windows returns "OK" response - Given operation "ListMaintenanceWindows" enabled - And new "ListMaintenanceWindows" request - When the request is sent - Then the response status is 200 OK - - @generated @skip @team:DataDog/case-management - Scenario: List project favorites returns "Bad Request" response - Given operation "ListUserCaseProjectFavorites" enabled - And new "ListUserCaseProjectFavorites" request - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: List project favorites returns "Not Found" response - Given operation "ListUserCaseProjectFavorites" enabled - And new "ListUserCaseProjectFavorites" request - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: List project favorites returns "OK" response - Given operation "ListUserCaseProjectFavorites" enabled - And new "ListUserCaseProjectFavorites" request - When the request is sent - Then the response status is 200 OK - @generated @skip @team:DataDog/case-management Scenario: Remove Jira issue link from case returns "Bad Request" response Given operation "UnlinkJiraIssue" enabled @@ -1069,33 +490,6 @@ Feature: Case Management When the request is sent Then the response status is 204 No Content - @generated @skip @team:DataDog/case-management - Scenario: Remove insights from a case returns "Bad Request" response - Given operation "RemoveCaseInsights" enabled - And new "RemoveCaseInsights" request - And request contains "case_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"insights": [{"ref": "/monitors/12345?q=total", "resource_id": "12345", "type": "SECURITY_SIGNAL"}]}, "type": "case"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Remove insights from a case returns "Not Found" response - Given operation "RemoveCaseInsights" enabled - And new "RemoveCaseInsights" request - And request contains "case_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"insights": [{"ref": "/monitors/12345?q=total", "resource_id": "12345", "type": "SECURITY_SIGNAL"}]}, "type": "case"}} - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Remove insights from a case returns "OK" response - Given operation "RemoveCaseInsights" enabled - And new "RemoveCaseInsights" request - And request contains "case_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"insights": [{"ref": "/monitors/12345?q=total", "resource_id": "12345", "type": "SECURITY_SIGNAL"}]}, "type": "case"}} - When the request is sent - Then the response status is 200 OK - @generated @skip @team:DataDog/case-management Scenario: Search cases returns "Bad Request" response Given new "SearchCases" request @@ -1175,111 +569,6 @@ Feature: Case Management When the request is sent Then the response status is 200 OK - @generated @skip @team:DataDog/case-management - Scenario: Unfavorite a project returns "Bad Request" response - Given operation "UnfavoriteCaseProject" enabled - And new "UnfavoriteCaseProject" request - And request contains "project_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Unfavorite a project returns "No Content" response - Given operation "UnfavoriteCaseProject" enabled - And new "UnfavoriteCaseProject" request - And request contains "project_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 204 No Content - - @generated @skip @team:DataDog/case-management - Scenario: Unfavorite a project returns "Not Found" response - Given operation "UnfavoriteCaseProject" enabled - And new "UnfavoriteCaseProject" request - And request contains "project_id" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Unwatch a case returns "Bad Request" response - Given operation "UnwatchCase" enabled - And new "UnwatchCase" request - And request contains "case_id" parameter from "REPLACE.ME" - And request contains "user_uuid" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Unwatch a case returns "No Content" response - Given operation "UnwatchCase" enabled - And new "UnwatchCase" request - And request contains "case_id" parameter from "REPLACE.ME" - And request contains "user_uuid" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 204 No Content - - @generated @skip @team:DataDog/case-management - Scenario: Unwatch a case returns "Not Found" response - Given operation "UnwatchCase" enabled - And new "UnwatchCase" request - And request contains "case_id" parameter from "REPLACE.ME" - And request contains "user_uuid" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Update a case view returns "Bad Request" response - Given operation "UpdateCaseView" enabled - And new "UpdateCaseView" request - And request contains "view_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {}, "type": "view"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Update a case view returns "Not Found" response - Given operation "UpdateCaseView" enabled - And new "UpdateCaseView" request - And request contains "view_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {}, "type": "view"}} - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Update a case view returns "OK" response - Given operation "UpdateCaseView" enabled - And new "UpdateCaseView" request - And request contains "view_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {}, "type": "view"}} - When the request is sent - Then the response status is 200 OK - - @generated @skip @team:DataDog/case-management - Scenario: Update a maintenance window returns "Bad Request" response - Given operation "UpdateMaintenanceWindow" enabled - And new "UpdateMaintenanceWindow" request - And request contains "maintenance_window_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {}, "type": "maintenance_window"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Update a maintenance window returns "Not Found" response - Given operation "UpdateMaintenanceWindow" enabled - And new "UpdateMaintenanceWindow" request - And request contains "maintenance_window_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {}, "type": "maintenance_window"}} - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Update a maintenance window returns "OK" response - Given operation "UpdateMaintenanceWindow" enabled - And new "UpdateMaintenanceWindow" request - And request contains "maintenance_window_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {}, "type": "maintenance_window"}} - When the request is sent - Then the response status is 200 OK - @generated @skip @team:DataDog/case-management Scenario: Update a notification rule returns "Bad Request" response Given new "UpdateProjectNotificationRule" request @@ -1333,36 +622,6 @@ Feature: Case Management And the response "data" has field "id" And the response "data.attributes.name" is equal to "Updated Project Name {{ unique }}" - @generated @skip @team:DataDog/case-management - Scenario: Update an automation rule returns "Bad Request" response - Given operation "UpdateCaseAutomationRule" enabled - And new "UpdateCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And request contains "rule_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"action": {"data": {"handle": "workflow-handle-123"}, "type": "execute_workflow"}, "name": "Auto-assign workflow", "state": "ENABLED", "trigger": {"data": {}, "type": "case_created"}}, "type": "rule"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Update an automation rule returns "Not Found" response - Given operation "UpdateCaseAutomationRule" enabled - And new "UpdateCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And request contains "rule_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"action": {"data": {"handle": "workflow-handle-123"}, "type": "execute_workflow"}, "name": "Auto-assign workflow", "state": "ENABLED", "trigger": {"data": {}, "type": "case_created"}}, "type": "rule"}} - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Update an automation rule returns "OK" response - Given operation "UpdateCaseAutomationRule" enabled - And new "UpdateCaseAutomationRule" request - And request contains "project_id" parameter from "REPLACE.ME" - And request contains "rule_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"action": {"data": {"handle": "workflow-handle-123"}, "type": "execute_workflow"}, "name": "Auto-assign workflow", "state": "ENABLED", "trigger": {"data": {}, "type": "case_created"}}, "type": "rule"}} - When the request is sent - Then the response status is 200 OK - @skip @team:DataDog/case-management Scenario: Update case attributes returns "Bad Request" response Given new "UpdateAttributes" request @@ -1389,36 +648,6 @@ Feature: Case Management When the request is sent Then the response status is 200 OK - @generated @skip @team:DataDog/case-management - Scenario: Update case comment returns "Bad Request" response - Given operation "UpdateCaseComment" enabled - And new "UpdateCaseComment" request - And request contains "case_id" parameter from "REPLACE.ME" - And request contains "cell_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"comment": "Updated comment text"}, "type": "case"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Update case comment returns "Not Found" response - Given operation "UpdateCaseComment" enabled - And new "UpdateCaseComment" request - And request contains "case_id" parameter from "REPLACE.ME" - And request contains "cell_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"comment": "Updated comment text"}, "type": "case"}} - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Update case comment returns "OK" response - Given operation "UpdateCaseComment" enabled - And new "UpdateCaseComment" request - And request contains "case_id" parameter from "REPLACE.ME" - And request contains "cell_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"comment": "Updated comment text"}, "type": "case"}} - When the request is sent - Then the response status is 200 OK - @skip @team:DataDog/case-management Scenario: Update case custom attribute returns "Bad Request" response Given new "UpdateCaseCustomAttribute" request @@ -1479,33 +708,6 @@ Feature: Case Management When the request is sent Then the response status is 200 OK - @generated @skip @team:DataDog/case-management - Scenario: Update case due date returns "Bad Request" response - Given operation "UpdateCaseDueDate" enabled - And new "UpdateCaseDueDate" request - And request contains "case_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"due_date": "2026-12-31"}, "type": "case"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Update case due date returns "Not Found" response - Given operation "UpdateCaseDueDate" enabled - And new "UpdateCaseDueDate" request - And request contains "case_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"due_date": "2026-12-31"}, "type": "case"}} - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Update case due date returns "OK" response - Given operation "UpdateCaseDueDate" enabled - And new "UpdateCaseDueDate" request - And request contains "case_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"due_date": "2026-12-31"}, "type": "case"}} - When the request is sent - Then the response status is 200 OK - @team:DataDog/case-management Scenario: Update case priority returns "Bad Request" response Given new "UpdatePriority" request @@ -1560,33 +762,6 @@ Feature: Case Management When the request is sent Then the response status is 200 OK - @generated @skip @team:DataDog/case-management - Scenario: Update case resolved reason returns "Bad Request" response - Given operation "UpdateCaseResolvedReason" enabled - And new "UpdateCaseResolvedReason" request - And request contains "case_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"security_resolved_reason": "FALSE_POSITIVE"}, "type": "case"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Update case resolved reason returns "Not Found" response - Given operation "UpdateCaseResolvedReason" enabled - And new "UpdateCaseResolvedReason" request - And request contains "case_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"security_resolved_reason": "FALSE_POSITIVE"}, "type": "case"}} - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Update case resolved reason returns "OK" response - Given operation "UpdateCaseResolvedReason" enabled - And new "UpdateCaseResolvedReason" request - And request contains "case_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"security_resolved_reason": "FALSE_POSITIVE"}, "type": "case"}} - When the request is sent - Then the response status is 200 OK - @team:DataDog/case-management Scenario: Update case status returns "Bad Request" response Given new "UpdateStatus" request @@ -1639,30 +814,3 @@ Feature: Case Management And body with value {"data": {"attributes": {"title": "[UPDATED] Memory leak investigation on API"}, "type": "case"}} When the request is sent Then the response status is 200 OK - - @generated @skip @team:DataDog/case-management - Scenario: Watch a case returns "Bad Request" response - Given operation "WatchCase" enabled - And new "WatchCase" request - And request contains "case_id" parameter from "REPLACE.ME" - And request contains "user_uuid" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Watch a case returns "Created" response - Given operation "WatchCase" enabled - And new "WatchCase" request - And request contains "case_id" parameter from "REPLACE.ME" - And request contains "user_uuid" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 201 Created - - @generated @skip @team:DataDog/case-management - Scenario: Watch a case returns "Not Found" response - Given operation "WatchCase" enabled - And new "WatchCase" request - And request contains "case_id" parameter from "REPLACE.ME" - And request contains "user_uuid" parameter from "REPLACE.ME" - When the request is sent - Then the response status is 404 Not Found diff --git a/tests/v2/features/case_management_attribute.feature b/tests/v2/features/case_management_attribute.feature index 47806e809c..3ac06e724b 100644 --- a/tests/v2/features/case_management_attribute.feature +++ b/tests/v2/features/case_management_attribute.feature @@ -75,33 +75,3 @@ Feature: Case Management Attribute Given new "GetAllCustomAttributes" request When the request is sent Then the response status is 200 OK - - @generated @skip @team:DataDog/case-management - Scenario: Update custom attribute config returns "Bad Request" response - Given operation "UpdateCustomAttributeConfig" enabled - And new "UpdateCustomAttributeConfig" request - And request contains "case_type_id" parameter from "REPLACE.ME" - And request contains "custom_attribute_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"description": "Updated description.", "display_name": "AWS Region", "type": "NUMBER", "type_data": {"options": [{"value": "us-east-1"}]}}, "type": "custom_attribute"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Update custom attribute config returns "Not Found" response - Given operation "UpdateCustomAttributeConfig" enabled - And new "UpdateCustomAttributeConfig" request - And request contains "case_type_id" parameter from "REPLACE.ME" - And request contains "custom_attribute_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"description": "Updated description.", "display_name": "AWS Region", "type": "NUMBER", "type_data": {"options": [{"value": "us-east-1"}]}}, "type": "custom_attribute"}} - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Update custom attribute config returns "OK" response - Given operation "UpdateCustomAttributeConfig" enabled - And new "UpdateCustomAttributeConfig" request - And request contains "case_type_id" parameter from "REPLACE.ME" - And request contains "custom_attribute_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"description": "Updated description.", "display_name": "AWS Region", "type": "NUMBER", "type_data": {"options": [{"value": "us-east-1"}]}}, "type": "custom_attribute"}} - When the request is sent - Then the response status is 200 OK diff --git a/tests/v2/features/case_management_type.feature b/tests/v2/features/case_management_type.feature index 260ac3d3c4..0773d7d241 100644 --- a/tests/v2/features/case_management_type.feature +++ b/tests/v2/features/case_management_type.feature @@ -44,30 +44,3 @@ Feature: Case Management Type Given new "GetAllCaseTypes" request When the request is sent Then the response status is 200 OK - - @generated @skip @team:DataDog/case-management - Scenario: Update a case type returns "Bad Request" response - Given operation "UpdateCaseType" enabled - And new "UpdateCaseType" request - And request contains "case_type_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"description": "Investigations done in case management", "emoji": "\ud83d\udd75\ud83c\udffb\u200d\u2642\ufe0f", "name": "Investigation"}, "type": "case_type"}} - When the request is sent - Then the response status is 400 Bad Request - - @generated @skip @team:DataDog/case-management - Scenario: Update a case type returns "Not Found" response - Given operation "UpdateCaseType" enabled - And new "UpdateCaseType" request - And request contains "case_type_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"description": "Investigations done in case management", "emoji": "\ud83d\udd75\ud83c\udffb\u200d\u2642\ufe0f", "name": "Investigation"}, "type": "case_type"}} - When the request is sent - Then the response status is 404 Not Found - - @generated @skip @team:DataDog/case-management - Scenario: Update a case type returns "OK" response - Given operation "UpdateCaseType" enabled - And new "UpdateCaseType" request - And request contains "case_type_id" parameter from "REPLACE.ME" - And body with value {"data": {"attributes": {"description": "Investigations done in case management", "emoji": "\ud83d\udd75\ud83c\udffb\u200d\u2642\ufe0f", "name": "Investigation"}, "type": "case_type"}} - When the request is sent - Then the response status is 200 OK diff --git a/tests/v2/features/model_lab_api.feature b/tests/v2/features/model_lab_api.feature new file mode 100644 index 0000000000..997a9c389f --- /dev/null +++ b/tests/v2/features/model_lab_api.feature @@ -0,0 +1,359 @@ +@endpoint(model-lab-api) @endpoint(model-lab-api-v2) +Feature: Model Lab API + Manage Model Lab projects, runs, artifacts, and facets for ML experiment + tracking. + + Background: + Given a valid "apiKeyAuth" key in the system + And a valid "appKeyAuth" key in the system + And an instance of "ModelLabAPI" API + + @generated @skip @team:DataDog/ml-observability + Scenario: Delete a Model Lab run returns "Bad Request" response + Given operation "DeleteModelLabRun" enabled + And new "DeleteModelLabRun" request + And request contains "run_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 400 Bad Request + + @replay-only @team:DataDog/ml-observability + Scenario: Delete a Model Lab run returns "No Content" response + Given operation "DeleteModelLabRun" enabled + And new "DeleteModelLabRun" request + And request contains "run_id" parameter with value 70158 + When the request is sent + Then the response status is 204 No Content + + @replay-only @team:DataDog/ml-observability + Scenario: Delete a Model Lab run returns "Not Found" response + Given operation "DeleteModelLabRun" enabled + And new "DeleteModelLabRun" request + And request contains "run_id" parameter with value 999999 + When the request is sent + Then the response status is 404 Not Found + + @replay-only @team:DataDog/ml-observability + Scenario: Download artifact content returns "OK" response + Given operation "GetModelLabArtifactContent" enabled + And new "GetModelLabArtifactContent" request + And request contains "project_id" parameter with value "2387" + And request contains "artifact_path" parameter with value "f635c73b70594ab6bb6e212cdf87d0d5/artifacts/lora_model/adapter_config.json" + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/ml-observability + Scenario: Get Model Lab artifact content returns "Bad Request" response + Given operation "GetModelLabArtifactContent" enabled + And new "GetModelLabArtifactContent" request + And request contains "project_id" parameter from "REPLACE.ME" + And request contains "artifact_path" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 400 Bad Request + + @generated @skip @team:DataDog/ml-observability + Scenario: Get Model Lab artifact content returns "OK" response + Given operation "GetModelLabArtifactContent" enabled + And new "GetModelLabArtifactContent" request + And request contains "project_id" parameter from "REPLACE.ME" + And request contains "artifact_path" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/ml-observability + Scenario: Get a Model Lab project returns "Bad Request" response + Given operation "GetModelLabProject" enabled + And new "GetModelLabProject" request + And request contains "project_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 400 Bad Request + + @replay-only @team:DataDog/ml-observability + Scenario: Get a Model Lab project returns "Not Found" response + Given operation "GetModelLabProject" enabled + And new "GetModelLabProject" request + And request contains "project_id" parameter with value 999999 + When the request is sent + Then the response status is 404 Not Found + + @replay-only @team:DataDog/ml-observability + Scenario: Get a Model Lab project returns "OK" response + Given operation "GetModelLabProject" enabled + And new "GetModelLabProject" request + And request contains "project_id" parameter with value 2387 + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/ml-observability + Scenario: Get a Model Lab run returns "Bad Request" response + Given operation "GetModelLabRun" enabled + And new "GetModelLabRun" request + And request contains "run_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 400 Bad Request + + @replay-only @team:DataDog/ml-observability + Scenario: Get a Model Lab run returns "Not Found" response + Given operation "GetModelLabRun" enabled + And new "GetModelLabRun" request + And request contains "run_id" parameter with value 999999 + When the request is sent + Then the response status is 404 Not Found + + @replay-only @team:DataDog/ml-observability + Scenario: Get a Model Lab run returns "OK" response + Given operation "GetModelLabRun" enabled + And new "GetModelLabRun" request + And request contains "run_id" parameter with value 70158 + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/ml-observability + Scenario: List Model Lab project artifacts returns "Bad Request" response + Given operation "ListModelLabProjectArtifacts" enabled + And new "ListModelLabProjectArtifacts" request + And request contains "project_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 400 Bad Request + + @replay-only @team:DataDog/ml-observability + Scenario: List Model Lab project artifacts returns "OK" response + Given operation "ListModelLabProjectArtifacts" enabled + And new "ListModelLabProjectArtifacts" request + And request contains "project_id" parameter with value 2387 + When the request is sent + Then the response status is 200 OK + + @replay-only @team:DataDog/ml-observability + Scenario: List Model Lab project facet keys returns "OK" response + Given operation "ListModelLabProjectFacetKeys" enabled + And new "ListModelLabProjectFacetKeys" request + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/ml-observability + Scenario: List Model Lab project facet values returns "Bad Request" response + Given operation "ListModelLabProjectFacetValues" enabled + And new "ListModelLabProjectFacetValues" request + And request contains "facet_type" parameter from "REPLACE.ME" + And request contains "facet_name" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 400 Bad Request + + @replay-only @team:DataDog/ml-observability + Scenario: List Model Lab project facet values returns "OK" response + Given operation "ListModelLabProjectFacetValues" enabled + And new "ListModelLabProjectFacetValues" request + And request contains "facet_type" parameter with value "tag" + And request contains "facet_name" parameter with value "model" + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/ml-observability + Scenario: List Model Lab projects returns "Bad Request" response + Given operation "ListModelLabProjects" enabled + And new "ListModelLabProjects" request + When the request is sent + Then the response status is 400 Bad Request + + @replay-only @team:DataDog/ml-observability + Scenario: List Model Lab projects returns "OK" response + Given operation "ListModelLabProjects" enabled + And new "ListModelLabProjects" request + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/ml-observability + Scenario: List Model Lab run artifacts returns "Bad Request" response + Given operation "ListModelLabRunArtifacts" enabled + And new "ListModelLabRunArtifacts" request + And request contains "run_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 400 Bad Request + + @generated @skip @team:DataDog/ml-observability + Scenario: List Model Lab run artifacts returns "Not Found" response + Given operation "ListModelLabRunArtifacts" enabled + And new "ListModelLabRunArtifacts" request + And request contains "run_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 404 Not Found + + @replay-only @team:DataDog/ml-observability + Scenario: List Model Lab run artifacts returns "OK" response + Given operation "ListModelLabRunArtifacts" enabled + And new "ListModelLabRunArtifacts" request + And request contains "run_id" parameter with value 70158 + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/ml-observability + Scenario: List Model Lab run facet keys returns "Bad Request" response + Given operation "ListModelLabRunFacetKeys" enabled + And new "ListModelLabRunFacetKeys" request + And request contains "filter[project_id]" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 400 Bad Request + + @generated @skip @team:DataDog/ml-observability + Scenario: List Model Lab run facet keys returns "Not Found" response + Given operation "ListModelLabRunFacetKeys" enabled + And new "ListModelLabRunFacetKeys" request + And request contains "filter[project_id]" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 404 Not Found + + @replay-only @team:DataDog/ml-observability + Scenario: List Model Lab run facet keys returns "OK" response + Given operation "ListModelLabRunFacetKeys" enabled + And new "ListModelLabRunFacetKeys" request + And request contains "filter[project_id]" parameter with value 2387 + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/ml-observability + Scenario: List Model Lab run facet values returns "Bad Request" response + Given operation "ListModelLabRunFacetValues" enabled + And new "ListModelLabRunFacetValues" request + And request contains "filter[project_id]" parameter from "REPLACE.ME" + And request contains "facet_type" parameter from "REPLACE.ME" + And request contains "facet_name" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 400 Bad Request + + @generated @skip @team:DataDog/ml-observability + Scenario: List Model Lab run facet values returns "Not Found" response + Given operation "ListModelLabRunFacetValues" enabled + And new "ListModelLabRunFacetValues" request + And request contains "filter[project_id]" parameter from "REPLACE.ME" + And request contains "facet_type" parameter from "REPLACE.ME" + And request contains "facet_name" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 404 Not Found + + @replay-only @team:DataDog/ml-observability + Scenario: List Model Lab run facet values returns "OK" response + Given operation "ListModelLabRunFacetValues" enabled + And new "ListModelLabRunFacetValues" request + And request contains "filter[project_id]" parameter with value 2387 + And request contains "facet_type" parameter with value "tag" + And request contains "facet_name" parameter with value "model" + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/ml-observability + Scenario: List Model Lab runs returns "Bad Request" response + Given operation "ListModelLabRuns" enabled + And new "ListModelLabRuns" request + When the request is sent + Then the response status is 400 Bad Request + + @replay-only @team:DataDog/ml-observability + Scenario: List Model Lab runs returns "OK" response + Given operation "ListModelLabRuns" enabled + And new "ListModelLabRuns" request + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/ml-observability + Scenario: Pin a Model Lab run returns "Bad Request" response + Given operation "PinModelLabRun" enabled + And new "PinModelLabRun" request + And request contains "run_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 400 Bad Request + + @replay-only @team:DataDog/ml-observability + Scenario: Pin a Model Lab run returns "No Content" response + Given operation "PinModelLabRun" enabled + And new "PinModelLabRun" request + And request contains "run_id" parameter with value 70158 + When the request is sent + Then the response status is 204 No Content + + @replay-only @team:DataDog/ml-observability + Scenario: Pin a Model Lab run returns "Not Found" response + Given operation "PinModelLabRun" enabled + And new "PinModelLabRun" request + And request contains "run_id" parameter with value 999999 + When the request is sent + Then the response status is 404 Not Found + + @generated @skip @team:DataDog/ml-observability + Scenario: Remove star from a Model Lab project returns "Bad Request" response + Given operation "UnstarModelLabProject" enabled + And new "UnstarModelLabProject" request + And request contains "project_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 400 Bad Request + + @generated @skip @team:DataDog/ml-observability + Scenario: Remove star from a Model Lab project returns "No Content" response + Given operation "UnstarModelLabProject" enabled + And new "UnstarModelLabProject" request + And request contains "project_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 204 No Content + + @generated @skip @team:DataDog/ml-observability + Scenario: Remove star from a Model Lab project returns "Not Found" response + Given operation "UnstarModelLabProject" enabled + And new "UnstarModelLabProject" request + And request contains "project_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 404 Not Found + + @generated @skip @team:DataDog/ml-observability + Scenario: Star a Model Lab project returns "Bad Request" response + Given operation "StarModelLabProject" enabled + And new "StarModelLabProject" request + And request contains "project_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 400 Bad Request + + @replay-only @team:DataDog/ml-observability + Scenario: Star a Model Lab project returns "No Content" response + Given operation "StarModelLabProject" enabled + And new "StarModelLabProject" request + And request contains "project_id" parameter with value 2387 + When the request is sent + Then the response status is 204 No Content + + @replay-only @team:DataDog/ml-observability + Scenario: Star a Model Lab project returns "Not Found" response + Given operation "StarModelLabProject" enabled + And new "StarModelLabProject" request + And request contains "project_id" parameter with value 999999 + When the request is sent + Then the response status is 404 Not Found + + @generated @skip @team:DataDog/ml-observability + Scenario: Unpin a Model Lab run returns "Bad Request" response + Given operation "UnpinModelLabRun" enabled + And new "UnpinModelLabRun" request + And request contains "run_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 400 Bad Request + + @replay-only @team:DataDog/ml-observability + Scenario: Unpin a Model Lab run returns "No Content" response + Given operation "UnpinModelLabRun" enabled + And new "UnpinModelLabRun" request + And request contains "run_id" parameter with value 70158 + When the request is sent + Then the response status is 204 No Content + + @generated @skip @team:DataDog/ml-observability + Scenario: Unpin a Model Lab run returns "Not Found" response + Given operation "UnpinModelLabRun" enabled + And new "UnpinModelLabRun" request + And request contains "run_id" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 404 Not Found + + @replay-only @team:DataDog/ml-observability + Scenario: Unstar a Model Lab project returns "No Content" response + Given operation "UnstarModelLabProject" enabled + And new "UnstarModelLabProject" request + And request contains "project_id" parameter with value 2387 + When the request is sent + Then the response status is 204 No Content diff --git a/tests/v2/features/undo.json b/tests/v2/features/undo.json index 2abb97ee5c..9d902f855e 100644 --- a/tests/v2/features/undo.json +++ b/tests/v2/features/undo.json @@ -790,49 +790,6 @@ "type": "safe" } }, - "AggregateCases": { - "tag": "Case Management", - "undo": { - "type": "safe" - } - }, - "BulkUpdateCases": { - "tag": "Case Management", - "undo": { - "type": "safe" - } - }, - "CountCases": { - "tag": "Case Management", - "undo": { - "type": "safe" - } - }, - "ListCaseLinks": { - "tag": "Case Management", - "undo": { - "type": "safe" - } - }, - "CreateCaseLink": { - "tag": "Case Management", - "undo": { - "operationId": "DeleteCaseLink", - "parameters": [ - { - "name": "link_id", - "source": "data.id" - } - ], - "type": "unsafe" - } - }, - "DeleteCaseLink": { - "tag": "Case Management", - "undo": { - "type": "idempotent" - } - }, "GetProjects": { "tag": "Case Management", "undo": { @@ -852,12 +809,6 @@ "type": "unsafe" } }, - "ListUserCaseProjectFavorites": { - "tag": "Case Management", - "undo": { - "type": "safe" - } - }, "DeleteProject": { "tag": "Case Management", "undo": { @@ -876,25 +827,6 @@ "type": "idempotent" } }, - "UnfavoriteCaseProject": { - "tag": "Case Management", - "undo": { - "type": "idempotent" - } - }, - "FavoriteCaseProject": { - "tag": "Case Management", - "undo": { - "operationId": "UnfavoriteCaseProject", - "parameters": [ - { - "name": "project_id", - "source": "path.project_id" - } - ], - "type": "unsafe" - } - }, "GetProjectNotificationRules": { "tag": "Case Management", "undo": { @@ -930,59 +862,6 @@ "type": "idempotent" } }, - "ListCaseAutomationRules": { - "tag": "Case Management", - "undo": { - "type": "safe" - } - }, - "CreateCaseAutomationRule": { - "tag": "Case Management", - "undo": { - "operationId": "DeleteCaseAutomationRule", - "parameters": [ - { - "name": "project_id", - "source": "path.project_id" - }, - { - "name": "rule_id", - "source": "data.id" - } - ], - "type": "unsafe" - } - }, - "DeleteCaseAutomationRule": { - "tag": "Case Management", - "undo": { - "type": "idempotent" - } - }, - "GetCaseAutomationRule": { - "tag": "Case Management", - "undo": { - "type": "safe" - } - }, - "UpdateCaseAutomationRule": { - "tag": "Case Management", - "undo": { - "type": "idempotent" - } - }, - "DisableCaseAutomationRule": { - "tag": "Case Management", - "undo": { - "type": "idempotent" - } - }, - "EnableCaseAutomationRule": { - "tag": "Case Management", - "undo": { - "type": "idempotent" - } - }, "GetAllCaseTypes": { "tag": "Case Management Type", "undo": { @@ -1007,12 +886,6 @@ "type": "idempotent" } }, - "UpdateCaseType": { - "tag": "Case Management Type", - "undo": { - "type": "idempotent" - } - }, "GetAllCustomAttributeConfigsByCaseType": { "tag": "Case Management Attribute", "undo": { @@ -1031,49 +904,6 @@ "type": "idempotent" } }, - "UpdateCustomAttributeConfig": { - "tag": "Case Management Attribute", - "undo": { - "type": "idempotent" - } - }, - "ListCaseViews": { - "tag": "Case Management", - "undo": { - "type": "safe" - } - }, - "CreateCaseView": { - "tag": "Case Management", - "undo": { - "operationId": "DeleteCaseView", - "parameters": [ - { - "name": "view_id", - "source": "data.id" - } - ], - "type": "unsafe" - } - }, - "DeleteCaseView": { - "tag": "Case Management", - "undo": { - "type": "idempotent" - } - }, - "GetCaseView": { - "tag": "Case Management", - "undo": { - "type": "safe" - } - }, - "UpdateCaseView": { - "tag": "Case Management", - "undo": { - "type": "idempotent" - } - }, "GetCase": { "tag": "Case Management", "undo": { @@ -1110,12 +940,6 @@ "type": "idempotent" } }, - "UpdateCaseComment": { - "tag": "Case Management", - "undo": { - "type": "idempotent" - } - }, "DeleteCaseCustomAttribute": { "tag": "Case Management", "undo": { @@ -1134,24 +958,6 @@ "type": "idempotent" } }, - "UpdateCaseDueDate": { - "tag": "Case Management", - "undo": { - "type": "idempotent" - } - }, - "RemoveCaseInsights": { - "tag": "Case Management", - "undo": { - "type": "idempotent" - } - }, - "AddCaseInsights": { - "tag": "Case Management", - "undo": { - "type": "safe" - } - }, "UpdatePriority": { "tag": "Case Management", "undo": { @@ -1208,24 +1014,12 @@ "type": "unsafe" } }, - "UpdateCaseResolvedReason": { - "tag": "Case Management", - "undo": { - "type": "idempotent" - } - }, "UpdateStatus": { "tag": "Case Management", "undo": { "type": "idempotent" } }, - "ListCaseTimeline": { - "tag": "Case Management", - "undo": { - "type": "safe" - } - }, "UpdateCaseTitle": { "tag": "Case Management", "undo": { @@ -1244,35 +1038,6 @@ "type": "idempotent" } }, - "ListCaseWatchers": { - "tag": "Case Management", - "undo": { - "type": "safe" - } - }, - "UnwatchCase": { - "tag": "Case Management", - "undo": { - "type": "idempotent" - } - }, - "WatchCase": { - "tag": "Case Management", - "undo": { - "operationId": "UnwatchCase", - "parameters": [ - { - "name": "case_id", - "source": "path.case_id" - }, - { - "name": "user_uuid", - "source": "path.user_uuid" - } - ], - "type": "unsafe" - } - }, "ListCatalogEntity": { "tag": "Software Catalog", "undo": { @@ -4099,37 +3864,6 @@ "type": "safe" } }, - "ListMaintenanceWindows": { - "tag": "Case Management", - "undo": { - "type": "safe" - } - }, - "CreateMaintenanceWindow": { - "tag": "Case Management", - "undo": { - "operationId": "DeleteMaintenanceWindow", - "parameters": [ - { - "name": "maintenance_window_id", - "source": "data.id" - } - ], - "type": "unsafe" - } - }, - "DeleteMaintenanceWindow": { - "tag": "Case Management", - "undo": { - "type": "idempotent" - } - }, - "UpdateMaintenanceWindow": { - "tag": "Case Management", - "undo": { - "type": "idempotent" - } - }, "ListTagConfigurations": { "tag": "Metrics", "undo": { @@ -4222,6 +3956,118 @@ "type": "safe" } }, + "GetModelLabArtifactContent": { + "tag": "Model Lab API", + "undo": { + "type": "safe" + } + }, + "ListModelLabRunFacetKeys": { + "tag": "Model Lab API", + "undo": { + "type": "safe" + } + }, + "ListModelLabRunFacetValues": { + "tag": "Model Lab API", + "undo": { + "type": "safe" + } + }, + "ListModelLabProjectFacetKeys": { + "tag": "Model Lab API", + "undo": { + "type": "safe" + } + }, + "ListModelLabProjectFacetValues": { + "tag": "Model Lab API", + "undo": { + "type": "safe" + } + }, + "ListModelLabProjects": { + "tag": "Model Lab API", + "undo": { + "type": "safe" + } + }, + "GetModelLabProject": { + "tag": "Model Lab API", + "undo": { + "type": "safe" + } + }, + "ListModelLabProjectArtifacts": { + "tag": "Model Lab API", + "undo": { + "type": "safe" + } + }, + "UnstarModelLabProject": { + "tag": "Model Lab API", + "undo": { + "type": "idempotent" + } + }, + "StarModelLabProject": { + "tag": "Model Lab API", + "undo": { + "operationId": "UnstarModelLabProject", + "parameters": [ + { + "name": "project_id", + "origin": "path", + "source": "project_id" + } + ], + "type": "unsafe" + } + }, + "ListModelLabRuns": { + "tag": "Model Lab API", + "undo": { + "type": "safe" + } + }, + "DeleteModelLabRun": { + "tag": "Model Lab API", + "undo": { + "type": "idempotent" + } + }, + "GetModelLabRun": { + "tag": "Model Lab API", + "undo": { + "type": "safe" + } + }, + "ListModelLabRunArtifacts": { + "tag": "Model Lab API", + "undo": { + "type": "safe" + } + }, + "UnpinModelLabRun": { + "tag": "Model Lab API", + "undo": { + "type": "idempotent" + } + }, + "PinModelLabRun": { + "tag": "Model Lab API", + "undo": { + "operationId": "UnpinModelLabRun", + "parameters": [ + { + "name": "run_id", + "origin": "path", + "source": "run_id" + } + ], + "type": "unsafe" + } + }, "GetMonitorNotificationRules": { "tag": "Monitors", "undo": {