From 8a8906422a8b0a9bdd0c89297d3e86a7b1889ec7 Mon Sep 17 00:00:00 2001 From: "ci.datadog-api-spec" Date: Wed, 24 Jun 2026 21:07:22 +0000 Subject: [PATCH] Regenerate client from commit b8334dc of spec repo --- .generator/schemas/v2/openapi.yaml | 86 ++++++++++++++++++- docs/datadog_api_client.v2.model.rst | 21 +++++ src/datadog_api_client/v2/api/metrics_api.py | 55 +++++++++++- src/datadog_api_client/v2/model/metric.py | 19 +++- ...tric_ingested_indexed_volume_attributes.py | 4 +- .../v2/model/metric_relationships.py | 42 +++++++++ .../v2/model/metric_tag_configuration.py | 10 +++ .../v2/model/metric_volumes_relationship.py | 42 +++++++++ .../model/metric_volumes_relationship_data.py | 54 ++++++++++++ .../metrics_and_metric_tag_configurations.py | 3 + ..._and_metric_tag_configurations_response.py | 10 +++ src/datadog_api_client/v2/models/__init__.py | 6 ++ 12 files changed, 342 insertions(+), 10 deletions(-) create mode 100644 src/datadog_api_client/v2/model/metric_relationships.py create mode 100644 src/datadog_api_client/v2/model/metric_volumes_relationship.py create mode 100644 src/datadog_api_client/v2/model/metric_volumes_relationship_data.py diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index 4dd4eb9c31..e665398f2c 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -58798,13 +58798,15 @@ components: - token type: object Metric: - description: Object for a single metric tag configuration. + description: Object for a single metric. example: id: metric.foo.bar type: metrics properties: id: $ref: "#/components/schemas/MetricName" + relationships: + $ref: "#/components/schemas/MetricRelationships" type: $ref: "#/components/schemas/MetricType" type: object @@ -59341,12 +59343,12 @@ components: description: Object containing the definition of a metric's ingested and indexed volume. properties: indexed_volume: - description: Indexed volume for the given metric. + description: Estimated average hourly number of indexed time series for the given metric over the last hour. For organizations on Metric Name Pricing, this represents the estimated sum of indexed data points over the last hour. example: 10 format: int64 type: integer ingested_volume: - description: Ingested volume for the given metric. + description: Estimated average hourly number of ingested time series for the given metric over the last hour. This value is 0 for metrics not configured with Metrics Without Limits. For organizations on Metric Name Pricing, this represents the estimated sum of ingested data points over the last hour. example: 20 format: int64 type: integer @@ -59523,6 +59525,12 @@ components: format: double type: number type: object + MetricRelationships: + description: Relationships for a metric. + properties: + metric_volumes: + $ref: "#/components/schemas/MetricVolumesRelationship" + type: object MetricResource: description: Metric resource. example: {name: "dummyhost", type: "host"} @@ -59715,6 +59723,8 @@ components: $ref: "#/components/schemas/MetricTagConfigurationAttributes" id: $ref: "#/components/schemas/MetricName" + relationships: + $ref: "#/components/schemas/MetricRelationships" type: $ref: "#/components/schemas/MetricTagConfigurationType" type: object @@ -59927,6 +59937,20 @@ components: oneOf: - $ref: "#/components/schemas/MetricDistinctVolume" - $ref: "#/components/schemas/MetricIngestedIndexedVolume" + MetricVolumesRelationship: + description: Relationship to a metric volume included in the response. + properties: + data: + $ref: "#/components/schemas/MetricVolumesRelationshipData" + type: object + MetricVolumesRelationshipData: + description: Relationship data for a metric volume. + properties: + id: + $ref: "#/components/schemas/MetricName" + type: + $ref: "#/components/schemas/MetricIngestedIndexedVolumeType" + type: object MetricVolumesResponse: description: Response object which includes a single metric's volume. properties: @@ -59972,6 +59996,11 @@ components: items: $ref: "#/components/schemas/MetricsAndMetricTagConfigurations" type: array + included: + description: Array of metric volume resources included when requested with `include=metric_volumes`. + items: + $ref: "#/components/schemas/MetricIngestedIndexedVolume" + type: array links: $ref: "#/components/schemas/MetricsListResponseLinks" meta: @@ -152116,13 +152145,20 @@ paths: Query parameters use bracket notation (for example, `filter[tags]`, `filter[queried][window][seconds]`). Pass them as standard URL query strings, URL-encoding the brackets if your client does not handle them. For example: `GET /api/v2/metrics?filter[tags]=env:prod&window[seconds]=86400&page[size]=500`. operationId: ListTagConfigurations parameters: - - description: Only return custom metrics that have been configured with Metrics Without Limits. + - description: Only return custom metrics that have been configured (`true`) or not configured (`false`) with Metrics Without Limits. example: true in: query name: filter[configured] required: false schema: type: boolean + - description: Only return metrics that are eligible (`true`) or ineligible (`false`) for configuration with Metrics Without Limits. + example: true + in: query + name: filter[is_configurable] + required: false + schema: + type: boolean - description: Only return metrics that have the given tag key(s) in their Metrics Without Limits configuration (included or excluded). example: "app,env" in: query @@ -152180,6 +152216,20 @@ paths: required: false schema: type: boolean + - description: Include related resources in the response. Set to `metric_volumes` to include indexed and ingested volume counts for each metric. + example: metric_volumes + in: query + name: include + required: false + schema: + type: string + - description: "Sort results by metric volume. Prefix a key with `-` for descending order. Supported keys: `metric_volumes.indexed_volume`, `metric_volumes.ingested_volume`, `metric_volumes.indexed_volume_delta`, `metric_volumes.ingested_volume_delta`. Requires a paginated request (`page[size]` or `page[cursor]`)." + example: "-metric_volumes.indexed_volume" + in: query + name: sort + required: false + schema: + type: string - description: |- Only return metrics that have been actively reporting in the specified window. The default value is 3600 seconds (1 hour), the maximum value is 2,592,000 seconds (30 days), and the minimum value is 1 second. example: 3600 @@ -152221,6 +152271,34 @@ paths: meta: pagination: next_cursor: + with_metric_volumes: + value: + data: + - id: user.custom.cpu.usage + relationships: + metric_volumes: + data: + id: user.custom.cpu.usage + type: metric_volumes + type: metrics + - id: user.custom.mem.usage + relationships: + metric_volumes: + data: + id: user.custom.mem.usage + type: metric_volumes + type: metrics + included: + - attributes: + indexed_volume: 1000 + ingested_volume: 456 + id: user.custom.cpu.usage + type: metric_volumes + - attributes: + indexed_volume: 250 + ingested_volume: 1011 + id: user.custom.mem.usage + type: metric_volumes schema: $ref: "#/components/schemas/MetricsAndMetricTagConfigurationsResponse" description: Success diff --git a/docs/datadog_api_client.v2.model.rst b/docs/datadog_api_client.v2.model.rst index fb4a91d83e..d12b77bead 100644 --- a/docs/datadog_api_client.v2.model.rst +++ b/docs/datadog_api_client.v2.model.rst @@ -24602,6 +24602,13 @@ datadog\_api\_client.v2.model.metric\_point module :members: :show-inheritance: +datadog\_api\_client.v2.model.metric\_relationships module +---------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.metric_relationships + :members: + :show-inheritance: + datadog\_api\_client.v2.model.metric\_resource module ----------------------------------------------------- @@ -24784,6 +24791,20 @@ datadog\_api\_client.v2.model.metric\_volumes module :members: :show-inheritance: +datadog\_api\_client.v2.model.metric\_volumes\_relationship module +------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.metric_volumes_relationship + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.metric\_volumes\_relationship\_data module +------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.metric_volumes_relationship_data + :members: + :show-inheritance: + datadog\_api\_client.v2.model.metric\_volumes\_response module -------------------------------------------------------------- diff --git a/src/datadog_api_client/v2/api/metrics_api.py b/src/datadog_api_client/v2/api/metrics_api.py index 82dbb511b4..06993eaa1c 100644 --- a/src/datadog_api_client/v2/api/metrics_api.py +++ b/src/datadog_api_client/v2/api/metrics_api.py @@ -473,6 +473,11 @@ def __init__(self, api_client=None): "attribute": "filter[configured]", "location": "query", }, + "filter_is_configurable": { + "openapi_types": (bool,), + "attribute": "filter[is_configurable]", + "location": "query", + }, "filter_tags_configured": { "openapi_types": (str,), "attribute": "filter[tags_configured]", @@ -512,6 +517,16 @@ def __init__(self, api_client=None): "attribute": "filter[related_assets]", "location": "query", }, + "include": { + "openapi_types": (str,), + "attribute": "include", + "location": "query", + }, + "sort": { + "openapi_types": (str,), + "attribute": "sort", + "location": "query", + }, "window_seconds": { "validation": { "inclusive_maximum": 2592000, @@ -1153,6 +1168,7 @@ def list_tag_configurations( self, *, filter_configured: Union[bool, UnsetType] = unset, + filter_is_configurable: Union[bool, UnsetType] = unset, filter_tags_configured: Union[str, UnsetType] = unset, filter_metric_type: Union[MetricTagConfigurationMetricTypeCategory, UnsetType] = unset, filter_include_percentiles: Union[bool, UnsetType] = unset, @@ -1160,6 +1176,8 @@ def list_tag_configurations( filter_queried_window_seconds: Union[int, UnsetType] = unset, filter_tags: Union[str, UnsetType] = unset, filter_related_assets: Union[bool, UnsetType] = unset, + include: Union[str, UnsetType] = unset, + sort: Union[str, UnsetType] = unset, window_seconds: Union[int, UnsetType] = unset, page_size: Union[int, UnsetType] = unset, page_cursor: Union[str, UnsetType] = unset, @@ -1170,8 +1188,10 @@ def list_tag_configurations( Query parameters use bracket notation (for example, ``filter[tags]`` , ``filter[queried][window][seconds]`` ). Pass them as standard URL query strings, URL-encoding the brackets if your client does not handle them. For example: ``GET /api/v2/metrics?filter[tags]=env:prod&window[seconds]=86400&page[size]=500``. - :param filter_configured: Only return custom metrics that have been configured with Metrics Without Limits. + :param filter_configured: Only return custom metrics that have been configured ( ``true`` ) or not configured ( ``false`` ) with Metrics Without Limits. :type filter_configured: bool, optional + :param filter_is_configurable: Only return metrics that are eligible ( ``true`` ) or ineligible ( ``false`` ) for configuration with Metrics Without Limits. + :type filter_is_configurable: bool, optional :param filter_tags_configured: Only return metrics that have the given tag key(s) in their Metrics Without Limits configuration (included or excluded). :type filter_tags_configured: str, optional :param filter_metric_type: Only return metrics of the given metric type. @@ -1186,6 +1206,10 @@ def list_tag_configurations( :type filter_tags: str, optional :param filter_related_assets: Only return metrics that are used in at least one dashboard, monitor, notebook, or SLO. :type filter_related_assets: bool, optional + :param include: Include related resources in the response. Set to ``metric_volumes`` to include indexed and ingested volume counts for each metric. + :type include: str, optional + :param sort: Sort results by metric volume. Prefix a key with ``-`` for descending order. Supported keys: ``metric_volumes.indexed_volume`` , ``metric_volumes.ingested_volume`` , ``metric_volumes.indexed_volume_delta`` , ``metric_volumes.ingested_volume_delta``. Requires a paginated request ( ``page[size]`` or ``page[cursor]`` ). + :type sort: str, optional :param window_seconds: Only return metrics that have been actively reporting in the specified window. The default value is 3600 seconds (1 hour), the maximum value is 2,592,000 seconds (30 days), and the minimum value is 1 second. :type window_seconds: int, optional :param page_size: Maximum number of results per page. Send ``page[size]`` on the first request to opt in to pagination. On each subsequent request, send ``page[cursor]`` set to the value of ``meta.pagination.next_cursor`` from the previous response. The default value is 10000, the maximum value is 10000, and the minimum value is 1. @@ -1198,6 +1222,9 @@ def list_tag_configurations( if filter_configured is not unset: kwargs["filter_configured"] = filter_configured + if filter_is_configurable is not unset: + kwargs["filter_is_configurable"] = filter_is_configurable + if filter_tags_configured is not unset: kwargs["filter_tags_configured"] = filter_tags_configured @@ -1219,6 +1246,12 @@ def list_tag_configurations( if filter_related_assets is not unset: kwargs["filter_related_assets"] = filter_related_assets + if include is not unset: + kwargs["include"] = include + + if sort is not unset: + kwargs["sort"] = sort + if window_seconds is not unset: kwargs["window_seconds"] = window_seconds @@ -1234,6 +1267,7 @@ def list_tag_configurations_with_pagination( self, *, filter_configured: Union[bool, UnsetType] = unset, + filter_is_configurable: Union[bool, UnsetType] = unset, filter_tags_configured: Union[str, UnsetType] = unset, filter_metric_type: Union[MetricTagConfigurationMetricTypeCategory, UnsetType] = unset, filter_include_percentiles: Union[bool, UnsetType] = unset, @@ -1241,6 +1275,8 @@ def list_tag_configurations_with_pagination( filter_queried_window_seconds: Union[int, UnsetType] = unset, filter_tags: Union[str, UnsetType] = unset, filter_related_assets: Union[bool, UnsetType] = unset, + include: Union[str, UnsetType] = unset, + sort: Union[str, UnsetType] = unset, window_seconds: Union[int, UnsetType] = unset, page_size: Union[int, UnsetType] = unset, page_cursor: Union[str, UnsetType] = unset, @@ -1249,8 +1285,10 @@ def list_tag_configurations_with_pagination( Provide a paginated version of :meth:`list_tag_configurations`, returning all items. - :param filter_configured: Only return custom metrics that have been configured with Metrics Without Limits. + :param filter_configured: Only return custom metrics that have been configured ( ``true`` ) or not configured ( ``false`` ) with Metrics Without Limits. :type filter_configured: bool, optional + :param filter_is_configurable: Only return metrics that are eligible ( ``true`` ) or ineligible ( ``false`` ) for configuration with Metrics Without Limits. + :type filter_is_configurable: bool, optional :param filter_tags_configured: Only return metrics that have the given tag key(s) in their Metrics Without Limits configuration (included or excluded). :type filter_tags_configured: str, optional :param filter_metric_type: Only return metrics of the given metric type. @@ -1265,6 +1303,10 @@ def list_tag_configurations_with_pagination( :type filter_tags: str, optional :param filter_related_assets: Only return metrics that are used in at least one dashboard, monitor, notebook, or SLO. :type filter_related_assets: bool, optional + :param include: Include related resources in the response. Set to ``metric_volumes`` to include indexed and ingested volume counts for each metric. + :type include: str, optional + :param sort: Sort results by metric volume. Prefix a key with ``-`` for descending order. Supported keys: ``metric_volumes.indexed_volume`` , ``metric_volumes.ingested_volume`` , ``metric_volumes.indexed_volume_delta`` , ``metric_volumes.ingested_volume_delta``. Requires a paginated request ( ``page[size]`` or ``page[cursor]`` ). + :type sort: str, optional :param window_seconds: Only return metrics that have been actively reporting in the specified window. The default value is 3600 seconds (1 hour), the maximum value is 2,592,000 seconds (30 days), and the minimum value is 1 second. :type window_seconds: int, optional :param page_size: Maximum number of results per page. Send ``page[size]`` on the first request to opt in to pagination. On each subsequent request, send ``page[cursor]`` set to the value of ``meta.pagination.next_cursor`` from the previous response. The default value is 10000, the maximum value is 10000, and the minimum value is 1. @@ -1279,6 +1321,9 @@ def list_tag_configurations_with_pagination( if filter_configured is not unset: kwargs["filter_configured"] = filter_configured + if filter_is_configurable is not unset: + kwargs["filter_is_configurable"] = filter_is_configurable + if filter_tags_configured is not unset: kwargs["filter_tags_configured"] = filter_tags_configured @@ -1300,6 +1345,12 @@ def list_tag_configurations_with_pagination( if filter_related_assets is not unset: kwargs["filter_related_assets"] = filter_related_assets + if include is not unset: + kwargs["include"] = include + + if sort is not unset: + kwargs["sort"] = sort + if window_seconds is not unset: kwargs["window_seconds"] = window_seconds diff --git a/src/datadog_api_client/v2/model/metric.py b/src/datadog_api_client/v2/model/metric.py index 50bffd544b..21b14a0250 100644 --- a/src/datadog_api_client/v2/model/metric.py +++ b/src/datadog_api_client/v2/model/metric.py @@ -14,36 +14,51 @@ if TYPE_CHECKING: + from datadog_api_client.v2.model.metric_relationships import MetricRelationships from datadog_api_client.v2.model.metric_type import MetricType class Metric(ModelNormal): @cached_property def openapi_types(_): + from datadog_api_client.v2.model.metric_relationships import MetricRelationships from datadog_api_client.v2.model.metric_type import MetricType return { "id": (str,), + "relationships": (MetricRelationships,), "type": (MetricType,), } attribute_map = { "id": "id", + "relationships": "relationships", "type": "type", } - def __init__(self_, id: Union[str, UnsetType] = unset, type: Union[MetricType, UnsetType] = unset, **kwargs): + def __init__( + self_, + id: Union[str, UnsetType] = unset, + relationships: Union[MetricRelationships, UnsetType] = unset, + type: Union[MetricType, UnsetType] = unset, + **kwargs, + ): """ - Object for a single metric tag configuration. + Object for a single metric. :param id: The metric name for this resource. :type id: str, optional + :param relationships: Relationships for a metric. + :type relationships: MetricRelationships, optional + :param type: The metric resource type. :type type: MetricType, optional """ if id is not unset: kwargs["id"] = id + if relationships is not unset: + kwargs["relationships"] = relationships if type is not unset: kwargs["type"] = type super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/metric_ingested_indexed_volume_attributes.py b/src/datadog_api_client/v2/model/metric_ingested_indexed_volume_attributes.py index 7f3419a8f7..50b791161a 100644 --- a/src/datadog_api_client/v2/model/metric_ingested_indexed_volume_attributes.py +++ b/src/datadog_api_client/v2/model/metric_ingested_indexed_volume_attributes.py @@ -32,10 +32,10 @@ def __init__( """ Object containing the definition of a metric's ingested and indexed volume. - :param indexed_volume: Indexed volume for the given metric. + :param indexed_volume: Estimated average hourly number of indexed time series for the given metric over the last hour. For organizations on Metric Name Pricing, this represents the estimated sum of indexed data points over the last hour. :type indexed_volume: int, optional - :param ingested_volume: Ingested volume for the given metric. + :param ingested_volume: Estimated average hourly number of ingested time series for the given metric over the last hour. This value is 0 for metrics not configured with Metrics Without Limits. For organizations on Metric Name Pricing, this represents the estimated sum of ingested data points over the last hour. :type ingested_volume: int, optional """ if indexed_volume is not unset: diff --git a/src/datadog_api_client/v2/model/metric_relationships.py b/src/datadog_api_client/v2/model/metric_relationships.py new file mode 100644 index 0000000000..ce734fce1a --- /dev/null +++ b/src/datadog_api_client/v2/model/metric_relationships.py @@ -0,0 +1,42 @@ +# 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.metric_volumes_relationship import MetricVolumesRelationship + + +class MetricRelationships(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.metric_volumes_relationship import MetricVolumesRelationship + + return { + "metric_volumes": (MetricVolumesRelationship,), + } + + attribute_map = { + "metric_volumes": "metric_volumes", + } + + def __init__(self_, metric_volumes: Union[MetricVolumesRelationship, UnsetType] = unset, **kwargs): + """ + Relationships for a metric. + + :param metric_volumes: Relationship to a metric volume included in the response. + :type metric_volumes: MetricVolumesRelationship, optional + """ + if metric_volumes is not unset: + kwargs["metric_volumes"] = metric_volumes + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/metric_tag_configuration.py b/src/datadog_api_client/v2/model/metric_tag_configuration.py index e17e3c5fa2..87c842b5dd 100644 --- a/src/datadog_api_client/v2/model/metric_tag_configuration.py +++ b/src/datadog_api_client/v2/model/metric_tag_configuration.py @@ -15,6 +15,7 @@ if TYPE_CHECKING: from datadog_api_client.v2.model.metric_tag_configuration_attributes import MetricTagConfigurationAttributes + from datadog_api_client.v2.model.metric_relationships import MetricRelationships from datadog_api_client.v2.model.metric_tag_configuration_type import MetricTagConfigurationType @@ -22,17 +23,20 @@ class MetricTagConfiguration(ModelNormal): @cached_property def openapi_types(_): from datadog_api_client.v2.model.metric_tag_configuration_attributes import MetricTagConfigurationAttributes + from datadog_api_client.v2.model.metric_relationships import MetricRelationships from datadog_api_client.v2.model.metric_tag_configuration_type import MetricTagConfigurationType return { "attributes": (MetricTagConfigurationAttributes,), "id": (str,), + "relationships": (MetricRelationships,), "type": (MetricTagConfigurationType,), } attribute_map = { "attributes": "attributes", "id": "id", + "relationships": "relationships", "type": "type", } @@ -40,6 +44,7 @@ def __init__( self_, attributes: Union[MetricTagConfigurationAttributes, UnsetType] = unset, id: Union[str, UnsetType] = unset, + relationships: Union[MetricRelationships, UnsetType] = unset, type: Union[MetricTagConfigurationType, UnsetType] = unset, **kwargs, ): @@ -52,6 +57,9 @@ def __init__( :param id: The metric name for this resource. :type id: str, optional + :param relationships: Relationships for a metric. + :type relationships: MetricRelationships, optional + :param type: The metric tag configuration resource type. :type type: MetricTagConfigurationType, optional """ @@ -59,6 +67,8 @@ def __init__( kwargs["attributes"] = attributes if id is not unset: kwargs["id"] = id + if relationships is not unset: + kwargs["relationships"] = relationships if type is not unset: kwargs["type"] = type super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/metric_volumes_relationship.py b/src/datadog_api_client/v2/model/metric_volumes_relationship.py new file mode 100644 index 0000000000..c3f1398e83 --- /dev/null +++ b/src/datadog_api_client/v2/model/metric_volumes_relationship.py @@ -0,0 +1,42 @@ +# 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.metric_volumes_relationship_data import MetricVolumesRelationshipData + + +class MetricVolumesRelationship(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.metric_volumes_relationship_data import MetricVolumesRelationshipData + + return { + "data": (MetricVolumesRelationshipData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[MetricVolumesRelationshipData, UnsetType] = unset, **kwargs): + """ + Relationship to a metric volume included in the response. + + :param data: Relationship data for a metric volume. + :type data: MetricVolumesRelationshipData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/metric_volumes_relationship_data.py b/src/datadog_api_client/v2/model/metric_volumes_relationship_data.py new file mode 100644 index 0000000000..826361b34c --- /dev/null +++ b/src/datadog_api_client/v2/model/metric_volumes_relationship_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 Union, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.metric_ingested_indexed_volume_type import MetricIngestedIndexedVolumeType + + +class MetricVolumesRelationshipData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.metric_ingested_indexed_volume_type import MetricIngestedIndexedVolumeType + + return { + "id": (str,), + "type": (MetricIngestedIndexedVolumeType,), + } + + attribute_map = { + "id": "id", + "type": "type", + } + + def __init__( + self_, + id: Union[str, UnsetType] = unset, + type: Union[MetricIngestedIndexedVolumeType, UnsetType] = unset, + **kwargs, + ): + """ + Relationship data for a metric volume. + + :param id: The metric name for this resource. + :type id: str, optional + + :param type: The metric ingested and indexed volume type. + :type type: MetricIngestedIndexedVolumeType, optional + """ + if id is not unset: + kwargs["id"] = id + if type is not unset: + kwargs["type"] = type + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/metrics_and_metric_tag_configurations.py b/src/datadog_api_client/v2/model/metrics_and_metric_tag_configurations.py index e871e846fd..914fc415c3 100644 --- a/src/datadog_api_client/v2/model/metrics_and_metric_tag_configurations.py +++ b/src/datadog_api_client/v2/model/metrics_and_metric_tag_configurations.py @@ -18,6 +18,9 @@ def __init__(self, **kwargs): :param id: The metric name for this resource. :type id: str, optional + :param relationships: Relationships for a metric. + :type relationships: MetricRelationships, optional + :param type: The metric resource type. :type type: MetricType, optional diff --git a/src/datadog_api_client/v2/model/metrics_and_metric_tag_configurations_response.py b/src/datadog_api_client/v2/model/metrics_and_metric_tag_configurations_response.py index aec4ba8a85..3e12323cb9 100644 --- a/src/datadog_api_client/v2/model/metrics_and_metric_tag_configurations_response.py +++ b/src/datadog_api_client/v2/model/metrics_and_metric_tag_configurations_response.py @@ -15,6 +15,7 @@ if TYPE_CHECKING: from datadog_api_client.v2.model.metrics_and_metric_tag_configurations import MetricsAndMetricTagConfigurations + from datadog_api_client.v2.model.metric_ingested_indexed_volume import MetricIngestedIndexedVolume from datadog_api_client.v2.model.metrics_list_response_links import MetricsListResponseLinks from datadog_api_client.v2.model.metric_pagination_meta import MetricPaginationMeta from datadog_api_client.v2.model.metric import Metric @@ -25,17 +26,20 @@ class MetricsAndMetricTagConfigurationsResponse(ModelNormal): @cached_property def openapi_types(_): from datadog_api_client.v2.model.metrics_and_metric_tag_configurations import MetricsAndMetricTagConfigurations + from datadog_api_client.v2.model.metric_ingested_indexed_volume import MetricIngestedIndexedVolume from datadog_api_client.v2.model.metrics_list_response_links import MetricsListResponseLinks from datadog_api_client.v2.model.metric_pagination_meta import MetricPaginationMeta return { "data": ([MetricsAndMetricTagConfigurations],), + "included": ([MetricIngestedIndexedVolume],), "links": (MetricsListResponseLinks,), "meta": (MetricPaginationMeta,), } attribute_map = { "data": "data", + "included": "included", "links": "links", "meta": "meta", } @@ -43,6 +47,7 @@ def openapi_types(_): def __init__( self_, data: Union[List[Union[MetricsAndMetricTagConfigurations, Metric, MetricTagConfiguration]], UnsetType] = unset, + included: Union[List[MetricIngestedIndexedVolume], UnsetType] = unset, links: Union[MetricsListResponseLinks, UnsetType] = unset, meta: Union[MetricPaginationMeta, UnsetType] = unset, **kwargs, @@ -53,6 +58,9 @@ def __init__( :param data: Array of metrics and metric tag configurations. :type data: [MetricsAndMetricTagConfigurations], optional + :param included: Array of metric volume resources included when requested with ``include=metric_volumes``. + :type included: [MetricIngestedIndexedVolume], optional + :param links: Pagination links. Only present if pagination query parameters were provided. :type links: MetricsListResponseLinks, optional @@ -61,6 +69,8 @@ def __init__( """ if data is not unset: kwargs["data"] = data + if included is not unset: + kwargs["included"] = included if links is not unset: kwargs["links"] = links if meta is not unset: diff --git a/src/datadog_api_client/v2/models/__init__.py b/src/datadog_api_client/v2/models/__init__.py index 825aff6d4f..6aa322dfd1 100644 --- a/src/datadog_api_client/v2/models/__init__.py +++ b/src/datadog_api_client/v2/models/__init__.py @@ -4578,6 +4578,7 @@ from datadog_api_client.v2.model.metric_pagination_meta import MetricPaginationMeta from datadog_api_client.v2.model.metric_payload import MetricPayload from datadog_api_client.v2.model.metric_point import MetricPoint +from datadog_api_client.v2.model.metric_relationships import MetricRelationships from datadog_api_client.v2.model.metric_resource import MetricResource from datadog_api_client.v2.model.metric_slo_asset import MetricSLOAsset from datadog_api_client.v2.model.metric_slo_type import MetricSLOType @@ -4612,6 +4613,8 @@ from datadog_api_client.v2.model.metric_tag_configuration_update_request import MetricTagConfigurationUpdateRequest from datadog_api_client.v2.model.metric_type import MetricType from datadog_api_client.v2.model.metric_volumes import MetricVolumes +from datadog_api_client.v2.model.metric_volumes_relationship import MetricVolumesRelationship +from datadog_api_client.v2.model.metric_volumes_relationship_data import MetricVolumesRelationshipData from datadog_api_client.v2.model.metric_volumes_response import MetricVolumesResponse from datadog_api_client.v2.model.metrics_aggregator import MetricsAggregator from datadog_api_client.v2.model.metrics_and_metric_tag_configurations import MetricsAndMetricTagConfigurations @@ -12992,6 +12995,7 @@ "MetricPaginationMeta", "MetricPayload", "MetricPoint", + "MetricRelationships", "MetricResource", "MetricSLOAsset", "MetricSLOType", @@ -13018,6 +13022,8 @@ "MetricTagConfigurationUpdateRequest", "MetricType", "MetricVolumes", + "MetricVolumesRelationship", + "MetricVolumesRelationshipData", "MetricVolumesResponse", "MetricsAggregator", "MetricsAndMetricTagConfigurations",