From 1e70142d32732aff213bc467276de46e19189b20 Mon Sep 17 00:00:00 2001 From: "ci.datadog-api-spec" Date: Thu, 29 Oct 2026 14:04:17 +0000 Subject: [PATCH] Regenerate client from commit b577fa9 of spec repo --- .generator/schemas/v1/openapi.yaml | 214 ++++++++++++++++++ .../v1/model/journey_map_conversion_type.py | 38 ++++ .../v1/model/journey_map_counting_method.py | 38 ++++ .../v1/model/journey_map_expanded_prefix.py | 57 +++++ .../v1/model/journey_map_group_by.py | 72 ++++++ .../v1/model/journey_map_group_by_audience.py | 38 ++++ .../v1/model/journey_map_query.py | 127 +++++++++++ .../v1/model/journey_map_request_type.py | 35 +++ .../v1/model/journey_map_target.py | 43 ++++ .../v1/model/journey_map_widget_definition.py | 113 +++++++++ .../journey_map_widget_definition_type.py | 35 +++ .../v1/model/journey_map_widget_request.py | 52 +++++ src/datadog_api_client/v1/model/widget.py | 2 + .../v1/model/widget_definition.py | 2 + src/datadog_api_client/v1/models/__init__.py | 22 ++ 15 files changed, 888 insertions(+) create mode 100644 src/datadog_api_client/v1/model/journey_map_conversion_type.py create mode 100644 src/datadog_api_client/v1/model/journey_map_counting_method.py create mode 100644 src/datadog_api_client/v1/model/journey_map_expanded_prefix.py create mode 100644 src/datadog_api_client/v1/model/journey_map_group_by.py create mode 100644 src/datadog_api_client/v1/model/journey_map_group_by_audience.py create mode 100644 src/datadog_api_client/v1/model/journey_map_query.py create mode 100644 src/datadog_api_client/v1/model/journey_map_request_type.py create mode 100644 src/datadog_api_client/v1/model/journey_map_target.py create mode 100644 src/datadog_api_client/v1/model/journey_map_widget_definition.py create mode 100644 src/datadog_api_client/v1/model/journey_map_widget_definition_type.py create mode 100644 src/datadog_api_client/v1/model/journey_map_widget_request.py diff --git a/.generator/schemas/v1/openapi.yaml b/.generator/schemas/v1/openapi.yaml index 17fc41e6b2..824cb58321 100644 --- a/.generator/schemas/v1/openapi.yaml +++ b/.generator/schemas/v1/openapi.yaml @@ -6335,6 +6335,219 @@ components: example: ok type: string type: object + JourneyMapConversionType: + description: Whether to show the paths that convert to the end step or drop off before it. + enum: + - conversion + - drop-off + example: conversion + type: string + x-enum-varnames: + - CONVERSION + - DROP_OFF + JourneyMapCountingMethod: + description: Whether to count unique journeys or all journeys. + enum: + - uniques + - totals + example: uniques + type: string + x-enum-varnames: + - UNIQUES + - TOTALS + JourneyMapExpandedPrefix: + additionalProperties: false + description: A path expanded to show the events that follow it. + properties: + events: + description: Events of the expanded path, in order. + example: + - "@view.name:/cart" + items: + description: An event of the expanded path. + type: string + minItems: 1 + type: array + path_limit: + description: Maximum number of paths shown after the expanded path. + example: 5 + format: int64 + maximum: 10 + minimum: 1 + type: integer + required: + - events + type: object + JourneyMapGroupBy: + additionalProperties: false + description: Group by configuration for the Journey Paths widget. + properties: + facet: + description: Facet to group by. Must be a valid tag name. + example: "@geo.country" + pattern: '^[@_a-zA-Z]?[a-zA-Z0-9_\-:.\/\\]*$' + type: string + source: + $ref: "#/components/schemas/JourneyMapGroupByAudience" + value_filters: + description: Facet values to keep. + example: + - France + items: + description: A facet value. + type: string + minItems: 1 + type: array + required: + - facet + - value_filters + type: object + JourneyMapGroupByAudience: + description: Audience the group by facet is read from. + enum: + - product_analytics_audience_filters.users + - product_analytics_audience_filters.accounts + example: product_analytics_audience_filters.users + type: string + x-enum-varnames: + - USERS + - ACCOUNTS + JourneyMapQuery: + description: Journey Paths query definition. + properties: + conversion_type: + $ref: "#/components/schemas/JourneyMapConversionType" + counting_method: + $ref: "#/components/schemas/JourneyMapCountingMethod" + data_source: + $ref: "#/components/schemas/ProductAnalyticsFunnelDataSource" + entries_per_step: + description: Maximum number of paths shown per step. + example: 5 + format: int64 + maximum: 10 + minimum: 1 + type: integer + event_filter: + description: Filter applied to the events shown along the paths. + example: "@type:view" + type: string + expanded_prefixes: + description: Paths expanded to show the events that follow them. + items: + $ref: "#/components/schemas/JourneyMapExpandedPrefix" + description: An expanded path. + type: array + uniqueItems: true + group_by: + description: Group by configuration. + items: + $ref: "#/components/schemas/JourneyMapGroupBy" + description: A Journey Paths group by configuration. + type: array + search: + $ref: "#/components/schemas/UserJourneySearch" + target: + $ref: "#/components/schemas/JourneyMapTarget" + required: + - data_source + - search + - target + type: object + JourneyMapRequestType: + description: Request type for the Journey Paths widget. + enum: + - journey_map + example: journey_map + type: string + x-enum-varnames: + - JOURNEY_MAP + JourneyMapTarget: + additionalProperties: false + description: The pair of journey steps the paths are visualized between. + properties: + end: + description: Key of the end step in `search.node_objects`. + example: node_1 + type: string + start: + description: Key of the start step in `search.node_objects`. + example: node_0 + type: string + required: + - start + - end + type: object + JourneyMapWidgetDefinition: + additionalProperties: false + description: The Journey Paths widget visualizes the paths users take between two steps of a Product Analytics journey. + properties: + description: + description: The description of the widget. + type: string + requests: + description: List of Journey Paths widget requests. Exactly one request is supported. + example: + - query: + data_source: product_analytics_journey + search: + expression: "node_0 -> node_1" + node_objects: + node_0: + data_source: product_analytics + search: + query: "@type:view @view.name:/cart" + node_1: + data_source: product_analytics + search: + query: "@type:view @view.name:/checkout" + target: + end: node_1 + start: node_0 + request_type: journey_map + items: + $ref: "#/components/schemas/JourneyMapWidgetRequest" + description: A Journey Paths widget request. + maxItems: 1 + minItems: 1 + type: array + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of your widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/JourneyMapWidgetDefinitionType" + required: + - type + - requests + type: object + JourneyMapWidgetDefinitionType: + default: journey_map + description: Type of the Journey Paths widget. + enum: + - journey_map + example: journey_map + type: string + x-enum-varnames: + - JOURNEY_MAP + JourneyMapWidgetRequest: + additionalProperties: false + description: Journey Paths widget request. + properties: + query: + $ref: "#/components/schemas/JourneyMapQuery" + request_type: + $ref: "#/components/schemas/JourneyMapRequestType" + required: + - request_type + - query + type: object ListStreamColumn: description: Widget column. example: {"field": "timestamp", "width": "auto"} @@ -28705,6 +28918,7 @@ components: - $ref: "#/components/schemas/HostMapWidgetDefinition" - $ref: "#/components/schemas/IFrameWidgetDefinition" - $ref: "#/components/schemas/ImageWidgetDefinition" + - $ref: "#/components/schemas/JourneyMapWidgetDefinition" - $ref: "#/components/schemas/ListStreamWidgetDefinition" - $ref: "#/components/schemas/LogStreamWidgetDefinition" - $ref: "#/components/schemas/MonitorSummaryWidgetDefinition" diff --git a/src/datadog_api_client/v1/model/journey_map_conversion_type.py b/src/datadog_api_client/v1/model/journey_map_conversion_type.py new file mode 100644 index 0000000000..644a7235ea --- /dev/null +++ b/src/datadog_api_client/v1/model/journey_map_conversion_type.py @@ -0,0 +1,38 @@ +# 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 JourneyMapConversionType(ModelSimple): + """ + Whether to show the paths that convert to the end step or drop off before it. + + :param value: Must be one of ["conversion", "drop-off"]. + :type value: str + """ + + allowed_values = { + "conversion", + "drop-off", + } + CONVERSION: ClassVar["JourneyMapConversionType"] + DROP_OFF: ClassVar["JourneyMapConversionType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +JourneyMapConversionType.CONVERSION = JourneyMapConversionType("conversion") +JourneyMapConversionType.DROP_OFF = JourneyMapConversionType("drop-off") diff --git a/src/datadog_api_client/v1/model/journey_map_counting_method.py b/src/datadog_api_client/v1/model/journey_map_counting_method.py new file mode 100644 index 0000000000..f9dc1a2454 --- /dev/null +++ b/src/datadog_api_client/v1/model/journey_map_counting_method.py @@ -0,0 +1,38 @@ +# 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 JourneyMapCountingMethod(ModelSimple): + """ + Whether to count unique journeys or all journeys. + + :param value: Must be one of ["uniques", "totals"]. + :type value: str + """ + + allowed_values = { + "uniques", + "totals", + } + UNIQUES: ClassVar["JourneyMapCountingMethod"] + TOTALS: ClassVar["JourneyMapCountingMethod"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +JourneyMapCountingMethod.UNIQUES = JourneyMapCountingMethod("uniques") +JourneyMapCountingMethod.TOTALS = JourneyMapCountingMethod("totals") diff --git a/src/datadog_api_client/v1/model/journey_map_expanded_prefix.py b/src/datadog_api_client/v1/model/journey_map_expanded_prefix.py new file mode 100644 index 0000000000..cf61fee2ed --- /dev/null +++ b/src/datadog_api_client/v1/model/journey_map_expanded_prefix.py @@ -0,0 +1,57 @@ +# 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, + unset, + UnsetType, +) + + +class JourneyMapExpandedPrefix(ModelNormal): + validations = { + "events": { + "min_items": 1, + }, + "path_limit": { + "inclusive_maximum": 10, + "inclusive_minimum": 1, + }, + } + + @cached_property + def additional_properties_type(_): + return None + + @cached_property + def openapi_types(_): + return { + "events": ([str],), + "path_limit": (int,), + } + + attribute_map = { + "events": "events", + "path_limit": "path_limit", + } + + def __init__(self_, events: List[str], path_limit: Union[int, UnsetType] = unset, **kwargs): + """ + A path expanded to show the events that follow it. + + :param events: Events of the expanded path, in order. + :type events: [str] + + :param path_limit: Maximum number of paths shown after the expanded path. + :type path_limit: int, optional + """ + if path_limit is not unset: + kwargs["path_limit"] = path_limit + super().__init__(kwargs) + + self_.events = events diff --git a/src/datadog_api_client/v1/model/journey_map_group_by.py b/src/datadog_api_client/v1/model/journey_map_group_by.py new file mode 100644 index 0000000000..01824d92b0 --- /dev/null +++ b/src/datadog_api_client/v1/model/journey_map_group_by.py @@ -0,0 +1,72 @@ +# 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.v1.model.journey_map_group_by_audience import JourneyMapGroupByAudience + + +class JourneyMapGroupBy(ModelNormal): + validations = { + "facet": {}, + "value_filters": { + "min_items": 1, + }, + } + + @cached_property + def additional_properties_type(_): + return None + + @cached_property + def openapi_types(_): + from datadog_api_client.v1.model.journey_map_group_by_audience import JourneyMapGroupByAudience + + return { + "facet": (str,), + "source": (JourneyMapGroupByAudience,), + "value_filters": ([str],), + } + + attribute_map = { + "facet": "facet", + "source": "source", + "value_filters": "value_filters", + } + + def __init__( + self_, + facet: str, + value_filters: List[str], + source: Union[JourneyMapGroupByAudience, UnsetType] = unset, + **kwargs, + ): + """ + Group by configuration for the Journey Paths widget. + + :param facet: Facet to group by. Must be a valid tag name. + :type facet: str + + :param source: Audience the group by facet is read from. + :type source: JourneyMapGroupByAudience, optional + + :param value_filters: Facet values to keep. + :type value_filters: [str] + """ + if source is not unset: + kwargs["source"] = source + super().__init__(kwargs) + + self_.facet = facet + self_.value_filters = value_filters diff --git a/src/datadog_api_client/v1/model/journey_map_group_by_audience.py b/src/datadog_api_client/v1/model/journey_map_group_by_audience.py new file mode 100644 index 0000000000..48cbf72f5c --- /dev/null +++ b/src/datadog_api_client/v1/model/journey_map_group_by_audience.py @@ -0,0 +1,38 @@ +# 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 JourneyMapGroupByAudience(ModelSimple): + """ + Audience the group by facet is read from. + + :param value: Must be one of ["product_analytics_audience_filters.users", "product_analytics_audience_filters.accounts"]. + :type value: str + """ + + allowed_values = { + "product_analytics_audience_filters.users", + "product_analytics_audience_filters.accounts", + } + USERS: ClassVar["JourneyMapGroupByAudience"] + ACCOUNTS: ClassVar["JourneyMapGroupByAudience"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +JourneyMapGroupByAudience.USERS = JourneyMapGroupByAudience("product_analytics_audience_filters.users") +JourneyMapGroupByAudience.ACCOUNTS = JourneyMapGroupByAudience("product_analytics_audience_filters.accounts") diff --git a/src/datadog_api_client/v1/model/journey_map_query.py b/src/datadog_api_client/v1/model/journey_map_query.py new file mode 100644 index 0000000000..dfeaadc385 --- /dev/null +++ b/src/datadog_api_client/v1/model/journey_map_query.py @@ -0,0 +1,127 @@ +# 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.v1.model.journey_map_conversion_type import JourneyMapConversionType + from datadog_api_client.v1.model.journey_map_counting_method import JourneyMapCountingMethod + from datadog_api_client.v1.model.product_analytics_funnel_data_source import ProductAnalyticsFunnelDataSource + from datadog_api_client.v1.model.journey_map_expanded_prefix import JourneyMapExpandedPrefix + from datadog_api_client.v1.model.journey_map_group_by import JourneyMapGroupBy + from datadog_api_client.v1.model.user_journey_search import UserJourneySearch + from datadog_api_client.v1.model.journey_map_target import JourneyMapTarget + + +class JourneyMapQuery(ModelNormal): + validations = { + "entries_per_step": { + "inclusive_maximum": 10, + "inclusive_minimum": 1, + }, + } + + @cached_property + def openapi_types(_): + from datadog_api_client.v1.model.journey_map_conversion_type import JourneyMapConversionType + from datadog_api_client.v1.model.journey_map_counting_method import JourneyMapCountingMethod + from datadog_api_client.v1.model.product_analytics_funnel_data_source import ProductAnalyticsFunnelDataSource + from datadog_api_client.v1.model.journey_map_expanded_prefix import JourneyMapExpandedPrefix + from datadog_api_client.v1.model.journey_map_group_by import JourneyMapGroupBy + from datadog_api_client.v1.model.user_journey_search import UserJourneySearch + from datadog_api_client.v1.model.journey_map_target import JourneyMapTarget + + return { + "conversion_type": (JourneyMapConversionType,), + "counting_method": (JourneyMapCountingMethod,), + "data_source": (ProductAnalyticsFunnelDataSource,), + "entries_per_step": (int,), + "event_filter": (str,), + "expanded_prefixes": ([JourneyMapExpandedPrefix],), + "group_by": ([JourneyMapGroupBy],), + "search": (UserJourneySearch,), + "target": (JourneyMapTarget,), + } + + attribute_map = { + "conversion_type": "conversion_type", + "counting_method": "counting_method", + "data_source": "data_source", + "entries_per_step": "entries_per_step", + "event_filter": "event_filter", + "expanded_prefixes": "expanded_prefixes", + "group_by": "group_by", + "search": "search", + "target": "target", + } + + def __init__( + self_, + data_source: ProductAnalyticsFunnelDataSource, + search: UserJourneySearch, + target: JourneyMapTarget, + conversion_type: Union[JourneyMapConversionType, UnsetType] = unset, + counting_method: Union[JourneyMapCountingMethod, UnsetType] = unset, + entries_per_step: Union[int, UnsetType] = unset, + event_filter: Union[str, UnsetType] = unset, + expanded_prefixes: Union[List[JourneyMapExpandedPrefix], UnsetType] = unset, + group_by: Union[List[JourneyMapGroupBy], UnsetType] = unset, + **kwargs, + ): + """ + Journey Paths query definition. + + :param conversion_type: Whether to show the paths that convert to the end step or drop off before it. + :type conversion_type: JourneyMapConversionType, optional + + :param counting_method: Whether to count unique journeys or all journeys. + :type counting_method: JourneyMapCountingMethod, optional + + :param data_source: Data source for user journey funnel queries. + :type data_source: ProductAnalyticsFunnelDataSource + + :param entries_per_step: Maximum number of paths shown per step. + :type entries_per_step: int, optional + + :param event_filter: Filter applied to the events shown along the paths. + :type event_filter: str, optional + + :param expanded_prefixes: Paths expanded to show the events that follow them. + :type expanded_prefixes: [JourneyMapExpandedPrefix], optional + + :param group_by: Group by configuration. + :type group_by: [JourneyMapGroupBy], optional + + :param search: User journey search configuration. + :type search: UserJourneySearch + + :param target: The pair of journey steps the paths are visualized between. + :type target: JourneyMapTarget + """ + if conversion_type is not unset: + kwargs["conversion_type"] = conversion_type + if counting_method is not unset: + kwargs["counting_method"] = counting_method + if entries_per_step is not unset: + kwargs["entries_per_step"] = entries_per_step + if event_filter is not unset: + kwargs["event_filter"] = event_filter + if expanded_prefixes is not unset: + kwargs["expanded_prefixes"] = expanded_prefixes + if group_by is not unset: + kwargs["group_by"] = group_by + super().__init__(kwargs) + + self_.data_source = data_source + self_.search = search + self_.target = target diff --git a/src/datadog_api_client/v1/model/journey_map_request_type.py b/src/datadog_api_client/v1/model/journey_map_request_type.py new file mode 100644 index 0000000000..fe1b5bd9a8 --- /dev/null +++ b/src/datadog_api_client/v1/model/journey_map_request_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 JourneyMapRequestType(ModelSimple): + """ + Request type for the Journey Paths widget. + + :param value: If omitted defaults to "journey_map". Must be one of ["journey_map"]. + :type value: str + """ + + allowed_values = { + "journey_map", + } + JOURNEY_MAP: ClassVar["JourneyMapRequestType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +JourneyMapRequestType.JOURNEY_MAP = JourneyMapRequestType("journey_map") diff --git a/src/datadog_api_client/v1/model/journey_map_target.py b/src/datadog_api_client/v1/model/journey_map_target.py new file mode 100644 index 0000000000..e000c96220 --- /dev/null +++ b/src/datadog_api_client/v1/model/journey_map_target.py @@ -0,0 +1,43 @@ +# 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 JourneyMapTarget(ModelNormal): + @cached_property + def additional_properties_type(_): + return None + + @cached_property + def openapi_types(_): + return { + "end": (str,), + "start": (str,), + } + + attribute_map = { + "end": "end", + "start": "start", + } + + def __init__(self_, end: str, start: str, **kwargs): + """ + The pair of journey steps the paths are visualized between. + + :param end: Key of the end step in ``search.node_objects``. + :type end: str + + :param start: Key of the start step in ``search.node_objects``. + :type start: str + """ + super().__init__(kwargs) + + self_.end = end + self_.start = start diff --git a/src/datadog_api_client/v1/model/journey_map_widget_definition.py b/src/datadog_api_client/v1/model/journey_map_widget_definition.py new file mode 100644 index 0000000000..08b9fa6b07 --- /dev/null +++ b/src/datadog_api_client/v1/model/journey_map_widget_definition.py @@ -0,0 +1,113 @@ +# 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.v1.model.journey_map_widget_request import JourneyMapWidgetRequest + from datadog_api_client.v1.model.widget_time import WidgetTime + from datadog_api_client.v1.model.widget_text_align import WidgetTextAlign + from datadog_api_client.v1.model.journey_map_widget_definition_type import JourneyMapWidgetDefinitionType + from datadog_api_client.v1.model.widget_legacy_live_span import WidgetLegacyLiveSpan + from datadog_api_client.v1.model.widget_new_live_span import WidgetNewLiveSpan + from datadog_api_client.v1.model.widget_new_fixed_span import WidgetNewFixedSpan + + +class JourneyMapWidgetDefinition(ModelNormal): + validations = { + "requests": { + "max_items": 1, + "min_items": 1, + }, + } + + @cached_property + def additional_properties_type(_): + return None + + @cached_property + def openapi_types(_): + from datadog_api_client.v1.model.journey_map_widget_request import JourneyMapWidgetRequest + from datadog_api_client.v1.model.widget_time import WidgetTime + from datadog_api_client.v1.model.widget_text_align import WidgetTextAlign + from datadog_api_client.v1.model.journey_map_widget_definition_type import JourneyMapWidgetDefinitionType + + return { + "description": (str,), + "requests": ([JourneyMapWidgetRequest],), + "time": (WidgetTime,), + "title": (str,), + "title_align": (WidgetTextAlign,), + "title_size": (str,), + "type": (JourneyMapWidgetDefinitionType,), + } + + attribute_map = { + "description": "description", + "requests": "requests", + "time": "time", + "title": "title", + "title_align": "title_align", + "title_size": "title_size", + "type": "type", + } + + def __init__( + self_, + requests: List[JourneyMapWidgetRequest], + type: JourneyMapWidgetDefinitionType, + description: Union[str, UnsetType] = unset, + time: Union[WidgetTime, WidgetLegacyLiveSpan, WidgetNewLiveSpan, WidgetNewFixedSpan, UnsetType] = unset, + title: Union[str, UnsetType] = unset, + title_align: Union[WidgetTextAlign, UnsetType] = unset, + title_size: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + The Journey Paths widget visualizes the paths users take between two steps of a Product Analytics journey. + + :param description: The description of the widget. + :type description: str, optional + + :param requests: List of Journey Paths widget requests. Exactly one request is supported. + :type requests: [JourneyMapWidgetRequest] + + :param time: Time setting for the widget. + :type time: WidgetTime, optional + + :param title: Title of your widget. + :type title: str, optional + + :param title_align: How to align the text on the widget. + :type title_align: WidgetTextAlign, optional + + :param title_size: Size of the title. + :type title_size: str, optional + + :param type: Type of the Journey Paths widget. + :type type: JourneyMapWidgetDefinitionType + """ + if description is not unset: + kwargs["description"] = description + if time is not unset: + kwargs["time"] = time + if title is not unset: + kwargs["title"] = title + if title_align is not unset: + kwargs["title_align"] = title_align + if title_size is not unset: + kwargs["title_size"] = title_size + super().__init__(kwargs) + + self_.requests = requests + self_.type = type diff --git a/src/datadog_api_client/v1/model/journey_map_widget_definition_type.py b/src/datadog_api_client/v1/model/journey_map_widget_definition_type.py new file mode 100644 index 0000000000..081d5f7c4a --- /dev/null +++ b/src/datadog_api_client/v1/model/journey_map_widget_definition_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 JourneyMapWidgetDefinitionType(ModelSimple): + """ + Type of the Journey Paths widget. + + :param value: If omitted defaults to "journey_map". Must be one of ["journey_map"]. + :type value: str + """ + + allowed_values = { + "journey_map", + } + JOURNEY_MAP: ClassVar["JourneyMapWidgetDefinitionType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +JourneyMapWidgetDefinitionType.JOURNEY_MAP = JourneyMapWidgetDefinitionType("journey_map") diff --git a/src/datadog_api_client/v1/model/journey_map_widget_request.py b/src/datadog_api_client/v1/model/journey_map_widget_request.py new file mode 100644 index 0000000000..51a02750fe --- /dev/null +++ b/src/datadog_api_client/v1/model/journey_map_widget_request.py @@ -0,0 +1,52 @@ +# 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.v1.model.journey_map_query import JourneyMapQuery + from datadog_api_client.v1.model.journey_map_request_type import JourneyMapRequestType + + +class JourneyMapWidgetRequest(ModelNormal): + @cached_property + def additional_properties_type(_): + return None + + @cached_property + def openapi_types(_): + from datadog_api_client.v1.model.journey_map_query import JourneyMapQuery + from datadog_api_client.v1.model.journey_map_request_type import JourneyMapRequestType + + return { + "query": (JourneyMapQuery,), + "request_type": (JourneyMapRequestType,), + } + + attribute_map = { + "query": "query", + "request_type": "request_type", + } + + def __init__(self_, query: JourneyMapQuery, request_type: JourneyMapRequestType, **kwargs): + """ + Journey Paths widget request. + + :param query: Journey Paths query definition. + :type query: JourneyMapQuery + + :param request_type: Request type for the Journey Paths widget. + :type request_type: JourneyMapRequestType + """ + super().__init__(kwargs) + + self_.query = query + self_.request_type = request_type diff --git a/src/datadog_api_client/v1/model/widget.py b/src/datadog_api_client/v1/model/widget.py index 80a3982604..69711bf5fe 100644 --- a/src/datadog_api_client/v1/model/widget.py +++ b/src/datadog_api_client/v1/model/widget.py @@ -38,6 +38,7 @@ from datadog_api_client.v1.model.host_map_widget_definition import HostMapWidgetDefinition from datadog_api_client.v1.model.i_frame_widget_definition import IFrameWidgetDefinition from datadog_api_client.v1.model.image_widget_definition import ImageWidgetDefinition + from datadog_api_client.v1.model.journey_map_widget_definition import JourneyMapWidgetDefinition from datadog_api_client.v1.model.list_stream_widget_definition import ListStreamWidgetDefinition from datadog_api_client.v1.model.log_stream_widget_definition import LogStreamWidgetDefinition from datadog_api_client.v1.model.monitor_summary_widget_definition import MonitorSummaryWidgetDefinition @@ -105,6 +106,7 @@ def __init__( HostMapWidgetDefinition, IFrameWidgetDefinition, ImageWidgetDefinition, + JourneyMapWidgetDefinition, ListStreamWidgetDefinition, LogStreamWidgetDefinition, MonitorSummaryWidgetDefinition, diff --git a/src/datadog_api_client/v1/model/widget_definition.py b/src/datadog_api_client/v1/model/widget_definition.py index c38831ef7e..ed44323ac3 100644 --- a/src/datadog_api_client/v1/model/widget_definition.py +++ b/src/datadog_api_client/v1/model/widget_definition.py @@ -395,6 +395,7 @@ def _composed_schemas(_): from datadog_api_client.v1.model.host_map_widget_definition import HostMapWidgetDefinition from datadog_api_client.v1.model.i_frame_widget_definition import IFrameWidgetDefinition from datadog_api_client.v1.model.image_widget_definition import ImageWidgetDefinition + from datadog_api_client.v1.model.journey_map_widget_definition import JourneyMapWidgetDefinition from datadog_api_client.v1.model.list_stream_widget_definition import ListStreamWidgetDefinition from datadog_api_client.v1.model.log_stream_widget_definition import LogStreamWidgetDefinition from datadog_api_client.v1.model.monitor_summary_widget_definition import MonitorSummaryWidgetDefinition @@ -441,6 +442,7 @@ def _composed_schemas(_): HostMapWidgetDefinition, IFrameWidgetDefinition, ImageWidgetDefinition, + JourneyMapWidgetDefinition, ListStreamWidgetDefinition, LogStreamWidgetDefinition, MonitorSummaryWidgetDefinition, diff --git a/src/datadog_api_client/v1/models/__init__.py b/src/datadog_api_client/v1/models/__init__.py index 4521858305..eb786dca59 100644 --- a/src/datadog_api_client/v1/models/__init__.py +++ b/src/datadog_api_client/v1/models/__init__.py @@ -355,6 +355,17 @@ from datadog_api_client.v1.model.image_widget_definition import ImageWidgetDefinition from datadog_api_client.v1.model.image_widget_definition_type import ImageWidgetDefinitionType from datadog_api_client.v1.model.intake_payload_accepted import IntakePayloadAccepted +from datadog_api_client.v1.model.journey_map_conversion_type import JourneyMapConversionType +from datadog_api_client.v1.model.journey_map_counting_method import JourneyMapCountingMethod +from datadog_api_client.v1.model.journey_map_expanded_prefix import JourneyMapExpandedPrefix +from datadog_api_client.v1.model.journey_map_group_by import JourneyMapGroupBy +from datadog_api_client.v1.model.journey_map_group_by_audience import JourneyMapGroupByAudience +from datadog_api_client.v1.model.journey_map_query import JourneyMapQuery +from datadog_api_client.v1.model.journey_map_request_type import JourneyMapRequestType +from datadog_api_client.v1.model.journey_map_target import JourneyMapTarget +from datadog_api_client.v1.model.journey_map_widget_definition import JourneyMapWidgetDefinition +from datadog_api_client.v1.model.journey_map_widget_definition_type import JourneyMapWidgetDefinitionType +from datadog_api_client.v1.model.journey_map_widget_request import JourneyMapWidgetRequest from datadog_api_client.v1.model.list_stream_column import ListStreamColumn from datadog_api_client.v1.model.list_stream_column_width import ListStreamColumnWidth from datadog_api_client.v1.model.list_stream_compute_aggregation import ListStreamComputeAggregation @@ -1800,6 +1811,17 @@ "ImageWidgetDefinition", "ImageWidgetDefinitionType", "IntakePayloadAccepted", + "JourneyMapConversionType", + "JourneyMapCountingMethod", + "JourneyMapExpandedPrefix", + "JourneyMapGroupBy", + "JourneyMapGroupByAudience", + "JourneyMapQuery", + "JourneyMapRequestType", + "JourneyMapTarget", + "JourneyMapWidgetDefinition", + "JourneyMapWidgetDefinitionType", + "JourneyMapWidgetRequest", "ListStreamColumn", "ListStreamColumnWidth", "ListStreamComputeAggregation",