diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index 93efc78e5a..f95a76690c 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -20823,6 +20823,326 @@ components: - name - requirements type: object + FunnelRequest: + example: + data: + attributes: + data_source: rum + enforced_execution_type: '' + request_id: '' + search: + cross_session_filter: '' + query_string: '@type:view' + steps: + - facet: '@view.name' + step_filter: '' + value: /apm/home + - facet: '@view.name' + step_filter: '' + value: /apm/traces + subquery_id: '' + time: + from: 1756425600000 + to: 1756857600000 + id: funnel_request + type: funnel_request + properties: + data: + $ref: '#/components/schemas/FunnelRequestData' + type: object + FunnelRequestData: + properties: + attributes: + $ref: '#/components/schemas/FunnelRequestDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/FunnelRequestDataType' + required: + - type + type: object + FunnelRequestDataAttributes: + properties: + data_source: + type: string + enforced_execution_type: + type: string + request_id: + type: string + search: + $ref: '#/components/schemas/FunnelRequestDataAttributesSearch' + time: + $ref: '#/components/schemas/FunnelRequestDataAttributesTime' + type: object + FunnelRequestDataAttributesSearch: + properties: + cross_session_filter: + type: string + query_string: + type: string + steps: + items: + $ref: '#/components/schemas/FunnelRequestDataAttributesSearchStepsItems' + type: array + subquery_id: + type: string + type: object + FunnelRequestDataAttributesSearchStepsItems: + properties: + facet: + type: string + step_filter: + type: string + value: + type: string + type: object + FunnelRequestDataAttributesTime: + properties: + from: + format: int64 + type: integer + to: + format: int64 + type: integer + type: object + FunnelRequestDataType: + default: funnel_request + enum: + - funnel_request + example: funnel_request + type: string + x-enum-varnames: + - FUNNEL_REQUEST + FunnelResponse: + example: + data: + attributes: + end_to_end_conversion_rate: 0.1161386890038228 + funnel_steps: + - label: '@type:view @view.name:/apm/home' + value: 284608 + - label: '@type:view @view.name:/apm/traces' + value: 33054 + initial_count: 3925047 + id: funnel_response + type: funnel_response + properties: + data: + $ref: '#/components/schemas/FunnelResponseData' + type: object + FunnelResponseData: + properties: + attributes: + $ref: '#/components/schemas/FunnelResponseDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/FunnelResponseDataType' + required: + - type + type: object + FunnelResponseDataAttributes: + properties: + end_to_end_conversion_rate: + format: double + type: number + end_to_end_elapsed_time: + $ref: '#/components/schemas/FunnelResponseElapsedTime' + funnel_steps: + items: + $ref: '#/components/schemas/FunnelResponseDataAttributesFunnelStepsItems' + type: array + initial_count: + format: int64 + type: integer + type: object + FunnelResponseDataAttributesFunnelStepsItems: + properties: + elapsed_time_to_next_step: + $ref: '#/components/schemas/FunnelResponseElapsedTime' + label: + type: string + value: + format: int64 + type: integer + type: object + FunnelResponseDataType: + default: funnel_response + enum: + - funnel_response + example: funnel_response + type: string + x-enum-varnames: + - FUNNEL_RESPONSE + FunnelResponseElapsedTime: + properties: + avg: + format: int64 + type: integer + max: + format: int64 + type: integer + min: + format: int64 + type: integer + p5: + format: int64 + type: integer + p50: + format: int64 + type: integer + p95: + format: int64 + type: integer + type: object + FunnelSuggestionRequest: + example: + data: + attributes: + data_source: '' + search: + cross_session_filter: '' + query_string: '@type:view' + steps: + - facet: '@view.name' + step_filter: '' + value: /apm/home + subquery_id: '' + term_search: + query: apm + time: + from: 1756425600000 + to: 1756857600000 + id: funnel_suggestion_request + type: funnel_suggestion_request + properties: + data: + $ref: '#/components/schemas/FunnelSuggestionRequestData' + type: object + FunnelSuggestionRequestData: + properties: + attributes: + $ref: '#/components/schemas/FunnelSuggestionRequestDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/FunnelSuggestionRequestDataType' + required: + - type + type: object + FunnelSuggestionRequestDataAttributes: + properties: + data_source: + type: string + search: + $ref: '#/components/schemas/FunnelSuggestionRequestDataAttributesSearch' + term_search: + $ref: '#/components/schemas/FunnelSuggestionRequestDataAttributesTermSearch' + time: + $ref: '#/components/schemas/FunnelSuggestionRequestDataAttributesTime' + type: object + FunnelSuggestionRequestDataAttributesSearch: + properties: + cross_session_filter: + type: string + query_string: + type: string + steps: + items: + $ref: '#/components/schemas/FunnelSuggestionRequestDataAttributesSearchStepsItems' + type: array + subquery_id: + type: string + type: object + FunnelSuggestionRequestDataAttributesSearchStepsItems: + properties: + facet: + type: string + step_filter: + type: string + value: + type: string + type: object + FunnelSuggestionRequestDataAttributesTermSearch: + properties: + query: + type: string + type: object + FunnelSuggestionRequestDataAttributesTime: + properties: + from: + format: int64 + type: integer + to: + format: int64 + type: integer + type: object + FunnelSuggestionRequestDataType: + default: funnel_suggestion_request + enum: + - funnel_suggestion_request + example: funnel_suggestion_request + type: string + x-enum-varnames: + - FUNNEL_SUGGESTION_REQUEST + FunnelSuggestionResponse: + example: + data: + attributes: + actions: + - name: view_trace_details + - name: filter_by_service + - name: analyze_performance + views: + - name: /apm/traces + - name: /apm/services + - name: /apm/service-map + id: funnel_suggestion_response + type: funnel_suggestion_response + properties: + data: + $ref: '#/components/schemas/FunnelSuggestionResponseData' + type: object + FunnelSuggestionResponseData: + properties: + attributes: + $ref: '#/components/schemas/FunnelSuggestionResponseDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/FunnelSuggestionResponseDataType' + required: + - type + type: object + FunnelSuggestionResponseDataAttributes: + properties: + actions: + items: + $ref: '#/components/schemas/FunnelSuggestionResponseDataAttributesActionsItems' + type: array + views: + items: + $ref: '#/components/schemas/FunnelSuggestionResponseDataAttributesViewsItems' + type: array + type: object + FunnelSuggestionResponseDataAttributesActionsItems: + properties: + name: + type: string + type: object + FunnelSuggestionResponseDataAttributesViewsItems: + properties: + name: + type: string + type: object + FunnelSuggestionResponseDataType: + default: funnel_suggestion_response + enum: + - funnel_suggestion_response + example: funnel_suggestion_response + type: string + x-enum-varnames: + - FUNNEL_SUGGESTION_RESPONSE GCPCredentials: description: The definition of the `GCPCredentials` object. oneOf: @@ -21735,6 +22055,369 @@ components: type: string type: array type: object + GetCohortRequest: + properties: + data: + $ref: '#/components/schemas/GetCohortRequestData' + type: object + GetCohortRequestData: + properties: + attributes: + $ref: '#/components/schemas/GetCohortRequestDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/GetCohortRequestDataType' + required: + - type + type: object + GetCohortRequestDataAttributes: + properties: + data_source: + type: string + definition: + $ref: '#/components/schemas/GetCohortRequestDataAttributesDefinition' + enforced_execution_type: + type: string + request_id: + type: string + time: + $ref: '#/components/schemas/GetCohortRequestDataAttributesTime' + window_size: + type: string + type: object + GetCohortRequestDataAttributesDefinition: + properties: + audience_filters: + $ref: '#/components/schemas/GetCohortRequestDataAttributesDefinitionAudienceFilters' + inclusion_search: + type: string + return_search: + type: string + segment_id: + type: string + type: object + GetCohortRequestDataAttributesDefinitionAudienceFilters: + properties: + accounts: + items: + $ref: '#/components/schemas/GetCohortRequestDataAttributesDefinitionAudienceFiltersAccountsItems' + type: array + formula: + type: string + segments: + items: + $ref: '#/components/schemas/GetCohortRequestDataAttributesDefinitionAudienceFiltersSegmentsItems' + type: array + users: + items: + $ref: '#/components/schemas/GetCohortRequestDataAttributesDefinitionAudienceFiltersUsersItems' + type: array + type: object + GetCohortRequestDataAttributesDefinitionAudienceFiltersAccountsItems: + properties: + name: + example: '' + type: string + query: + type: string + required: + - name + type: object + GetCohortRequestDataAttributesDefinitionAudienceFiltersSegmentsItems: + properties: + name: + example: '' + type: string + segment_id: + example: '' + type: string + required: + - name + - segment_id + type: object + GetCohortRequestDataAttributesDefinitionAudienceFiltersUsersItems: + properties: + name: + example: '' + type: string + query: + type: string + required: + - name + type: object + GetCohortRequestDataAttributesTime: + properties: + from: + format: int64 + type: integer + to: + format: int64 + type: integer + type: object + GetCohortRequestDataType: + default: cohort_request + enum: + - cohort_request + example: cohort_request + type: string + x-enum-varnames: + - COHORT_REQUEST + GetCohortResponse: + example: + data: + attributes: + cohorts: + - cohort: '2024-01-01' + cohort_size: 1000 + start_time: 1704067200000 + values: + - absolute_value: 1000 + end_time: 1704672000000 + relative_value: 100 + start_time: 1704067200000 + window: 0 + - absolute_value: 750 + end_time: 1705276800000 + relative_value: 75 + start_time: 1704672000000 + window: 1 + - absolute_value: 600 + end_time: 1705881600000 + relative_value: 60 + start_time: 1705276800000 + window: 2 + id: cohort_response + type: cohort_response + properties: + data: + $ref: '#/components/schemas/GetCohortResponseData' + type: object + GetCohortResponseData: + properties: + attributes: + $ref: '#/components/schemas/GetCohortResponseDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/GetCohortResponseDataType' + required: + - type + type: object + GetCohortResponseDataAttributes: + properties: + cohorts: + items: + $ref: '#/components/schemas/GetCohortResponseDataAttributesCohortsItems' + type: array + type: object + GetCohortResponseDataAttributesCohortsItems: + properties: + cohort: + type: string + cohort_size: + format: int64 + type: integer + start_time: + format: int64 + type: integer + values: + items: + $ref: '#/components/schemas/GetCohortResponseDataAttributesCohortsItemsValuesItems' + type: array + type: object + GetCohortResponseDataAttributesCohortsItemsValuesItems: + properties: + absolute_value: + format: int64 + type: integer + end_time: + format: int64 + type: integer + relative_value: + format: double + type: number + start_time: + format: int64 + type: integer + window: + format: int64 + type: integer + type: object + GetCohortResponseDataType: + default: cohort_response + enum: + - cohort_response + example: cohort_response + type: string + x-enum-varnames: + - COHORT_RESPONSE + GetCohortUsersRequest: + properties: + data: + $ref: '#/components/schemas/GetCohortUsersRequestData' + type: object + GetCohortUsersRequestData: + properties: + attributes: + $ref: '#/components/schemas/GetCohortUsersRequestDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/GetCohortUsersRequestDataType' + required: + - type + type: object + GetCohortUsersRequestDataAttributes: + properties: + data_source: + type: string + definition: + $ref: '#/components/schemas/GetCohortUsersRequestDataAttributesDefinition' + execution: + format: int64 + type: integer + time: + $ref: '#/components/schemas/GetCohortUsersRequestDataAttributesTime' + user_selection: + type: string + window_size: + type: string + type: object + GetCohortUsersRequestDataAttributesDefinition: + properties: + audience_filters: + $ref: '#/components/schemas/GetCohortUsersRequestDataAttributesDefinitionAudienceFilters' + cohort: + type: string + inclusion_search: + type: string + return_search: + type: string + segment_id: + type: string + window: + format: int64 + type: integer + type: object + GetCohortUsersRequestDataAttributesDefinitionAudienceFilters: + properties: + accounts: + items: + $ref: '#/components/schemas/GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersAccountsItems' + type: array + formula: + type: string + segments: + items: + $ref: '#/components/schemas/GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersSegmentsItems' + type: array + users: + items: + $ref: '#/components/schemas/GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersUsersItems' + type: array + type: object + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersAccountsItems: + properties: + name: + example: '' + type: string + query: + type: string + required: + - name + type: object + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersSegmentsItems: + properties: + name: + example: '' + type: string + segment_id: + example: '' + type: string + required: + - name + - segment_id + type: object + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersUsersItems: + properties: + name: + example: '' + type: string + query: + type: string + required: + - name + type: object + GetCohortUsersRequestDataAttributesTime: + properties: + from: + format: int64 + type: integer + to: + format: int64 + type: integer + type: object + GetCohortUsersRequestDataType: + default: cohort_users_request + enum: + - cohort_users_request + example: cohort_users_request + type: string + x-enum-varnames: + - COHORT_USERS_REQUEST + GetCohortUsersResponse: + example: + data: + attributes: + users: + - email: user@example.com + id: user123 + name: John Doe + - email: jane@example.com + id: user456 + name: Jane Smith + id: cohort_users_response + type: cohort_users_response + properties: + data: + $ref: '#/components/schemas/GetCohortUsersResponseData' + type: object + GetCohortUsersResponseData: + properties: + attributes: + $ref: '#/components/schemas/GetCohortUsersResponseDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/GetCohortUsersResponseDataType' + required: + - type + type: object + GetCohortUsersResponseDataAttributes: + properties: + users: + items: + $ref: '#/components/schemas/GetCohortUsersResponseDataAttributesUsersItems' + type: array + type: object + GetCohortUsersResponseDataAttributesUsersItems: + properties: + email: + type: string + id: + type: string + name: + type: string + type: object + GetCohortUsersResponseDataType: + default: cohort_users_response + enum: + - cohort_users_response + example: cohort_users_response + type: string + x-enum-varnames: + - COHORT_USERS_RESPONSE GetCustomFrameworkResponse: description: Response object to get a custom framework. properties: @@ -42312,6 +42995,294 @@ components: example: report_id type: string type: object + SankeyRequest: + example: + data: + attributes: + data_source: '' + definition: + entries_per_step: 10 + number_of_steps: 5 + source: '@view.name' + target: '@view.name' + enforced_execution_type: '' + request_id: '' + sampling: + enabled: true + search: + audience_filters: {} + query: '@type:view @application.id:*' + subquery_id: '' + time: + from: 1756425600000 + to: 1756857600000 + id: sankey_request + type: sankey_request + properties: + data: + $ref: '#/components/schemas/SankeyRequestData' + type: object + SankeyRequestData: + properties: + attributes: + $ref: '#/components/schemas/SankeyRequestDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/SankeyRequestDataType' + required: + - type + type: object + SankeyRequestDataAttributes: + properties: + data_source: + type: string + definition: + $ref: '#/components/schemas/SankeyRequestDataAttributesDefinition' + enforced_execution_type: + type: string + request_id: + type: string + sampling: + $ref: '#/components/schemas/SankeyRequestDataAttributesSampling' + search: + $ref: '#/components/schemas/SankeyRequestDataAttributesSearch' + time: + $ref: '#/components/schemas/SankeyRequestDataAttributesTime' + type: object + SankeyRequestDataAttributesDefinition: + properties: + entries_per_step: + format: int64 + type: integer + number_of_steps: + format: int64 + type: integer + source: + type: string + target: + type: string + type: object + SankeyRequestDataAttributesSampling: + properties: + enabled: + description: The `sampling` `enabled`. + type: boolean + type: object + SankeyRequestDataAttributesSearch: + properties: + audience_filters: + $ref: '#/components/schemas/SankeyRequestDataAttributesSearchAudienceFilters' + occurrences: + $ref: '#/components/schemas/SankeyRequestDataAttributesSearchOccurrences' + query: + type: string + subquery_id: + type: string + type: object + SankeyRequestDataAttributesSearchAudienceFilters: + properties: + accounts: + items: + $ref: '#/components/schemas/SankeyRequestDataAttributesSearchAudienceFiltersAccountsItems' + type: array + formula: + type: string + segments: + items: + $ref: '#/components/schemas/SankeyRequestDataAttributesSearchAudienceFiltersSegmentsItems' + type: array + users: + items: + $ref: '#/components/schemas/SankeyRequestDataAttributesSearchAudienceFiltersUsersItems' + type: array + type: object + SankeyRequestDataAttributesSearchAudienceFiltersAccountsItems: + properties: + name: + example: '' + type: string + query: + type: string + required: + - name + type: object + SankeyRequestDataAttributesSearchAudienceFiltersSegmentsItems: + properties: + name: + example: '' + type: string + segment_id: + example: '' + type: string + required: + - name + - segment_id + type: object + SankeyRequestDataAttributesSearchAudienceFiltersUsersItems: + properties: + name: + example: '' + type: string + query: + type: string + required: + - name + type: object + SankeyRequestDataAttributesSearchOccurrences: + properties: + meta: + additionalProperties: + type: string + type: object + operator: + example: '' + type: string + value: + example: '' + type: string + required: + - operator + - value + type: object + SankeyRequestDataAttributesTime: + properties: + from: + format: int64 + type: integer + to: + format: int64 + type: integer + type: object + SankeyRequestDataType: + default: sankey_request + enum: + - sankey_request + example: sankey_request + type: string + x-enum-varnames: + - SANKEY_REQUEST + SankeyResponse: + example: + data: + attributes: + links: + - column: 0 + id: apm_home-to-apm_traces + source: apm_home + target: apm_traces + value: 33054 + nodes: + - aggregated_nodes: null + column: 0 + id: apm_home + incoming_value: 0 + name: /apm/home + outgoing_value: 33054 + type: regular + value: 284608 + - aggregated_nodes: null + column: 1 + id: apm_traces + incoming_value: 33054 + name: /apm/traces + outgoing_value: 15000 + type: regular + value: 33054 + id: sankey_response + type: sankey_response + properties: + data: + $ref: '#/components/schemas/SankeyResponseData' + type: object + SankeyResponseData: + properties: + attributes: + $ref: '#/components/schemas/SankeyResponseDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/SankeyResponseDataType' + required: + - type + type: object + SankeyResponseDataAttributes: + properties: + links: + items: + $ref: '#/components/schemas/SankeyResponseDataAttributesLinksItems' + type: array + nodes: + items: + $ref: '#/components/schemas/SankeyResponseDataAttributesNodesItems' + type: array + type: object + SankeyResponseDataAttributesLinksItems: + properties: + column: + format: int64 + type: integer + id: + type: string + source: + type: string + target: + type: string + value: + format: int64 + type: integer + type: object + SankeyResponseDataAttributesNodesItems: + properties: + aggregated_nodes: + items: + $ref: '#/components/schemas/SankeyResponseDataAttributesNodesItemsAggregatedNodesItems' + type: array + column: + format: int64 + type: integer + id: + type: string + incoming_value: + format: int64 + type: integer + name: + type: string + outgoing_value: + format: int64 + type: integer + type: + type: string + value: + format: int64 + type: integer + type: object + SankeyResponseDataAttributesNodesItemsAggregatedNodesItems: + properties: + id: + type: string + incoming_value: + format: int64 + type: integer + name: + type: string + outgoing_value: + format: int64 + type: integer + type: + type: string + value: + format: int64 + type: integer + type: object + SankeyResponseDataType: + default: sankey_response + enum: + - sankey_response + example: sankey_response + type: string + x-enum-varnames: + - SANKEY_RESPONSE ScaRequest: properties: data: @@ -45944,6 +46915,229 @@ components: required: - securityTrigger type: object + Segment: + example: + data: + attributes: + created_at: '0001-01-01T00:00:00Z' + created_by: + handle: '' + id: '' + uuid: '' + data_query: + event_platform: + - facet: '@usr.id' + from: '2025-08-01' + name: high_value_users + query: '@type:view @view.name:/logs @usr.session_duration:>300000' + to: '2025-09-01' + description: Users who frequently visit logs and have high session duration + modified_at: '0001-01-01T00:00:00Z' + modified_by: + handle: '' + id: '' + uuid: '' + name: High-Value Users + org_id: 123456 + source: 0 + tags: + - high-value + - logs + - active + version: 1 + id: segment-12345 + type: segment + properties: + data: + $ref: '#/components/schemas/SegmentData' + type: object + SegmentArray: + properties: + data: + items: + $ref: '#/components/schemas/SegmentData' + type: array + required: + - data + type: object + SegmentData: + properties: + attributes: + $ref: '#/components/schemas/SegmentDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/SegmentDataType' + required: + - type + type: object + SegmentDataAttributes: + properties: + created_at: + format: date-time + type: string + created_by: + $ref: '#/components/schemas/SegmentDataSource' + data_query: + $ref: '#/components/schemas/SegmentDataAttributesDataQuery' + description: + type: string + disabled_at: + format: date-time + type: string + disabled_by: + $ref: '#/components/schemas/SegmentDataSource' + materialization_row_count: + format: int64 + type: integer + materialized_at: + type: string + modified_at: + format: date-time + type: string + modified_by: + $ref: '#/components/schemas/SegmentDataSource' + name: + example: '' + type: string + org_id: + format: int64 + type: integer + source: + format: int64 + type: integer + tags: + items: + type: string + type: array + version: + format: int64 + type: integer + required: + - data_query + - name + type: object + SegmentDataAttributesDataQuery: + properties: + combination: + type: string + event_platform: + items: + $ref: '#/components/schemas/SegmentDataAttributesDataQueryEventPlatformItems' + type: array + reference_table: + items: + $ref: '#/components/schemas/SegmentDataAttributesDataQueryReferenceTableItems' + type: array + static: + items: + $ref: '#/components/schemas/SegmentDataAttributesDataQueryStaticItems' + type: array + user_store: + items: + $ref: '#/components/schemas/SegmentDataAttributesDataQueryUserStoreItems' + type: array + type: object + SegmentDataAttributesDataQueryEventPlatformItems: + properties: + facet: + example: '' + type: string + from: + type: string + name: + type: string + query: + type: string + to: + type: string + required: + - facet + type: object + SegmentDataAttributesDataQueryReferenceTableItems: + properties: + columns: + items: + $ref: '#/components/schemas/SegmentDataAttributesDataQueryReferenceTableItemsColumnsItems' + type: array + filter_query: + type: string + join_condition: + $ref: '#/components/schemas/SegmentDataAttributesDataQueryReferenceTableItemsJoinCondition' + name: + type: string + table_name: + example: '' + type: string + required: + - join_condition + - table_name + type: object + SegmentDataAttributesDataQueryReferenceTableItemsColumnsItems: + properties: + alias: + type: string + name: + type: string + type: object + SegmentDataAttributesDataQueryReferenceTableItemsJoinCondition: + properties: + column_name: + example: '' + type: string + facet: + type: string + required: + - column_name + type: object + SegmentDataAttributesDataQueryStaticItems: + properties: + id: + type: string + name: + type: string + user_count: + format: int64 + minimum: 0 + type: integer + type: object + SegmentDataAttributesDataQueryUserStoreItems: + properties: + facet: + type: string + name: + type: string + query: + type: string + type: object + SegmentDataSource: + properties: + handle: + example: '' + type: string + icon: + type: string + id: + example: '' + type: string + name: + type: string + uuid: + example: '' + type: string + required: + - handle + - id + - uuid + type: object + SegmentDataType: + default: segment + enum: + - segment + example: segment + type: string + x-enum-varnames: + - SEGMENT Selectors: description: 'Selectors are used to filter security issues for which notifications should be generated. @@ -73028,6 +74222,54 @@ paths: operator: OR permissions: - rum_apps_write + /api/v2/rum/cohort: + post: + description: Analyze user cohorts for retention and conversion analysis + operationId: GetRumCohort + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/GetCohortRequest' + required: true + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/GetCohortResponse' + description: Successful response with cohort analysis data + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: [] + summary: Get rum cohort + tags: + - Cohort + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/rum/cohort/users: + post: + description: Get users within a specific cohort for retention analysis + operationId: GetRumCohortUsers + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/GetCohortUsersRequest' + required: true + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/GetCohortUsersResponse' + description: Successful response with cohort users + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: [] + summary: Get rum cohort users + tags: + - Cohort + x-unstable: '**Note**: This endpoint may be subject to changes.' /api/v2/rum/config/metrics: get: description: Get the list of configured rum-based metrics with their definitions. @@ -73282,6 +74524,134 @@ paths: operator: OR permissions: - rum_apps_read + /api/v2/rum/funnel: + post: + description: Analyze conversion funnels to understand user drop-off patterns + operationId: GetRumFunnel + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/FunnelRequest' + required: true + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/FunnelResponse' + description: Successful response with funnel analysis data + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: [] + summary: Get rum funnel + tags: + - Funnel + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/rum/funnel/new_step_suggestions: + post: + description: Get suggested steps for building conversion funnels + operationId: GetRumFunnelStepSuggestions + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/FunnelSuggestionRequest' + required: true + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/FunnelSuggestionResponse' + description: Successful response with funnel step suggestions + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: [] + summary: Get rum funnel step suggestions + tags: + - Funnel + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/rum/sankey: + post: + description: Generate Sankey diagrams to visualize user flow paths and drop-off + points + operationId: GetRumSankey + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SankeyRequest' + required: true + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/SankeyResponse' + description: Successful response with Sankey diagram data + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: [] + summary: Get rum sankey + tags: + - User Flow + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/rum/segment: + get: + description: List all available user segments for audience targeting + operationId: ListRumSegments + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/SegmentArray' + description: Successful response with list of segments + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: [] + summary: List rum segments + tags: + - Segments + x-unstable: '**Note**: This endpoint may be subject to changes.' + post: + description: Create a new user segment for audience targeting + operationId: CreateRumSegment + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/Segment' + required: true + responses: + '201': + content: + application/json: + schema: + $ref: '#/components/schemas/Segment' + description: Segment created successfully + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: [] + summary: Create rum segment + tags: + - Segments + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/rum/segment/initialize: + post: + description: Initialize default segments for a new organization + operationId: InitializeRumSegments + responses: + '200': + description: Default segments created successfully + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: [] + summary: Initialize rum segments + tags: + - Segments + x-unstable: '**Note**: This endpoint may be subject to changes.' /api/v2/saml_configurations/idp_metadata: post: description: 'Endpoint for uploading IdP metadata for SAML setup. @@ -81252,6 +82622,8 @@ tags: API. See the [Cloudflare integration page](https://docs.datadoghq.com/integrations/cloudflare/) for more information. name: Cloudflare Integration +- description: API for Cohort. + name: Cohort - description: Manage your Datadog Confluent Cloud integration accounts and account resources directly through the Datadog API. See the [Confluent Cloud page](https://docs.datadoghq.com/integrations/confluent_cloud/) for more information. @@ -81335,6 +82707,8 @@ tags: that apply configuration changes to multiple hosts at once.' name: Fleet Automation +- description: API for funnel. + name: Funnel - description: 'Configure your Datadog-Google Cloud Platform (GCP) integration directly through the Datadog API. Read more about the [Datadog-Google Cloud Platform integration](https://docs.datadoghq.com/integrations/google_cloud_platform).' @@ -81556,6 +82930,8 @@ tags: See the [Datadog Security page](https://docs.datadoghq.com/security/) for more information. name: Security Monitoring +- description: API for segments. + name: Segments - description: Create, update, delete, and retrieve sensitive data scanner groups and rules. See the [Sensitive Data Scanner page](https://docs.datadoghq.com/sensitive_data_scanner/) for more information. @@ -81643,6 +83019,8 @@ tags: description: Find out more at url: https://docs.datadoghq.com/account_management/billing/usage_details/ name: Usage Metering +- description: API for user flow. + name: User Flow - description: Create, edit, and disable users. externalDocs: url: https://docs.datadoghq.com/account_management/users diff --git a/docs/datadog_api_client.v2.api.rst b/docs/datadog_api_client.v2.api.rst index 1ff85c6b60..bde231efe4 100644 --- a/docs/datadog_api_client.v2.api.rst +++ b/docs/datadog_api_client.v2.api.rst @@ -137,6 +137,13 @@ datadog\_api\_client.v2.api.cloudflare\_integration\_api module :members: :show-inheritance: +datadog\_api\_client.v2.api.cohort\_api module +---------------------------------------------- + +.. automodule:: datadog_api_client.v2.api.cohort_api + :members: + :show-inheritance: + datadog\_api\_client.v2.api.confluent\_cloud\_api module -------------------------------------------------------- @@ -249,6 +256,13 @@ datadog\_api\_client.v2.api.fleet\_automation\_api module :members: :show-inheritance: +datadog\_api\_client.v2.api.funnel\_api module +---------------------------------------------- + +.. automodule:: datadog_api_client.v2.api.funnel_api + :members: + :show-inheritance: + datadog\_api\_client.v2.api.gcp\_integration\_api module -------------------------------------------------------- @@ -459,6 +473,13 @@ datadog\_api\_client.v2.api.security\_monitoring\_api module :members: :show-inheritance: +datadog\_api\_client.v2.api.segments\_api module +------------------------------------------------ + +.. automodule:: datadog_api_client.v2.api.segments_api + :members: + :show-inheritance: + datadog\_api\_client.v2.api.sensitive\_data\_scanner\_api module ---------------------------------------------------------------- @@ -557,6 +578,13 @@ datadog\_api\_client.v2.api.usage\_metering\_api module :members: :show-inheritance: +datadog\_api\_client.v2.api.user\_flow\_api module +-------------------------------------------------- + +.. automodule:: datadog_api_client.v2.api.user_flow_api + :members: + :show-inheritance: + datadog\_api\_client.v2.api.users\_api module --------------------------------------------- diff --git a/docs/datadog_api_client.v2.model.rst b/docs/datadog_api_client.v2.model.rst index 94d4bc9b8c..715dc3c429 100644 --- a/docs/datadog_api_client.v2.model.rst +++ b/docs/datadog_api_client.v2.model.rst @@ -8614,6 +8614,195 @@ datadog\_api\_client.v2.model.full\_custom\_framework\_data\_attributes module :members: :show-inheritance: +datadog\_api\_client.v2.model.funnel\_request module +---------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_request + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_request\_data module +---------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_request_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_request\_data\_attributes module +---------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_request_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_request\_data\_attributes\_search module +------------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.funnel_request_data_attributes_search + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_request\_data\_attributes\_search\_steps\_items module +-------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_request_data_attributes_search_steps_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_request\_data\_attributes\_time module +---------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_request_data_attributes_time + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_request\_data\_type module +---------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_request_data_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_response module +----------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_response\_data module +----------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_response_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_response\_data\_attributes module +----------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_response_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_response\_data\_attributes\_funnel\_steps\_items module +--------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_response_data_attributes_funnel_steps_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_response\_data\_type module +----------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_response_data_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_response\_elapsed\_time module +-------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_response_elapsed_time + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_suggestion\_request module +---------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_suggestion_request + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_suggestion\_request\_data module +---------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_suggestion_request_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_suggestion\_request\_data\_attributes module +---------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_suggestion_request_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_suggestion\_request\_data\_attributes\_search module +------------------------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_search + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_suggestion\_request\_data\_attributes\_search\_steps\_items module +-------------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_search_steps_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_suggestion\_request\_data\_attributes\_term\_search module +------------------------------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_term_search + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_suggestion\_request\_data\_attributes\_time module +---------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_time + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_suggestion\_request\_data\_type module +---------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_suggestion_request_data_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_suggestion\_response module +----------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_suggestion_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_suggestion\_response\_data module +----------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_suggestion_response_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_suggestion\_response\_data\_attributes module +----------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_suggestion_response_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_suggestion\_response\_data\_attributes\_actions\_items module +--------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_suggestion_response_data_attributes_actions_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_suggestion\_response\_data\_attributes\_views\_items module +------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_suggestion_response_data_attributes_views_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.funnel\_suggestion\_response\_data\_type module +----------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.funnel_suggestion_response_data_type + :members: + :show-inheritance: + datadog\_api\_client.v2.model.gcp\_credentials module ----------------------------------------------------- @@ -9062,6 +9251,223 @@ datadog\_api\_client.v2.model.get\_app\_response\_data\_attributes module :members: :show-inheritance: +datadog\_api\_client.v2.model.get\_cohort\_request module +--------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_request + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_request\_data module +--------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_request_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_request\_data\_attributes module +--------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_request_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_request\_data\_attributes\_definition module +--------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_request_data_attributes_definition + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_request\_data\_attributes\_definition\_audience\_filters module +---------------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_request\_data\_attributes\_definition\_audience\_filters\_accounts\_items module +--------------------------------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters_accounts_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_request\_data\_attributes\_definition\_audience\_filters\_segments\_items module +--------------------------------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters_segments_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_request\_data\_attributes\_definition\_audience\_filters\_users\_items module +------------------------------------------------------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters_users_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_request\_data\_attributes\_time module +--------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_request_data_attributes_time + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_request\_data\_type module +--------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_request_data_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_response module +---------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_response\_data module +---------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_response_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_response\_data\_attributes module +---------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_response_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_response\_data\_attributes\_cohorts\_items module +-------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_response_data_attributes_cohorts_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_response\_data\_attributes\_cohorts\_items\_values\_items module +----------------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_response_data_attributes_cohorts_items_values_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_response\_data\_type module +---------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_response_data_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_users\_request module +---------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_users_request + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_users\_request\_data module +---------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_users_request_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_users\_request\_data\_attributes module +---------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_users_request_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_users\_request\_data\_attributes\_definition module +---------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_users\_request\_data\_attributes\_definition\_audience\_filters module +----------------------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_users\_request\_data\_attributes\_definition\_audience\_filters\_accounts\_items module +---------------------------------------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters_accounts_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_users\_request\_data\_attributes\_definition\_audience\_filters\_segments\_items module +---------------------------------------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters_segments_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_users\_request\_data\_attributes\_definition\_audience\_filters\_users\_items module +------------------------------------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters_users_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_users\_request\_data\_attributes\_time module +---------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_users_request_data_attributes_time + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_users\_request\_data\_type module +---------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_users_request_data_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_users\_response module +----------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_users_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_users\_response\_data module +----------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_users_response_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_users\_response\_data\_attributes module +----------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_users_response_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_users\_response\_data\_attributes\_users\_items module +------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_users_response_data_attributes_users_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_cohort\_users\_response\_data\_type module +----------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_cohort_users_response_data_type + :members: + :show-inheritance: + datadog\_api\_client.v2.model.get\_custom\_framework\_response module --------------------------------------------------------------------- @@ -18610,6 +19016,146 @@ datadog\_api\_client.v2.model.saml\_assertion\_attributes\_type module :members: :show-inheritance: +datadog\_api\_client.v2.model.sankey\_request module +---------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_request + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_request\_data module +---------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_request_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_request\_data\_attributes module +---------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_request_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_request\_data\_attributes\_definition module +---------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_request_data_attributes_definition + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_request\_data\_attributes\_sampling module +-------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_request_data_attributes_sampling + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_request\_data\_attributes\_search module +------------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.sankey_request_data_attributes_search + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_request\_data\_attributes\_search\_audience\_filters module +------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_request_data_attributes_search_audience_filters + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_request\_data\_attributes\_search\_audience\_filters\_accounts\_items module +------------------------------------------------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.sankey_request_data_attributes_search_audience_filters_accounts_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_request\_data\_attributes\_search\_audience\_filters\_segments\_items module +------------------------------------------------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.sankey_request_data_attributes_search_audience_filters_segments_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_request\_data\_attributes\_search\_audience\_filters\_users\_items module +--------------------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_request_data_attributes_search_audience_filters_users_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_request\_data\_attributes\_search\_occurrences module +------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_request_data_attributes_search_occurrences + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_request\_data\_attributes\_time module +---------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_request_data_attributes_time + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_request\_data\_type module +---------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_request_data_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_response module +----------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_response\_data module +----------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_response_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_response\_data\_attributes module +----------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_response_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_response\_data\_attributes\_links\_items module +------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_response_data_attributes_links_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_response\_data\_attributes\_nodes\_items module +------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_response_data_attributes_nodes_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_response\_data\_attributes\_nodes\_items\_aggregated\_nodes\_items module +--------------------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_response_data_attributes_nodes_items_aggregated_nodes_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.sankey\_response\_data\_type module +----------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.sankey_response_data_type + :members: + :show-inheritance: + datadog\_api\_client.v2.model.sbom module ----------------------------------------- @@ -20087,6 +20633,97 @@ datadog\_api\_client.v2.model.security\_trigger\_wrapper module :members: :show-inheritance: +datadog\_api\_client.v2.model.segment module +-------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.segment + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.segment\_array module +--------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.segment_array + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.segment\_data module +-------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.segment_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.segment\_data\_attributes module +-------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.segment_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.segment\_data\_attributes\_data\_query module +--------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.segment_data_attributes_data_query + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.segment\_data\_attributes\_data\_query\_event\_platform\_items module +--------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.segment_data_attributes_data_query_event_platform_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.segment\_data\_attributes\_data\_query\_reference\_table\_items module +---------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.segment_data_attributes_data_query_reference_table_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.segment\_data\_attributes\_data\_query\_reference\_table\_items\_columns\_items module +-------------------------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.segment_data_attributes_data_query_reference_table_items_columns_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.segment\_data\_attributes\_data\_query\_reference\_table\_items\_join\_condition module +--------------------------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.segment_data_attributes_data_query_reference_table_items_join_condition + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.segment\_data\_attributes\_data\_query\_static\_items module +------------------------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.segment_data_attributes_data_query_static_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.segment\_data\_attributes\_data\_query\_user\_store\_items module +----------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.segment_data_attributes_data_query_user_store_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.segment\_data\_source module +---------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.segment_data_source + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.segment\_data\_type module +-------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.segment_data_type + :members: + :show-inheritance: + datadog\_api\_client.v2.model.selectors module ---------------------------------------------- diff --git a/examples/v2/cohort/GetRumCohort.py b/examples/v2/cohort/GetRumCohort.py new file mode 100644 index 0000000000..29d548d55e --- /dev/null +++ b/examples/v2/cohort/GetRumCohort.py @@ -0,0 +1,63 @@ +""" +Get rum cohort returns "Successful response with cohort analysis data" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.cohort_api import CohortApi +from datadog_api_client.v2.model.get_cohort_request import GetCohortRequest +from datadog_api_client.v2.model.get_cohort_request_data import GetCohortRequestData +from datadog_api_client.v2.model.get_cohort_request_data_attributes import GetCohortRequestDataAttributes +from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition import ( + GetCohortRequestDataAttributesDefinition, +) +from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters import ( + GetCohortRequestDataAttributesDefinitionAudienceFilters, +) +from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters_accounts_items import ( + GetCohortRequestDataAttributesDefinitionAudienceFiltersAccountsItems, +) +from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters_segments_items import ( + GetCohortRequestDataAttributesDefinitionAudienceFiltersSegmentsItems, +) +from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters_users_items import ( + GetCohortRequestDataAttributesDefinitionAudienceFiltersUsersItems, +) +from datadog_api_client.v2.model.get_cohort_request_data_attributes_time import GetCohortRequestDataAttributesTime +from datadog_api_client.v2.model.get_cohort_request_data_type import GetCohortRequestDataType + +body = GetCohortRequest( + data=GetCohortRequestData( + attributes=GetCohortRequestDataAttributes( + definition=GetCohortRequestDataAttributesDefinition( + audience_filters=GetCohortRequestDataAttributesDefinitionAudienceFilters( + accounts=[ + GetCohortRequestDataAttributesDefinitionAudienceFiltersAccountsItems( + name="", + ), + ], + segments=[ + GetCohortRequestDataAttributesDefinitionAudienceFiltersSegmentsItems( + name="", + segment_id="", + ), + ], + users=[ + GetCohortRequestDataAttributesDefinitionAudienceFiltersUsersItems( + name="", + ), + ], + ), + ), + time=GetCohortRequestDataAttributesTime(), + ), + type=GetCohortRequestDataType.COHORT_REQUEST, + ), +) + +configuration = Configuration() +configuration.unstable_operations["get_rum_cohort"] = True +with ApiClient(configuration) as api_client: + api_instance = CohortApi(api_client) + response = api_instance.get_rum_cohort(body=body) + + print(response) diff --git a/examples/v2/cohort/GetRumCohortUsers.py b/examples/v2/cohort/GetRumCohortUsers.py new file mode 100644 index 0000000000..098a746c02 --- /dev/null +++ b/examples/v2/cohort/GetRumCohortUsers.py @@ -0,0 +1,65 @@ +""" +Get rum cohort users returns "Successful response with cohort users" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.cohort_api import CohortApi +from datadog_api_client.v2.model.get_cohort_users_request import GetCohortUsersRequest +from datadog_api_client.v2.model.get_cohort_users_request_data import GetCohortUsersRequestData +from datadog_api_client.v2.model.get_cohort_users_request_data_attributes import GetCohortUsersRequestDataAttributes +from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition import ( + GetCohortUsersRequestDataAttributesDefinition, +) +from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters import ( + GetCohortUsersRequestDataAttributesDefinitionAudienceFilters, +) +from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters_accounts_items import ( + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersAccountsItems, +) +from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters_segments_items import ( + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersSegmentsItems, +) +from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters_users_items import ( + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersUsersItems, +) +from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_time import ( + GetCohortUsersRequestDataAttributesTime, +) +from datadog_api_client.v2.model.get_cohort_users_request_data_type import GetCohortUsersRequestDataType + +body = GetCohortUsersRequest( + data=GetCohortUsersRequestData( + attributes=GetCohortUsersRequestDataAttributes( + definition=GetCohortUsersRequestDataAttributesDefinition( + audience_filters=GetCohortUsersRequestDataAttributesDefinitionAudienceFilters( + accounts=[ + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersAccountsItems( + name="", + ), + ], + segments=[ + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersSegmentsItems( + name="", + segment_id="", + ), + ], + users=[ + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersUsersItems( + name="", + ), + ], + ), + ), + time=GetCohortUsersRequestDataAttributesTime(), + ), + type=GetCohortUsersRequestDataType.COHORT_USERS_REQUEST, + ), +) + +configuration = Configuration() +configuration.unstable_operations["get_rum_cohort_users"] = True +with ApiClient(configuration) as api_client: + api_instance = CohortApi(api_client) + response = api_instance.get_rum_cohort_users(body=body) + + print(response) diff --git a/examples/v2/funnel/GetRumFunnel.py b/examples/v2/funnel/GetRumFunnel.py new file mode 100644 index 0000000000..8b72a59f09 --- /dev/null +++ b/examples/v2/funnel/GetRumFunnel.py @@ -0,0 +1,56 @@ +""" +Get rum funnel returns "Successful response with funnel analysis data" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.funnel_api import FunnelApi +from datadog_api_client.v2.model.funnel_request import FunnelRequest +from datadog_api_client.v2.model.funnel_request_data import FunnelRequestData +from datadog_api_client.v2.model.funnel_request_data_attributes import FunnelRequestDataAttributes +from datadog_api_client.v2.model.funnel_request_data_attributes_search import FunnelRequestDataAttributesSearch +from datadog_api_client.v2.model.funnel_request_data_attributes_search_steps_items import ( + FunnelRequestDataAttributesSearchStepsItems, +) +from datadog_api_client.v2.model.funnel_request_data_attributes_time import FunnelRequestDataAttributesTime +from datadog_api_client.v2.model.funnel_request_data_type import FunnelRequestDataType + +body = FunnelRequest( + data=FunnelRequestData( + attributes=FunnelRequestDataAttributes( + data_source="rum", + enforced_execution_type="", + request_id="", + search=FunnelRequestDataAttributesSearch( + cross_session_filter="", + query_string="@type:view", + steps=[ + FunnelRequestDataAttributesSearchStepsItems( + facet="@view.name", + step_filter="", + value="/apm/home", + ), + FunnelRequestDataAttributesSearchStepsItems( + facet="@view.name", + step_filter="", + value="/apm/traces", + ), + ], + subquery_id="", + ), + time=FunnelRequestDataAttributesTime( + _from=1756425600000, + to=1756857600000, + ), + ), + id="funnel_request", + type=FunnelRequestDataType.FUNNEL_REQUEST, + ), +) + +configuration = Configuration() +configuration.unstable_operations["get_rum_funnel"] = True +with ApiClient(configuration) as api_client: + api_instance = FunnelApi(api_client) + response = api_instance.get_rum_funnel(body=body) + + print(response) diff --git a/examples/v2/funnel/GetRumFunnelStepSuggestions.py b/examples/v2/funnel/GetRumFunnelStepSuggestions.py new file mode 100644 index 0000000000..dbfe240bd6 --- /dev/null +++ b/examples/v2/funnel/GetRumFunnelStepSuggestions.py @@ -0,0 +1,59 @@ +""" +Get rum funnel step suggestions returns "Successful response with funnel step suggestions" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.funnel_api import FunnelApi +from datadog_api_client.v2.model.funnel_suggestion_request import FunnelSuggestionRequest +from datadog_api_client.v2.model.funnel_suggestion_request_data import FunnelSuggestionRequestData +from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes import FunnelSuggestionRequestDataAttributes +from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_search import ( + FunnelSuggestionRequestDataAttributesSearch, +) +from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_search_steps_items import ( + FunnelSuggestionRequestDataAttributesSearchStepsItems, +) +from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_term_search import ( + FunnelSuggestionRequestDataAttributesTermSearch, +) +from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_time import ( + FunnelSuggestionRequestDataAttributesTime, +) +from datadog_api_client.v2.model.funnel_suggestion_request_data_type import FunnelSuggestionRequestDataType + +body = FunnelSuggestionRequest( + data=FunnelSuggestionRequestData( + attributes=FunnelSuggestionRequestDataAttributes( + data_source="", + search=FunnelSuggestionRequestDataAttributesSearch( + cross_session_filter="", + query_string="@type:view", + steps=[ + FunnelSuggestionRequestDataAttributesSearchStepsItems( + facet="@view.name", + step_filter="", + value="/apm/home", + ), + ], + subquery_id="", + ), + term_search=FunnelSuggestionRequestDataAttributesTermSearch( + query="apm", + ), + time=FunnelSuggestionRequestDataAttributesTime( + _from=1756425600000, + to=1756857600000, + ), + ), + id="funnel_suggestion_request", + type=FunnelSuggestionRequestDataType.FUNNEL_SUGGESTION_REQUEST, + ), +) + +configuration = Configuration() +configuration.unstable_operations["get_rum_funnel_step_suggestions"] = True +with ApiClient(configuration) as api_client: + api_instance = FunnelApi(api_client) + response = api_instance.get_rum_funnel_step_suggestions(body=body) + + print(response) diff --git a/examples/v2/segments/CreateRumSegment.py b/examples/v2/segments/CreateRumSegment.py new file mode 100644 index 0000000000..4812ce5df0 --- /dev/null +++ b/examples/v2/segments/CreateRumSegment.py @@ -0,0 +1,67 @@ +""" +Create rum segment returns "Segment created successfully" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.segments_api import SegmentsApi +from datadog_api_client.v2.model.segment import Segment +from datadog_api_client.v2.model.segment_data import SegmentData +from datadog_api_client.v2.model.segment_data_attributes import SegmentDataAttributes +from datadog_api_client.v2.model.segment_data_attributes_data_query import SegmentDataAttributesDataQuery +from datadog_api_client.v2.model.segment_data_attributes_data_query_event_platform_items import ( + SegmentDataAttributesDataQueryEventPlatformItems, +) +from datadog_api_client.v2.model.segment_data_source import SegmentDataSource +from datadog_api_client.v2.model.segment_data_type import SegmentDataType +from datetime import datetime +from dateutil.tz import tzutc + +body = Segment( + data=SegmentData( + attributes=SegmentDataAttributes( + created_at=datetime(1, 1, 1, 0, 0, tzinfo=tzutc()), + created_by=SegmentDataSource( + handle="", + id="", + uuid="", + ), + data_query=SegmentDataAttributesDataQuery( + event_platform=[ + SegmentDataAttributesDataQueryEventPlatformItems( + facet="@usr.id", + _from="2025-08-01", + name="high_value_users", + query="@type:view @view.name:/logs @usr.session_duration:>300000", + to="2025-09-01", + ), + ], + ), + description="Users who frequently visit logs and have high session duration", + modified_at=datetime(1, 1, 1, 0, 0, tzinfo=tzutc()), + modified_by=SegmentDataSource( + handle="", + id="", + uuid="", + ), + name="High-Value Users", + org_id=123456, + source=0, + tags=[ + "high-value", + "logs", + "active", + ], + version=1, + ), + id="segment-12345", + type=SegmentDataType.SEGMENT, + ), +) + +configuration = Configuration() +configuration.unstable_operations["create_rum_segment"] = True +with ApiClient(configuration) as api_client: + api_instance = SegmentsApi(api_client) + response = api_instance.create_rum_segment(body=body) + + print(response) diff --git a/examples/v2/segments/InitializeRumSegments.py b/examples/v2/segments/InitializeRumSegments.py new file mode 100644 index 0000000000..9bf3478bbe --- /dev/null +++ b/examples/v2/segments/InitializeRumSegments.py @@ -0,0 +1,12 @@ +""" +Initialize rum segments returns "Default segments created successfully" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.segments_api import SegmentsApi + +configuration = Configuration() +configuration.unstable_operations["initialize_rum_segments"] = True +with ApiClient(configuration) as api_client: + api_instance = SegmentsApi(api_client) + api_instance.initialize_rum_segments() diff --git a/examples/v2/segments/ListRumSegments.py b/examples/v2/segments/ListRumSegments.py new file mode 100644 index 0000000000..792ee87e54 --- /dev/null +++ b/examples/v2/segments/ListRumSegments.py @@ -0,0 +1,14 @@ +""" +List rum segments returns "Successful response with list of segments" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.segments_api import SegmentsApi + +configuration = Configuration() +configuration.unstable_operations["list_rum_segments"] = True +with ApiClient(configuration) as api_client: + api_instance = SegmentsApi(api_client) + response = api_instance.list_rum_segments() + + print(response) diff --git a/examples/v2/user-flow/GetRumSankey.py b/examples/v2/user-flow/GetRumSankey.py new file mode 100644 index 0000000000..a4b9d84fd0 --- /dev/null +++ b/examples/v2/user-flow/GetRumSankey.py @@ -0,0 +1,55 @@ +""" +Get rum sankey returns "Successful response with Sankey diagram data" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.user_flow_api import UserFlowApi +from datadog_api_client.v2.model.sankey_request import SankeyRequest +from datadog_api_client.v2.model.sankey_request_data import SankeyRequestData +from datadog_api_client.v2.model.sankey_request_data_attributes import SankeyRequestDataAttributes +from datadog_api_client.v2.model.sankey_request_data_attributes_definition import SankeyRequestDataAttributesDefinition +from datadog_api_client.v2.model.sankey_request_data_attributes_sampling import SankeyRequestDataAttributesSampling +from datadog_api_client.v2.model.sankey_request_data_attributes_search import SankeyRequestDataAttributesSearch +from datadog_api_client.v2.model.sankey_request_data_attributes_search_audience_filters import ( + SankeyRequestDataAttributesSearchAudienceFilters, +) +from datadog_api_client.v2.model.sankey_request_data_attributes_time import SankeyRequestDataAttributesTime +from datadog_api_client.v2.model.sankey_request_data_type import SankeyRequestDataType + +body = SankeyRequest( + data=SankeyRequestData( + attributes=SankeyRequestDataAttributes( + data_source="", + definition=SankeyRequestDataAttributesDefinition( + entries_per_step=10, + number_of_steps=5, + source="@view.name", + target="@view.name", + ), + enforced_execution_type="", + request_id="", + sampling=SankeyRequestDataAttributesSampling( + enabled=True, + ), + search=SankeyRequestDataAttributesSearch( + audience_filters=SankeyRequestDataAttributesSearchAudienceFilters(), + query="@type:view @application.id:*", + subquery_id="", + ), + time=SankeyRequestDataAttributesTime( + _from=1756425600000, + to=1756857600000, + ), + ), + id="sankey_request", + type=SankeyRequestDataType.SANKEY_REQUEST, + ), +) + +configuration = Configuration() +configuration.unstable_operations["get_rum_sankey"] = True +with ApiClient(configuration) as api_client: + api_instance = UserFlowApi(api_client) + response = api_instance.get_rum_sankey(body=body) + + print(response) diff --git a/src/datadog_api_client/configuration.py b/src/datadog_api_client/configuration.py index e9b032eb33..77de29a3eb 100644 --- a/src/datadog_api_client/configuration.py +++ b/src/datadog_api_client/configuration.py @@ -324,6 +324,14 @@ def __init__( "v2.list_pipelines": False, "v2.update_pipeline": False, "v2.validate_pipeline": False, + "v2.get_rum_cohort": False, + "v2.get_rum_cohort_users": False, + "v2.get_rum_funnel": False, + "v2.get_rum_funnel_step_suggestions": False, + "v2.get_rum_sankey": False, + "v2.create_rum_segment": False, + "v2.initialize_rum_segments": False, + "v2.list_rum_segments": False, "v2.create_scorecard_outcomes_batch": False, "v2.create_scorecard_rule": False, "v2.delete_scorecard_rule": False, diff --git a/src/datadog_api_client/v2/api/cohort_api.py b/src/datadog_api_client/v2/api/cohort_api.py new file mode 100644 index 0000000000..12867ae0bc --- /dev/null +++ b/src/datadog_api_client/v2/api/cohort_api.py @@ -0,0 +1,96 @@ +# 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 + +from datadog_api_client.api_client import ApiClient, Endpoint as _Endpoint +from datadog_api_client.configuration import Configuration +from datadog_api_client.v2.model.get_cohort_response import GetCohortResponse +from datadog_api_client.v2.model.get_cohort_request import GetCohortRequest +from datadog_api_client.v2.model.get_cohort_users_response import GetCohortUsersResponse +from datadog_api_client.v2.model.get_cohort_users_request import GetCohortUsersRequest + + +class CohortApi: + """ + API for Cohort. + """ + + def __init__(self, api_client=None): + if api_client is None: + api_client = ApiClient(Configuration()) + self.api_client = api_client + + self._get_rum_cohort_endpoint = _Endpoint( + settings={ + "response_type": (GetCohortResponse,), + "auth": [], + "endpoint_path": "/api/v2/rum/cohort", + "operation_id": "get_rum_cohort", + "http_method": "POST", + "version": "v2", + }, + params_map={ + "body": { + "required": True, + "openapi_types": (GetCohortRequest,), + "location": "body", + }, + }, + headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, + api_client=api_client, + ) + + self._get_rum_cohort_users_endpoint = _Endpoint( + settings={ + "response_type": (GetCohortUsersResponse,), + "auth": [], + "endpoint_path": "/api/v2/rum/cohort/users", + "operation_id": "get_rum_cohort_users", + "http_method": "POST", + "version": "v2", + }, + params_map={ + "body": { + "required": True, + "openapi_types": (GetCohortUsersRequest,), + "location": "body", + }, + }, + headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, + api_client=api_client, + ) + + def get_rum_cohort( + self, + body: GetCohortRequest, + ) -> GetCohortResponse: + """Get rum cohort. + + Analyze user cohorts for retention and conversion analysis + + :type body: GetCohortRequest + :rtype: GetCohortResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["body"] = body + + return self._get_rum_cohort_endpoint.call_with_http_info(**kwargs) + + def get_rum_cohort_users( + self, + body: GetCohortUsersRequest, + ) -> GetCohortUsersResponse: + """Get rum cohort users. + + Get users within a specific cohort for retention analysis + + :type body: GetCohortUsersRequest + :rtype: GetCohortUsersResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["body"] = body + + return self._get_rum_cohort_users_endpoint.call_with_http_info(**kwargs) diff --git a/src/datadog_api_client/v2/api/funnel_api.py b/src/datadog_api_client/v2/api/funnel_api.py new file mode 100644 index 0000000000..0a3f31a0af --- /dev/null +++ b/src/datadog_api_client/v2/api/funnel_api.py @@ -0,0 +1,96 @@ +# 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 + +from datadog_api_client.api_client import ApiClient, Endpoint as _Endpoint +from datadog_api_client.configuration import Configuration +from datadog_api_client.v2.model.funnel_response import FunnelResponse +from datadog_api_client.v2.model.funnel_request import FunnelRequest +from datadog_api_client.v2.model.funnel_suggestion_response import FunnelSuggestionResponse +from datadog_api_client.v2.model.funnel_suggestion_request import FunnelSuggestionRequest + + +class FunnelApi: + """ + API for funnel. + """ + + def __init__(self, api_client=None): + if api_client is None: + api_client = ApiClient(Configuration()) + self.api_client = api_client + + self._get_rum_funnel_endpoint = _Endpoint( + settings={ + "response_type": (FunnelResponse,), + "auth": [], + "endpoint_path": "/api/v2/rum/funnel", + "operation_id": "get_rum_funnel", + "http_method": "POST", + "version": "v2", + }, + params_map={ + "body": { + "required": True, + "openapi_types": (FunnelRequest,), + "location": "body", + }, + }, + headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, + api_client=api_client, + ) + + self._get_rum_funnel_step_suggestions_endpoint = _Endpoint( + settings={ + "response_type": (FunnelSuggestionResponse,), + "auth": [], + "endpoint_path": "/api/v2/rum/funnel/new_step_suggestions", + "operation_id": "get_rum_funnel_step_suggestions", + "http_method": "POST", + "version": "v2", + }, + params_map={ + "body": { + "required": True, + "openapi_types": (FunnelSuggestionRequest,), + "location": "body", + }, + }, + headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, + api_client=api_client, + ) + + def get_rum_funnel( + self, + body: FunnelRequest, + ) -> FunnelResponse: + """Get rum funnel. + + Analyze conversion funnels to understand user drop-off patterns + + :type body: FunnelRequest + :rtype: FunnelResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["body"] = body + + return self._get_rum_funnel_endpoint.call_with_http_info(**kwargs) + + def get_rum_funnel_step_suggestions( + self, + body: FunnelSuggestionRequest, + ) -> FunnelSuggestionResponse: + """Get rum funnel step suggestions. + + Get suggested steps for building conversion funnels + + :type body: FunnelSuggestionRequest + :rtype: FunnelSuggestionResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["body"] = body + + return self._get_rum_funnel_step_suggestions_endpoint.call_with_http_info(**kwargs) diff --git a/src/datadog_api_client/v2/api/segments_api.py b/src/datadog_api_client/v2/api/segments_api.py new file mode 100644 index 0000000000..14b02fb282 --- /dev/null +++ b/src/datadog_api_client/v2/api/segments_api.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 Any, Dict + +from datadog_api_client.api_client import ApiClient, Endpoint as _Endpoint +from datadog_api_client.configuration import Configuration +from datadog_api_client.v2.model.segment_array import SegmentArray +from datadog_api_client.v2.model.segment import Segment + + +class SegmentsApi: + """ + API for segments. + """ + + def __init__(self, api_client=None): + if api_client is None: + api_client = ApiClient(Configuration()) + self.api_client = api_client + + self._create_rum_segment_endpoint = _Endpoint( + settings={ + "response_type": (Segment,), + "auth": [], + "endpoint_path": "/api/v2/rum/segment", + "operation_id": "create_rum_segment", + "http_method": "POST", + "version": "v2", + }, + params_map={ + "body": { + "required": True, + "openapi_types": (Segment,), + "location": "body", + }, + }, + headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, + api_client=api_client, + ) + + self._initialize_rum_segments_endpoint = _Endpoint( + settings={ + "response_type": None, + "auth": [], + "endpoint_path": "/api/v2/rum/segment/initialize", + "operation_id": "initialize_rum_segments", + "http_method": "POST", + "version": "v2", + }, + params_map={}, + headers_map={ + "accept": ["*/*"], + }, + api_client=api_client, + ) + + self._list_rum_segments_endpoint = _Endpoint( + settings={ + "response_type": (SegmentArray,), + "auth": [], + "endpoint_path": "/api/v2/rum/segment", + "operation_id": "list_rum_segments", + "http_method": "GET", + "version": "v2", + }, + params_map={}, + headers_map={ + "accept": ["application/json"], + }, + api_client=api_client, + ) + + def create_rum_segment( + self, + body: Segment, + ) -> Segment: + """Create rum segment. + + Create a new user segment for audience targeting + + :type body: Segment + :rtype: Segment + """ + kwargs: Dict[str, Any] = {} + kwargs["body"] = body + + return self._create_rum_segment_endpoint.call_with_http_info(**kwargs) + + def initialize_rum_segments( + self, + ) -> None: + """Initialize rum segments. + + Initialize default segments for a new organization + + :rtype: None + """ + kwargs: Dict[str, Any] = {} + return self._initialize_rum_segments_endpoint.call_with_http_info(**kwargs) + + def list_rum_segments( + self, + ) -> SegmentArray: + """List rum segments. + + List all available user segments for audience targeting + + :rtype: SegmentArray + """ + kwargs: Dict[str, Any] = {} + return self._list_rum_segments_endpoint.call_with_http_info(**kwargs) diff --git a/src/datadog_api_client/v2/api/user_flow_api.py b/src/datadog_api_client/v2/api/user_flow_api.py new file mode 100644 index 0000000000..213e14e50d --- /dev/null +++ b/src/datadog_api_client/v2/api/user_flow_api.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 Any, Dict + +from datadog_api_client.api_client import ApiClient, Endpoint as _Endpoint +from datadog_api_client.configuration import Configuration +from datadog_api_client.v2.model.sankey_response import SankeyResponse +from datadog_api_client.v2.model.sankey_request import SankeyRequest + + +class UserFlowApi: + """ + API for user flow. + """ + + def __init__(self, api_client=None): + if api_client is None: + api_client = ApiClient(Configuration()) + self.api_client = api_client + + self._get_rum_sankey_endpoint = _Endpoint( + settings={ + "response_type": (SankeyResponse,), + "auth": [], + "endpoint_path": "/api/v2/rum/sankey", + "operation_id": "get_rum_sankey", + "http_method": "POST", + "version": "v2", + }, + params_map={ + "body": { + "required": True, + "openapi_types": (SankeyRequest,), + "location": "body", + }, + }, + headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, + api_client=api_client, + ) + + def get_rum_sankey( + self, + body: SankeyRequest, + ) -> SankeyResponse: + """Get rum sankey. + + Generate Sankey diagrams to visualize user flow paths and drop-off points + + :type body: SankeyRequest + :rtype: SankeyResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["body"] = body + + return self._get_rum_sankey_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 d2c172513c..5b19cde095 100644 --- a/src/datadog_api_client/v2/apis/__init__.py +++ b/src/datadog_api_client/v2/apis/__init__.py @@ -20,6 +20,7 @@ from datadog_api_client.v2.api.cloud_cost_management_api import CloudCostManagementApi from datadog_api_client.v2.api.cloud_network_monitoring_api import CloudNetworkMonitoringApi from datadog_api_client.v2.api.cloudflare_integration_api import CloudflareIntegrationApi +from datadog_api_client.v2.api.cohort_api import CohortApi from datadog_api_client.v2.api.confluent_cloud_api import ConfluentCloudApi from datadog_api_client.v2.api.container_images_api import ContainerImagesApi from datadog_api_client.v2.api.containers_api import ContainersApi @@ -33,6 +34,7 @@ from datadog_api_client.v2.api.events_api import EventsApi from datadog_api_client.v2.api.fastly_integration_api import FastlyIntegrationApi from datadog_api_client.v2.api.fleet_automation_api import FleetAutomationApi +from datadog_api_client.v2.api.funnel_api import FunnelApi from datadog_api_client.v2.api.gcp_integration_api import GCPIntegrationApi from datadog_api_client.v2.api.ip_allowlist_api import IPAllowlistApi from datadog_api_client.v2.api.incident_services_api import IncidentServicesApi @@ -63,6 +65,7 @@ from datadog_api_client.v2.api.rum_metrics_api import RumMetricsApi from datadog_api_client.v2.api.rum_retention_filters_api import RumRetentionFiltersApi from datadog_api_client.v2.api.security_monitoring_api import SecurityMonitoringApi +from datadog_api_client.v2.api.segments_api import SegmentsApi from datadog_api_client.v2.api.sensitive_data_scanner_api import SensitiveDataScannerApi from datadog_api_client.v2.api.service_accounts_api import ServiceAccountsApi from datadog_api_client.v2.api.service_definition_api import ServiceDefinitionApi @@ -77,6 +80,7 @@ from datadog_api_client.v2.api.teams_api import TeamsApi from datadog_api_client.v2.api.test_optimization_api import TestOptimizationApi from datadog_api_client.v2.api.usage_metering_api import UsageMeteringApi +from datadog_api_client.v2.api.user_flow_api import UserFlowApi from datadog_api_client.v2.api.users_api import UsersApi from datadog_api_client.v2.api.workflow_automation_api import WorkflowAutomationApi @@ -104,6 +108,7 @@ "CloudCostManagementApi", "CloudNetworkMonitoringApi", "CloudflareIntegrationApi", + "CohortApi", "ConfluentCloudApi", "ContainerImagesApi", "ContainersApi", @@ -117,6 +122,7 @@ "EventsApi", "FastlyIntegrationApi", "FleetAutomationApi", + "FunnelApi", "GCPIntegrationApi", "IPAllowlistApi", "IncidentServicesApi", @@ -147,6 +153,7 @@ "RumMetricsApi", "RumRetentionFiltersApi", "SecurityMonitoringApi", + "SegmentsApi", "SensitiveDataScannerApi", "ServiceAccountsApi", "ServiceDefinitionApi", @@ -161,6 +168,7 @@ "TeamsApi", "TestOptimizationApi", "UsageMeteringApi", + "UserFlowApi", "UsersApi", "WorkflowAutomationApi", ] diff --git a/src/datadog_api_client/v2/model/funnel_request.py b/src/datadog_api_client/v2/model/funnel_request.py new file mode 100644 index 0000000000..9e898ec8f9 --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_request.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.funnel_request_data import FunnelRequestData + + +class FunnelRequest(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.funnel_request_data import FunnelRequestData + + return { + "data": (FunnelRequestData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[FunnelRequestData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: FunnelRequestData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_request_data.py b/src/datadog_api_client/v2/model/funnel_request_data.py new file mode 100644 index 0000000000..dcab96122e --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_request_data.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, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.funnel_request_data_attributes import FunnelRequestDataAttributes + from datadog_api_client.v2.model.funnel_request_data_type import FunnelRequestDataType + + +class FunnelRequestData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.funnel_request_data_attributes import FunnelRequestDataAttributes + from datadog_api_client.v2.model.funnel_request_data_type import FunnelRequestDataType + + return { + "attributes": (FunnelRequestDataAttributes,), + "id": (str,), + "type": (FunnelRequestDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: FunnelRequestDataType, + attributes: Union[FunnelRequestDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: FunnelRequestDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: + :type type: FunnelRequestDataType + """ + if attributes is not unset: + kwargs["attributes"] = attributes + if id is not unset: + kwargs["id"] = id + super().__init__(kwargs) + + self_.type = type diff --git a/src/datadog_api_client/v2/model/funnel_request_data_attributes.py b/src/datadog_api_client/v2/model/funnel_request_data_attributes.py new file mode 100644 index 0000000000..dcd03f41dd --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_request_data_attributes.py @@ -0,0 +1,80 @@ +# 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.funnel_request_data_attributes_search import FunnelRequestDataAttributesSearch + from datadog_api_client.v2.model.funnel_request_data_attributes_time import FunnelRequestDataAttributesTime + + +class FunnelRequestDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.funnel_request_data_attributes_search import FunnelRequestDataAttributesSearch + from datadog_api_client.v2.model.funnel_request_data_attributes_time import FunnelRequestDataAttributesTime + + return { + "data_source": (str,), + "enforced_execution_type": (str,), + "request_id": (str,), + "search": (FunnelRequestDataAttributesSearch,), + "time": (FunnelRequestDataAttributesTime,), + } + + attribute_map = { + "data_source": "data_source", + "enforced_execution_type": "enforced_execution_type", + "request_id": "request_id", + "search": "search", + "time": "time", + } + + def __init__( + self_, + data_source: Union[str, UnsetType] = unset, + enforced_execution_type: Union[str, UnsetType] = unset, + request_id: Union[str, UnsetType] = unset, + search: Union[FunnelRequestDataAttributesSearch, UnsetType] = unset, + time: Union[FunnelRequestDataAttributesTime, UnsetType] = unset, + **kwargs, + ): + """ + + + :param data_source: + :type data_source: str, optional + + :param enforced_execution_type: + :type enforced_execution_type: str, optional + + :param request_id: + :type request_id: str, optional + + :param search: + :type search: FunnelRequestDataAttributesSearch, optional + + :param time: + :type time: FunnelRequestDataAttributesTime, optional + """ + if data_source is not unset: + kwargs["data_source"] = data_source + if enforced_execution_type is not unset: + kwargs["enforced_execution_type"] = enforced_execution_type + if request_id is not unset: + kwargs["request_id"] = request_id + if search is not unset: + kwargs["search"] = search + if time is not unset: + kwargs["time"] = time + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_request_data_attributes_search.py b/src/datadog_api_client/v2/model/funnel_request_data_attributes_search.py new file mode 100644 index 0000000000..1dcda0fde6 --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_request_data_attributes_search.py @@ -0,0 +1,74 @@ +# 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.funnel_request_data_attributes_search_steps_items import ( + FunnelRequestDataAttributesSearchStepsItems, + ) + + +class FunnelRequestDataAttributesSearch(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.funnel_request_data_attributes_search_steps_items import ( + FunnelRequestDataAttributesSearchStepsItems, + ) + + return { + "cross_session_filter": (str,), + "query_string": (str,), + "steps": ([FunnelRequestDataAttributesSearchStepsItems],), + "subquery_id": (str,), + } + + attribute_map = { + "cross_session_filter": "cross_session_filter", + "query_string": "query_string", + "steps": "steps", + "subquery_id": "subquery_id", + } + + def __init__( + self_, + cross_session_filter: Union[str, UnsetType] = unset, + query_string: Union[str, UnsetType] = unset, + steps: Union[List[FunnelRequestDataAttributesSearchStepsItems], UnsetType] = unset, + subquery_id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param cross_session_filter: + :type cross_session_filter: str, optional + + :param query_string: + :type query_string: str, optional + + :param steps: + :type steps: [FunnelRequestDataAttributesSearchStepsItems], optional + + :param subquery_id: + :type subquery_id: str, optional + """ + if cross_session_filter is not unset: + kwargs["cross_session_filter"] = cross_session_filter + if query_string is not unset: + kwargs["query_string"] = query_string + if steps is not unset: + kwargs["steps"] = steps + if subquery_id is not unset: + kwargs["subquery_id"] = subquery_id + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_request_data_attributes_search_steps_items.py b/src/datadog_api_client/v2/model/funnel_request_data_attributes_search_steps_items.py new file mode 100644 index 0000000000..8ea7d3451f --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_request_data_attributes_search_steps_items.py @@ -0,0 +1,56 @@ +# 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 FunnelRequestDataAttributesSearchStepsItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "facet": (str,), + "step_filter": (str,), + "value": (str,), + } + + attribute_map = { + "facet": "facet", + "step_filter": "step_filter", + "value": "value", + } + + def __init__( + self_, + facet: Union[str, UnsetType] = unset, + step_filter: Union[str, UnsetType] = unset, + value: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param facet: + :type facet: str, optional + + :param step_filter: + :type step_filter: str, optional + + :param value: + :type value: str, optional + """ + if facet is not unset: + kwargs["facet"] = facet + if step_filter is not unset: + kwargs["step_filter"] = step_filter + if value is not unset: + kwargs["value"] = value + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_request_data_attributes_time.py b/src/datadog_api_client/v2/model/funnel_request_data_attributes_time.py new file mode 100644 index 0000000000..31563772ea --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_request_data_attributes_time.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 typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class FunnelRequestDataAttributesTime(ModelNormal): + @cached_property + def openapi_types(_): + return { + "_from": (int,), + "to": (int,), + } + + attribute_map = { + "_from": "from", + "to": "to", + } + + def __init__(self_, _from: Union[int, UnsetType] = unset, to: Union[int, UnsetType] = unset, **kwargs): + """ + + + :param _from: + :type _from: int, optional + + :param to: + :type to: int, optional + """ + if _from is not unset: + kwargs["_from"] = _from + if to is not unset: + kwargs["to"] = to + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_request_data_type.py b/src/datadog_api_client/v2/model/funnel_request_data_type.py new file mode 100644 index 0000000000..765383c4a0 --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_request_data_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 FunnelRequestDataType(ModelSimple): + """ + + + :param value: If omitted defaults to "funnel_request". Must be one of ["funnel_request"]. + :type value: str + """ + + allowed_values = { + "funnel_request", + } + FUNNEL_REQUEST: ClassVar["FunnelRequestDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +FunnelRequestDataType.FUNNEL_REQUEST = FunnelRequestDataType("funnel_request") diff --git a/src/datadog_api_client/v2/model/funnel_response.py b/src/datadog_api_client/v2/model/funnel_response.py new file mode 100644 index 0000000000..4210c7e219 --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_response.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.funnel_response_data import FunnelResponseData + + +class FunnelResponse(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.funnel_response_data import FunnelResponseData + + return { + "data": (FunnelResponseData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[FunnelResponseData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: FunnelResponseData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_response_data.py b/src/datadog_api_client/v2/model/funnel_response_data.py new file mode 100644 index 0000000000..94b30d5433 --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_response_data.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, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.funnel_response_data_attributes import FunnelResponseDataAttributes + from datadog_api_client.v2.model.funnel_response_data_type import FunnelResponseDataType + + +class FunnelResponseData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.funnel_response_data_attributes import FunnelResponseDataAttributes + from datadog_api_client.v2.model.funnel_response_data_type import FunnelResponseDataType + + return { + "attributes": (FunnelResponseDataAttributes,), + "id": (str,), + "type": (FunnelResponseDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: FunnelResponseDataType, + attributes: Union[FunnelResponseDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: FunnelResponseDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: + :type type: FunnelResponseDataType + """ + if attributes is not unset: + kwargs["attributes"] = attributes + if id is not unset: + kwargs["id"] = id + super().__init__(kwargs) + + self_.type = type diff --git a/src/datadog_api_client/v2/model/funnel_response_data_attributes.py b/src/datadog_api_client/v2/model/funnel_response_data_attributes.py new file mode 100644 index 0000000000..d2ef218b09 --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_response_data_attributes.py @@ -0,0 +1,76 @@ +# 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.funnel_response_elapsed_time import FunnelResponseElapsedTime + from datadog_api_client.v2.model.funnel_response_data_attributes_funnel_steps_items import ( + FunnelResponseDataAttributesFunnelStepsItems, + ) + + +class FunnelResponseDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.funnel_response_elapsed_time import FunnelResponseElapsedTime + from datadog_api_client.v2.model.funnel_response_data_attributes_funnel_steps_items import ( + FunnelResponseDataAttributesFunnelStepsItems, + ) + + return { + "end_to_end_conversion_rate": (float,), + "end_to_end_elapsed_time": (FunnelResponseElapsedTime,), + "funnel_steps": ([FunnelResponseDataAttributesFunnelStepsItems],), + "initial_count": (int,), + } + + attribute_map = { + "end_to_end_conversion_rate": "end_to_end_conversion_rate", + "end_to_end_elapsed_time": "end_to_end_elapsed_time", + "funnel_steps": "funnel_steps", + "initial_count": "initial_count", + } + + def __init__( + self_, + end_to_end_conversion_rate: Union[float, UnsetType] = unset, + end_to_end_elapsed_time: Union[FunnelResponseElapsedTime, UnsetType] = unset, + funnel_steps: Union[List[FunnelResponseDataAttributesFunnelStepsItems], UnsetType] = unset, + initial_count: Union[int, UnsetType] = unset, + **kwargs, + ): + """ + + + :param end_to_end_conversion_rate: + :type end_to_end_conversion_rate: float, optional + + :param end_to_end_elapsed_time: + :type end_to_end_elapsed_time: FunnelResponseElapsedTime, optional + + :param funnel_steps: + :type funnel_steps: [FunnelResponseDataAttributesFunnelStepsItems], optional + + :param initial_count: + :type initial_count: int, optional + """ + if end_to_end_conversion_rate is not unset: + kwargs["end_to_end_conversion_rate"] = end_to_end_conversion_rate + if end_to_end_elapsed_time is not unset: + kwargs["end_to_end_elapsed_time"] = end_to_end_elapsed_time + if funnel_steps is not unset: + kwargs["funnel_steps"] = funnel_steps + if initial_count is not unset: + kwargs["initial_count"] = initial_count + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_response_data_attributes_funnel_steps_items.py b/src/datadog_api_client/v2/model/funnel_response_data_attributes_funnel_steps_items.py new file mode 100644 index 0000000000..d907f43c4c --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_response_data_attributes_funnel_steps_items.py @@ -0,0 +1,62 @@ +# 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.funnel_response_elapsed_time import FunnelResponseElapsedTime + + +class FunnelResponseDataAttributesFunnelStepsItems(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.funnel_response_elapsed_time import FunnelResponseElapsedTime + + return { + "elapsed_time_to_next_step": (FunnelResponseElapsedTime,), + "label": (str,), + "value": (int,), + } + + attribute_map = { + "elapsed_time_to_next_step": "elapsed_time_to_next_step", + "label": "label", + "value": "value", + } + + def __init__( + self_, + elapsed_time_to_next_step: Union[FunnelResponseElapsedTime, UnsetType] = unset, + label: Union[str, UnsetType] = unset, + value: Union[int, UnsetType] = unset, + **kwargs, + ): + """ + + + :param elapsed_time_to_next_step: + :type elapsed_time_to_next_step: FunnelResponseElapsedTime, optional + + :param label: + :type label: str, optional + + :param value: + :type value: int, optional + """ + if elapsed_time_to_next_step is not unset: + kwargs["elapsed_time_to_next_step"] = elapsed_time_to_next_step + if label is not unset: + kwargs["label"] = label + if value is not unset: + kwargs["value"] = value + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_response_data_type.py b/src/datadog_api_client/v2/model/funnel_response_data_type.py new file mode 100644 index 0000000000..2e151c26c6 --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_response_data_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 FunnelResponseDataType(ModelSimple): + """ + + + :param value: If omitted defaults to "funnel_response". Must be one of ["funnel_response"]. + :type value: str + """ + + allowed_values = { + "funnel_response", + } + FUNNEL_RESPONSE: ClassVar["FunnelResponseDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +FunnelResponseDataType.FUNNEL_RESPONSE = FunnelResponseDataType("funnel_response") diff --git a/src/datadog_api_client/v2/model/funnel_response_elapsed_time.py b/src/datadog_api_client/v2/model/funnel_response_elapsed_time.py new file mode 100644 index 0000000000..8b9f7a8d35 --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_response_elapsed_time.py @@ -0,0 +1,80 @@ +# 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 FunnelResponseElapsedTime(ModelNormal): + @cached_property + def openapi_types(_): + return { + "avg": (int,), + "max": (int,), + "min": (int,), + "p5": (int,), + "p50": (int,), + "p95": (int,), + } + + attribute_map = { + "avg": "avg", + "max": "max", + "min": "min", + "p5": "p5", + "p50": "p50", + "p95": "p95", + } + + def __init__( + self_, + avg: Union[int, UnsetType] = unset, + max: Union[int, UnsetType] = unset, + min: Union[int, UnsetType] = unset, + p5: Union[int, UnsetType] = unset, + p50: Union[int, UnsetType] = unset, + p95: Union[int, UnsetType] = unset, + **kwargs, + ): + """ + + + :param avg: + :type avg: int, optional + + :param max: + :type max: int, optional + + :param min: + :type min: int, optional + + :param p5: + :type p5: int, optional + + :param p50: + :type p50: int, optional + + :param p95: + :type p95: int, optional + """ + if avg is not unset: + kwargs["avg"] = avg + if max is not unset: + kwargs["max"] = max + if min is not unset: + kwargs["min"] = min + if p5 is not unset: + kwargs["p5"] = p5 + if p50 is not unset: + kwargs["p50"] = p50 + if p95 is not unset: + kwargs["p95"] = p95 + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_suggestion_request.py b/src/datadog_api_client/v2/model/funnel_suggestion_request.py new file mode 100644 index 0000000000..1c74b98afc --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_suggestion_request.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.funnel_suggestion_request_data import FunnelSuggestionRequestData + + +class FunnelSuggestionRequest(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.funnel_suggestion_request_data import FunnelSuggestionRequestData + + return { + "data": (FunnelSuggestionRequestData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[FunnelSuggestionRequestData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: FunnelSuggestionRequestData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_suggestion_request_data.py b/src/datadog_api_client/v2/model/funnel_suggestion_request_data.py new file mode 100644 index 0000000000..2eb4977dd1 --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_suggestion_request_data.py @@ -0,0 +1,68 @@ +# 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.funnel_suggestion_request_data_attributes import ( + FunnelSuggestionRequestDataAttributes, + ) + from datadog_api_client.v2.model.funnel_suggestion_request_data_type import FunnelSuggestionRequestDataType + + +class FunnelSuggestionRequestData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes import ( + FunnelSuggestionRequestDataAttributes, + ) + from datadog_api_client.v2.model.funnel_suggestion_request_data_type import FunnelSuggestionRequestDataType + + return { + "attributes": (FunnelSuggestionRequestDataAttributes,), + "id": (str,), + "type": (FunnelSuggestionRequestDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: FunnelSuggestionRequestDataType, + attributes: Union[FunnelSuggestionRequestDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: FunnelSuggestionRequestDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: + :type type: FunnelSuggestionRequestDataType + """ + if attributes is not unset: + kwargs["attributes"] = attributes + if id is not unset: + kwargs["id"] = id + super().__init__(kwargs) + + self_.type = type diff --git a/src/datadog_api_client/v2/model/funnel_suggestion_request_data_attributes.py b/src/datadog_api_client/v2/model/funnel_suggestion_request_data_attributes.py new file mode 100644 index 0000000000..c4e4b5dc60 --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_suggestion_request_data_attributes.py @@ -0,0 +1,86 @@ +# 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.funnel_suggestion_request_data_attributes_search import ( + FunnelSuggestionRequestDataAttributesSearch, + ) + from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_term_search import ( + FunnelSuggestionRequestDataAttributesTermSearch, + ) + from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_time import ( + FunnelSuggestionRequestDataAttributesTime, + ) + + +class FunnelSuggestionRequestDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_search import ( + FunnelSuggestionRequestDataAttributesSearch, + ) + from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_term_search import ( + FunnelSuggestionRequestDataAttributesTermSearch, + ) + from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_time import ( + FunnelSuggestionRequestDataAttributesTime, + ) + + return { + "data_source": (str,), + "search": (FunnelSuggestionRequestDataAttributesSearch,), + "term_search": (FunnelSuggestionRequestDataAttributesTermSearch,), + "time": (FunnelSuggestionRequestDataAttributesTime,), + } + + attribute_map = { + "data_source": "data_source", + "search": "search", + "term_search": "term_search", + "time": "time", + } + + def __init__( + self_, + data_source: Union[str, UnsetType] = unset, + search: Union[FunnelSuggestionRequestDataAttributesSearch, UnsetType] = unset, + term_search: Union[FunnelSuggestionRequestDataAttributesTermSearch, UnsetType] = unset, + time: Union[FunnelSuggestionRequestDataAttributesTime, UnsetType] = unset, + **kwargs, + ): + """ + + + :param data_source: + :type data_source: str, optional + + :param search: + :type search: FunnelSuggestionRequestDataAttributesSearch, optional + + :param term_search: + :type term_search: FunnelSuggestionRequestDataAttributesTermSearch, optional + + :param time: + :type time: FunnelSuggestionRequestDataAttributesTime, optional + """ + if data_source is not unset: + kwargs["data_source"] = data_source + if search is not unset: + kwargs["search"] = search + if term_search is not unset: + kwargs["term_search"] = term_search + if time is not unset: + kwargs["time"] = time + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_suggestion_request_data_attributes_search.py b/src/datadog_api_client/v2/model/funnel_suggestion_request_data_attributes_search.py new file mode 100644 index 0000000000..4e2c8820c7 --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_suggestion_request_data_attributes_search.py @@ -0,0 +1,74 @@ +# 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.funnel_suggestion_request_data_attributes_search_steps_items import ( + FunnelSuggestionRequestDataAttributesSearchStepsItems, + ) + + +class FunnelSuggestionRequestDataAttributesSearch(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_search_steps_items import ( + FunnelSuggestionRequestDataAttributesSearchStepsItems, + ) + + return { + "cross_session_filter": (str,), + "query_string": (str,), + "steps": ([FunnelSuggestionRequestDataAttributesSearchStepsItems],), + "subquery_id": (str,), + } + + attribute_map = { + "cross_session_filter": "cross_session_filter", + "query_string": "query_string", + "steps": "steps", + "subquery_id": "subquery_id", + } + + def __init__( + self_, + cross_session_filter: Union[str, UnsetType] = unset, + query_string: Union[str, UnsetType] = unset, + steps: Union[List[FunnelSuggestionRequestDataAttributesSearchStepsItems], UnsetType] = unset, + subquery_id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param cross_session_filter: + :type cross_session_filter: str, optional + + :param query_string: + :type query_string: str, optional + + :param steps: + :type steps: [FunnelSuggestionRequestDataAttributesSearchStepsItems], optional + + :param subquery_id: + :type subquery_id: str, optional + """ + if cross_session_filter is not unset: + kwargs["cross_session_filter"] = cross_session_filter + if query_string is not unset: + kwargs["query_string"] = query_string + if steps is not unset: + kwargs["steps"] = steps + if subquery_id is not unset: + kwargs["subquery_id"] = subquery_id + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_suggestion_request_data_attributes_search_steps_items.py b/src/datadog_api_client/v2/model/funnel_suggestion_request_data_attributes_search_steps_items.py new file mode 100644 index 0000000000..f451c7f16d --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_suggestion_request_data_attributes_search_steps_items.py @@ -0,0 +1,56 @@ +# 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 FunnelSuggestionRequestDataAttributesSearchStepsItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "facet": (str,), + "step_filter": (str,), + "value": (str,), + } + + attribute_map = { + "facet": "facet", + "step_filter": "step_filter", + "value": "value", + } + + def __init__( + self_, + facet: Union[str, UnsetType] = unset, + step_filter: Union[str, UnsetType] = unset, + value: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param facet: + :type facet: str, optional + + :param step_filter: + :type step_filter: str, optional + + :param value: + :type value: str, optional + """ + if facet is not unset: + kwargs["facet"] = facet + if step_filter is not unset: + kwargs["step_filter"] = step_filter + if value is not unset: + kwargs["value"] = value + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_suggestion_request_data_attributes_term_search.py b/src/datadog_api_client/v2/model/funnel_suggestion_request_data_attributes_term_search.py new file mode 100644 index 0000000000..0ac1e6cd40 --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_suggestion_request_data_attributes_term_search.py @@ -0,0 +1,36 @@ +# 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 FunnelSuggestionRequestDataAttributesTermSearch(ModelNormal): + @cached_property + def openapi_types(_): + return { + "query": (str,), + } + + attribute_map = { + "query": "query", + } + + def __init__(self_, query: Union[str, UnsetType] = unset, **kwargs): + """ + + + :param query: + :type query: str, optional + """ + if query is not unset: + kwargs["query"] = query + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_suggestion_request_data_attributes_time.py b/src/datadog_api_client/v2/model/funnel_suggestion_request_data_attributes_time.py new file mode 100644 index 0000000000..a02f2d041b --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_suggestion_request_data_attributes_time.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 typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class FunnelSuggestionRequestDataAttributesTime(ModelNormal): + @cached_property + def openapi_types(_): + return { + "_from": (int,), + "to": (int,), + } + + attribute_map = { + "_from": "from", + "to": "to", + } + + def __init__(self_, _from: Union[int, UnsetType] = unset, to: Union[int, UnsetType] = unset, **kwargs): + """ + + + :param _from: + :type _from: int, optional + + :param to: + :type to: int, optional + """ + if _from is not unset: + kwargs["_from"] = _from + if to is not unset: + kwargs["to"] = to + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_suggestion_request_data_type.py b/src/datadog_api_client/v2/model/funnel_suggestion_request_data_type.py new file mode 100644 index 0000000000..21ec7524bf --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_suggestion_request_data_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 FunnelSuggestionRequestDataType(ModelSimple): + """ + + + :param value: If omitted defaults to "funnel_suggestion_request". Must be one of ["funnel_suggestion_request"]. + :type value: str + """ + + allowed_values = { + "funnel_suggestion_request", + } + FUNNEL_SUGGESTION_REQUEST: ClassVar["FunnelSuggestionRequestDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +FunnelSuggestionRequestDataType.FUNNEL_SUGGESTION_REQUEST = FunnelSuggestionRequestDataType("funnel_suggestion_request") diff --git a/src/datadog_api_client/v2/model/funnel_suggestion_response.py b/src/datadog_api_client/v2/model/funnel_suggestion_response.py new file mode 100644 index 0000000000..896e2b2d57 --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_suggestion_response.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.funnel_suggestion_response_data import FunnelSuggestionResponseData + + +class FunnelSuggestionResponse(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.funnel_suggestion_response_data import FunnelSuggestionResponseData + + return { + "data": (FunnelSuggestionResponseData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[FunnelSuggestionResponseData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: FunnelSuggestionResponseData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_suggestion_response_data.py b/src/datadog_api_client/v2/model/funnel_suggestion_response_data.py new file mode 100644 index 0000000000..1c39de0c93 --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_suggestion_response_data.py @@ -0,0 +1,68 @@ +# 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.funnel_suggestion_response_data_attributes import ( + FunnelSuggestionResponseDataAttributes, + ) + from datadog_api_client.v2.model.funnel_suggestion_response_data_type import FunnelSuggestionResponseDataType + + +class FunnelSuggestionResponseData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.funnel_suggestion_response_data_attributes import ( + FunnelSuggestionResponseDataAttributes, + ) + from datadog_api_client.v2.model.funnel_suggestion_response_data_type import FunnelSuggestionResponseDataType + + return { + "attributes": (FunnelSuggestionResponseDataAttributes,), + "id": (str,), + "type": (FunnelSuggestionResponseDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: FunnelSuggestionResponseDataType, + attributes: Union[FunnelSuggestionResponseDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: FunnelSuggestionResponseDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: + :type type: FunnelSuggestionResponseDataType + """ + if attributes is not unset: + kwargs["attributes"] = attributes + if id is not unset: + kwargs["id"] = id + super().__init__(kwargs) + + self_.type = type diff --git a/src/datadog_api_client/v2/model/funnel_suggestion_response_data_attributes.py b/src/datadog_api_client/v2/model/funnel_suggestion_response_data_attributes.py new file mode 100644 index 0000000000..00af636f6f --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_suggestion_response_data_attributes.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 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.funnel_suggestion_response_data_attributes_actions_items import ( + FunnelSuggestionResponseDataAttributesActionsItems, + ) + from datadog_api_client.v2.model.funnel_suggestion_response_data_attributes_views_items import ( + FunnelSuggestionResponseDataAttributesViewsItems, + ) + + +class FunnelSuggestionResponseDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.funnel_suggestion_response_data_attributes_actions_items import ( + FunnelSuggestionResponseDataAttributesActionsItems, + ) + from datadog_api_client.v2.model.funnel_suggestion_response_data_attributes_views_items import ( + FunnelSuggestionResponseDataAttributesViewsItems, + ) + + return { + "actions": ([FunnelSuggestionResponseDataAttributesActionsItems],), + "views": ([FunnelSuggestionResponseDataAttributesViewsItems],), + } + + attribute_map = { + "actions": "actions", + "views": "views", + } + + def __init__( + self_, + actions: Union[List[FunnelSuggestionResponseDataAttributesActionsItems], UnsetType] = unset, + views: Union[List[FunnelSuggestionResponseDataAttributesViewsItems], UnsetType] = unset, + **kwargs, + ): + """ + + + :param actions: + :type actions: [FunnelSuggestionResponseDataAttributesActionsItems], optional + + :param views: + :type views: [FunnelSuggestionResponseDataAttributesViewsItems], optional + """ + if actions is not unset: + kwargs["actions"] = actions + if views is not unset: + kwargs["views"] = views + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_suggestion_response_data_attributes_actions_items.py b/src/datadog_api_client/v2/model/funnel_suggestion_response_data_attributes_actions_items.py new file mode 100644 index 0000000000..5b2316625f --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_suggestion_response_data_attributes_actions_items.py @@ -0,0 +1,36 @@ +# 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 FunnelSuggestionResponseDataAttributesActionsItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "name": (str,), + } + + attribute_map = { + "name": "name", + } + + def __init__(self_, name: Union[str, UnsetType] = unset, **kwargs): + """ + + + :param name: + :type name: str, optional + """ + if name is not unset: + kwargs["name"] = name + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_suggestion_response_data_attributes_views_items.py b/src/datadog_api_client/v2/model/funnel_suggestion_response_data_attributes_views_items.py new file mode 100644 index 0000000000..f201b54288 --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_suggestion_response_data_attributes_views_items.py @@ -0,0 +1,36 @@ +# 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 FunnelSuggestionResponseDataAttributesViewsItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "name": (str,), + } + + attribute_map = { + "name": "name", + } + + def __init__(self_, name: Union[str, UnsetType] = unset, **kwargs): + """ + + + :param name: + :type name: str, optional + """ + if name is not unset: + kwargs["name"] = name + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/funnel_suggestion_response_data_type.py b/src/datadog_api_client/v2/model/funnel_suggestion_response_data_type.py new file mode 100644 index 0000000000..fa300f68e3 --- /dev/null +++ b/src/datadog_api_client/v2/model/funnel_suggestion_response_data_type.py @@ -0,0 +1,37 @@ +# 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 FunnelSuggestionResponseDataType(ModelSimple): + """ + + + :param value: If omitted defaults to "funnel_suggestion_response". Must be one of ["funnel_suggestion_response"]. + :type value: str + """ + + allowed_values = { + "funnel_suggestion_response", + } + FUNNEL_SUGGESTION_RESPONSE: ClassVar["FunnelSuggestionResponseDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +FunnelSuggestionResponseDataType.FUNNEL_SUGGESTION_RESPONSE = FunnelSuggestionResponseDataType( + "funnel_suggestion_response" +) diff --git a/src/datadog_api_client/v2/model/get_cohort_request.py b/src/datadog_api_client/v2/model/get_cohort_request.py new file mode 100644 index 0000000000..bdcb2b7ebe --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_request.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.get_cohort_request_data import GetCohortRequestData + + +class GetCohortRequest(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_request_data import GetCohortRequestData + + return { + "data": (GetCohortRequestData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[GetCohortRequestData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: GetCohortRequestData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_request_data.py b/src/datadog_api_client/v2/model/get_cohort_request_data.py new file mode 100644 index 0000000000..0eee29b095 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_request_data.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, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.get_cohort_request_data_attributes import GetCohortRequestDataAttributes + from datadog_api_client.v2.model.get_cohort_request_data_type import GetCohortRequestDataType + + +class GetCohortRequestData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_request_data_attributes import GetCohortRequestDataAttributes + from datadog_api_client.v2.model.get_cohort_request_data_type import GetCohortRequestDataType + + return { + "attributes": (GetCohortRequestDataAttributes,), + "id": (str,), + "type": (GetCohortRequestDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: GetCohortRequestDataType, + attributes: Union[GetCohortRequestDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: GetCohortRequestDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: + :type type: GetCohortRequestDataType + """ + if attributes is not unset: + kwargs["attributes"] = attributes + if id is not unset: + kwargs["id"] = id + super().__init__(kwargs) + + self_.type = type diff --git a/src/datadog_api_client/v2/model/get_cohort_request_data_attributes.py b/src/datadog_api_client/v2/model/get_cohort_request_data_attributes.py new file mode 100644 index 0000000000..26203bf12d --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_request_data_attributes.py @@ -0,0 +1,94 @@ +# 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.get_cohort_request_data_attributes_definition import ( + GetCohortRequestDataAttributesDefinition, + ) + from datadog_api_client.v2.model.get_cohort_request_data_attributes_time import GetCohortRequestDataAttributesTime + + +class GetCohortRequestDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition import ( + GetCohortRequestDataAttributesDefinition, + ) + from datadog_api_client.v2.model.get_cohort_request_data_attributes_time import ( + GetCohortRequestDataAttributesTime, + ) + + return { + "data_source": (str,), + "definition": (GetCohortRequestDataAttributesDefinition,), + "enforced_execution_type": (str,), + "request_id": (str,), + "time": (GetCohortRequestDataAttributesTime,), + "window_size": (str,), + } + + attribute_map = { + "data_source": "data_source", + "definition": "definition", + "enforced_execution_type": "enforced_execution_type", + "request_id": "request_id", + "time": "time", + "window_size": "window_size", + } + + def __init__( + self_, + data_source: Union[str, UnsetType] = unset, + definition: Union[GetCohortRequestDataAttributesDefinition, UnsetType] = unset, + enforced_execution_type: Union[str, UnsetType] = unset, + request_id: Union[str, UnsetType] = unset, + time: Union[GetCohortRequestDataAttributesTime, UnsetType] = unset, + window_size: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param data_source: + :type data_source: str, optional + + :param definition: + :type definition: GetCohortRequestDataAttributesDefinition, optional + + :param enforced_execution_type: + :type enforced_execution_type: str, optional + + :param request_id: + :type request_id: str, optional + + :param time: + :type time: GetCohortRequestDataAttributesTime, optional + + :param window_size: + :type window_size: str, optional + """ + if data_source is not unset: + kwargs["data_source"] = data_source + if definition is not unset: + kwargs["definition"] = definition + if enforced_execution_type is not unset: + kwargs["enforced_execution_type"] = enforced_execution_type + if request_id is not unset: + kwargs["request_id"] = request_id + if time is not unset: + kwargs["time"] = time + if window_size is not unset: + kwargs["window_size"] = window_size + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_definition.py b/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_definition.py new file mode 100644 index 0000000000..007df422f2 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_definition.py @@ -0,0 +1,74 @@ +# 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.get_cohort_request_data_attributes_definition_audience_filters import ( + GetCohortRequestDataAttributesDefinitionAudienceFilters, + ) + + +class GetCohortRequestDataAttributesDefinition(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters import ( + GetCohortRequestDataAttributesDefinitionAudienceFilters, + ) + + return { + "audience_filters": (GetCohortRequestDataAttributesDefinitionAudienceFilters,), + "inclusion_search": (str,), + "return_search": (str,), + "segment_id": (str,), + } + + attribute_map = { + "audience_filters": "audience_filters", + "inclusion_search": "inclusion_search", + "return_search": "return_search", + "segment_id": "segment_id", + } + + def __init__( + self_, + audience_filters: Union[GetCohortRequestDataAttributesDefinitionAudienceFilters, UnsetType] = unset, + inclusion_search: Union[str, UnsetType] = unset, + return_search: Union[str, UnsetType] = unset, + segment_id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param audience_filters: + :type audience_filters: GetCohortRequestDataAttributesDefinitionAudienceFilters, optional + + :param inclusion_search: + :type inclusion_search: str, optional + + :param return_search: + :type return_search: str, optional + + :param segment_id: + :type segment_id: str, optional + """ + if audience_filters is not unset: + kwargs["audience_filters"] = audience_filters + if inclusion_search is not unset: + kwargs["inclusion_search"] = inclusion_search + if return_search is not unset: + kwargs["return_search"] = return_search + if segment_id is not unset: + kwargs["segment_id"] = segment_id + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_definition_audience_filters.py b/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_definition_audience_filters.py new file mode 100644 index 0000000000..98e1a650e3 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_definition_audience_filters.py @@ -0,0 +1,86 @@ +# 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.get_cohort_request_data_attributes_definition_audience_filters_accounts_items import ( + GetCohortRequestDataAttributesDefinitionAudienceFiltersAccountsItems, + ) + from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters_segments_items import ( + GetCohortRequestDataAttributesDefinitionAudienceFiltersSegmentsItems, + ) + from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters_users_items import ( + GetCohortRequestDataAttributesDefinitionAudienceFiltersUsersItems, + ) + + +class GetCohortRequestDataAttributesDefinitionAudienceFilters(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters_accounts_items import ( + GetCohortRequestDataAttributesDefinitionAudienceFiltersAccountsItems, + ) + from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters_segments_items import ( + GetCohortRequestDataAttributesDefinitionAudienceFiltersSegmentsItems, + ) + from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters_users_items import ( + GetCohortRequestDataAttributesDefinitionAudienceFiltersUsersItems, + ) + + return { + "accounts": ([GetCohortRequestDataAttributesDefinitionAudienceFiltersAccountsItems],), + "formula": (str,), + "segments": ([GetCohortRequestDataAttributesDefinitionAudienceFiltersSegmentsItems],), + "users": ([GetCohortRequestDataAttributesDefinitionAudienceFiltersUsersItems],), + } + + attribute_map = { + "accounts": "accounts", + "formula": "formula", + "segments": "segments", + "users": "users", + } + + def __init__( + self_, + accounts: Union[List[GetCohortRequestDataAttributesDefinitionAudienceFiltersAccountsItems], UnsetType] = unset, + formula: Union[str, UnsetType] = unset, + segments: Union[List[GetCohortRequestDataAttributesDefinitionAudienceFiltersSegmentsItems], UnsetType] = unset, + users: Union[List[GetCohortRequestDataAttributesDefinitionAudienceFiltersUsersItems], UnsetType] = unset, + **kwargs, + ): + """ + + + :param accounts: + :type accounts: [GetCohortRequestDataAttributesDefinitionAudienceFiltersAccountsItems], optional + + :param formula: + :type formula: str, optional + + :param segments: + :type segments: [GetCohortRequestDataAttributesDefinitionAudienceFiltersSegmentsItems], optional + + :param users: + :type users: [GetCohortRequestDataAttributesDefinitionAudienceFiltersUsersItems], optional + """ + if accounts is not unset: + kwargs["accounts"] = accounts + if formula is not unset: + kwargs["formula"] = formula + if segments is not unset: + kwargs["segments"] = segments + if users is not unset: + kwargs["users"] = users + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_definition_audience_filters_accounts_items.py b/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_definition_audience_filters_accounts_items.py new file mode 100644 index 0000000000..974f6cb10c --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_definition_audience_filters_accounts_items.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 typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class GetCohortRequestDataAttributesDefinitionAudienceFiltersAccountsItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "name": (str,), + "query": (str,), + } + + attribute_map = { + "name": "name", + "query": "query", + } + + def __init__(self_, name: str, query: Union[str, UnsetType] = unset, **kwargs): + """ + + + :param name: + :type name: str + + :param query: + :type query: str, optional + """ + if query is not unset: + kwargs["query"] = query + super().__init__(kwargs) + + self_.name = name diff --git a/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_definition_audience_filters_segments_items.py b/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_definition_audience_filters_segments_items.py new file mode 100644 index 0000000000..133ae8caee --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_definition_audience_filters_segments_items.py @@ -0,0 +1,39 @@ +# 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 GetCohortRequestDataAttributesDefinitionAudienceFiltersSegmentsItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "name": (str,), + "segment_id": (str,), + } + + attribute_map = { + "name": "name", + "segment_id": "segment_id", + } + + def __init__(self_, name: str, segment_id: str, **kwargs): + """ + + + :param name: + :type name: str + + :param segment_id: + :type segment_id: str + """ + super().__init__(kwargs) + + self_.name = name + self_.segment_id = segment_id diff --git a/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_definition_audience_filters_users_items.py b/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_definition_audience_filters_users_items.py new file mode 100644 index 0000000000..084355aca3 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_definition_audience_filters_users_items.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 typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class GetCohortRequestDataAttributesDefinitionAudienceFiltersUsersItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "name": (str,), + "query": (str,), + } + + attribute_map = { + "name": "name", + "query": "query", + } + + def __init__(self_, name: str, query: Union[str, UnsetType] = unset, **kwargs): + """ + + + :param name: + :type name: str + + :param query: + :type query: str, optional + """ + if query is not unset: + kwargs["query"] = query + super().__init__(kwargs) + + self_.name = name diff --git a/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_time.py b/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_time.py new file mode 100644 index 0000000000..8e7dc9172e --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_request_data_attributes_time.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 typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class GetCohortRequestDataAttributesTime(ModelNormal): + @cached_property + def openapi_types(_): + return { + "_from": (int,), + "to": (int,), + } + + attribute_map = { + "_from": "from", + "to": "to", + } + + def __init__(self_, _from: Union[int, UnsetType] = unset, to: Union[int, UnsetType] = unset, **kwargs): + """ + + + :param _from: + :type _from: int, optional + + :param to: + :type to: int, optional + """ + if _from is not unset: + kwargs["_from"] = _from + if to is not unset: + kwargs["to"] = to + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_request_data_type.py b/src/datadog_api_client/v2/model/get_cohort_request_data_type.py new file mode 100644 index 0000000000..2bd62b938e --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_request_data_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 GetCohortRequestDataType(ModelSimple): + """ + + + :param value: If omitted defaults to "cohort_request". Must be one of ["cohort_request"]. + :type value: str + """ + + allowed_values = { + "cohort_request", + } + COHORT_REQUEST: ClassVar["GetCohortRequestDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +GetCohortRequestDataType.COHORT_REQUEST = GetCohortRequestDataType("cohort_request") diff --git a/src/datadog_api_client/v2/model/get_cohort_response.py b/src/datadog_api_client/v2/model/get_cohort_response.py new file mode 100644 index 0000000000..42874a2135 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_response.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.get_cohort_response_data import GetCohortResponseData + + +class GetCohortResponse(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_response_data import GetCohortResponseData + + return { + "data": (GetCohortResponseData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[GetCohortResponseData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: GetCohortResponseData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_response_data.py b/src/datadog_api_client/v2/model/get_cohort_response_data.py new file mode 100644 index 0000000000..bb9e48f42e --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_response_data.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, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.get_cohort_response_data_attributes import GetCohortResponseDataAttributes + from datadog_api_client.v2.model.get_cohort_response_data_type import GetCohortResponseDataType + + +class GetCohortResponseData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_response_data_attributes import GetCohortResponseDataAttributes + from datadog_api_client.v2.model.get_cohort_response_data_type import GetCohortResponseDataType + + return { + "attributes": (GetCohortResponseDataAttributes,), + "id": (str,), + "type": (GetCohortResponseDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: GetCohortResponseDataType, + attributes: Union[GetCohortResponseDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: GetCohortResponseDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: + :type type: GetCohortResponseDataType + """ + if attributes is not unset: + kwargs["attributes"] = attributes + if id is not unset: + kwargs["id"] = id + super().__init__(kwargs) + + self_.type = type diff --git a/src/datadog_api_client/v2/model/get_cohort_response_data_attributes.py b/src/datadog_api_client/v2/model/get_cohort_response_data_attributes.py new file mode 100644 index 0000000000..7f2023aefd --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_response_data_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, Union, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.get_cohort_response_data_attributes_cohorts_items import ( + GetCohortResponseDataAttributesCohortsItems, + ) + + +class GetCohortResponseDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_response_data_attributes_cohorts_items import ( + GetCohortResponseDataAttributesCohortsItems, + ) + + return { + "cohorts": ([GetCohortResponseDataAttributesCohortsItems],), + } + + attribute_map = { + "cohorts": "cohorts", + } + + def __init__(self_, cohorts: Union[List[GetCohortResponseDataAttributesCohortsItems], UnsetType] = unset, **kwargs): + """ + + + :param cohorts: + :type cohorts: [GetCohortResponseDataAttributesCohortsItems], optional + """ + if cohorts is not unset: + kwargs["cohorts"] = cohorts + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_response_data_attributes_cohorts_items.py b/src/datadog_api_client/v2/model/get_cohort_response_data_attributes_cohorts_items.py new file mode 100644 index 0000000000..1e71cc41e9 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_response_data_attributes_cohorts_items.py @@ -0,0 +1,74 @@ +# 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.get_cohort_response_data_attributes_cohorts_items_values_items import ( + GetCohortResponseDataAttributesCohortsItemsValuesItems, + ) + + +class GetCohortResponseDataAttributesCohortsItems(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_response_data_attributes_cohorts_items_values_items import ( + GetCohortResponseDataAttributesCohortsItemsValuesItems, + ) + + return { + "cohort": (str,), + "cohort_size": (int,), + "start_time": (int,), + "values": ([GetCohortResponseDataAttributesCohortsItemsValuesItems],), + } + + attribute_map = { + "cohort": "cohort", + "cohort_size": "cohort_size", + "start_time": "start_time", + "values": "values", + } + + def __init__( + self_, + cohort: Union[str, UnsetType] = unset, + cohort_size: Union[int, UnsetType] = unset, + start_time: Union[int, UnsetType] = unset, + values: Union[List[GetCohortResponseDataAttributesCohortsItemsValuesItems], UnsetType] = unset, + **kwargs, + ): + """ + + + :param cohort: + :type cohort: str, optional + + :param cohort_size: + :type cohort_size: int, optional + + :param start_time: + :type start_time: int, optional + + :param values: + :type values: [GetCohortResponseDataAttributesCohortsItemsValuesItems], optional + """ + if cohort is not unset: + kwargs["cohort"] = cohort + if cohort_size is not unset: + kwargs["cohort_size"] = cohort_size + if start_time is not unset: + kwargs["start_time"] = start_time + if values is not unset: + kwargs["values"] = values + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_response_data_attributes_cohorts_items_values_items.py b/src/datadog_api_client/v2/model/get_cohort_response_data_attributes_cohorts_items_values_items.py new file mode 100644 index 0000000000..5f1b50ef7c --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_response_data_attributes_cohorts_items_values_items.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 Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class GetCohortResponseDataAttributesCohortsItemsValuesItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "absolute_value": (int,), + "end_time": (int,), + "relative_value": (float,), + "start_time": (int,), + "window": (int,), + } + + attribute_map = { + "absolute_value": "absolute_value", + "end_time": "end_time", + "relative_value": "relative_value", + "start_time": "start_time", + "window": "window", + } + + def __init__( + self_, + absolute_value: Union[int, UnsetType] = unset, + end_time: Union[int, UnsetType] = unset, + relative_value: Union[float, UnsetType] = unset, + start_time: Union[int, UnsetType] = unset, + window: Union[int, UnsetType] = unset, + **kwargs, + ): + """ + + + :param absolute_value: + :type absolute_value: int, optional + + :param end_time: + :type end_time: int, optional + + :param relative_value: + :type relative_value: float, optional + + :param start_time: + :type start_time: int, optional + + :param window: + :type window: int, optional + """ + if absolute_value is not unset: + kwargs["absolute_value"] = absolute_value + if end_time is not unset: + kwargs["end_time"] = end_time + if relative_value is not unset: + kwargs["relative_value"] = relative_value + if start_time is not unset: + kwargs["start_time"] = start_time + if window is not unset: + kwargs["window"] = window + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_response_data_type.py b/src/datadog_api_client/v2/model/get_cohort_response_data_type.py new file mode 100644 index 0000000000..d3d05dc08c --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_response_data_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 GetCohortResponseDataType(ModelSimple): + """ + + + :param value: If omitted defaults to "cohort_response". Must be one of ["cohort_response"]. + :type value: str + """ + + allowed_values = { + "cohort_response", + } + COHORT_RESPONSE: ClassVar["GetCohortResponseDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +GetCohortResponseDataType.COHORT_RESPONSE = GetCohortResponseDataType("cohort_response") diff --git a/src/datadog_api_client/v2/model/get_cohort_users_request.py b/src/datadog_api_client/v2/model/get_cohort_users_request.py new file mode 100644 index 0000000000..acec45a2a4 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_users_request.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.get_cohort_users_request_data import GetCohortUsersRequestData + + +class GetCohortUsersRequest(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_users_request_data import GetCohortUsersRequestData + + return { + "data": (GetCohortUsersRequestData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[GetCohortUsersRequestData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: GetCohortUsersRequestData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_users_request_data.py b/src/datadog_api_client/v2/model/get_cohort_users_request_data.py new file mode 100644 index 0000000000..6438db897d --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_users_request_data.py @@ -0,0 +1,66 @@ +# 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.get_cohort_users_request_data_attributes import GetCohortUsersRequestDataAttributes + from datadog_api_client.v2.model.get_cohort_users_request_data_type import GetCohortUsersRequestDataType + + +class GetCohortUsersRequestData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_users_request_data_attributes import ( + GetCohortUsersRequestDataAttributes, + ) + from datadog_api_client.v2.model.get_cohort_users_request_data_type import GetCohortUsersRequestDataType + + return { + "attributes": (GetCohortUsersRequestDataAttributes,), + "id": (str,), + "type": (GetCohortUsersRequestDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: GetCohortUsersRequestDataType, + attributes: Union[GetCohortUsersRequestDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: GetCohortUsersRequestDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: + :type type: GetCohortUsersRequestDataType + """ + if attributes is not unset: + kwargs["attributes"] = attributes + if id is not unset: + kwargs["id"] = id + super().__init__(kwargs) + + self_.type = type diff --git a/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes.py b/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes.py new file mode 100644 index 0000000000..6171439601 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes.py @@ -0,0 +1,96 @@ +# 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.get_cohort_users_request_data_attributes_definition import ( + GetCohortUsersRequestDataAttributesDefinition, + ) + from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_time import ( + GetCohortUsersRequestDataAttributesTime, + ) + + +class GetCohortUsersRequestDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition import ( + GetCohortUsersRequestDataAttributesDefinition, + ) + from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_time import ( + GetCohortUsersRequestDataAttributesTime, + ) + + return { + "data_source": (str,), + "definition": (GetCohortUsersRequestDataAttributesDefinition,), + "execution": (int,), + "time": (GetCohortUsersRequestDataAttributesTime,), + "user_selection": (str,), + "window_size": (str,), + } + + attribute_map = { + "data_source": "data_source", + "definition": "definition", + "execution": "execution", + "time": "time", + "user_selection": "user_selection", + "window_size": "window_size", + } + + def __init__( + self_, + data_source: Union[str, UnsetType] = unset, + definition: Union[GetCohortUsersRequestDataAttributesDefinition, UnsetType] = unset, + execution: Union[int, UnsetType] = unset, + time: Union[GetCohortUsersRequestDataAttributesTime, UnsetType] = unset, + user_selection: Union[str, UnsetType] = unset, + window_size: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param data_source: + :type data_source: str, optional + + :param definition: + :type definition: GetCohortUsersRequestDataAttributesDefinition, optional + + :param execution: + :type execution: int, optional + + :param time: + :type time: GetCohortUsersRequestDataAttributesTime, optional + + :param user_selection: + :type user_selection: str, optional + + :param window_size: + :type window_size: str, optional + """ + if data_source is not unset: + kwargs["data_source"] = data_source + if definition is not unset: + kwargs["definition"] = definition + if execution is not unset: + kwargs["execution"] = execution + if time is not unset: + kwargs["time"] = time + if user_selection is not unset: + kwargs["user_selection"] = user_selection + if window_size is not unset: + kwargs["window_size"] = window_size + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_definition.py b/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_definition.py new file mode 100644 index 0000000000..fa016d311a --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_definition.py @@ -0,0 +1,90 @@ +# 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.get_cohort_users_request_data_attributes_definition_audience_filters import ( + GetCohortUsersRequestDataAttributesDefinitionAudienceFilters, + ) + + +class GetCohortUsersRequestDataAttributesDefinition(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters import ( + GetCohortUsersRequestDataAttributesDefinitionAudienceFilters, + ) + + return { + "audience_filters": (GetCohortUsersRequestDataAttributesDefinitionAudienceFilters,), + "cohort": (str,), + "inclusion_search": (str,), + "return_search": (str,), + "segment_id": (str,), + "window": (int,), + } + + attribute_map = { + "audience_filters": "audience_filters", + "cohort": "cohort", + "inclusion_search": "inclusion_search", + "return_search": "return_search", + "segment_id": "segment_id", + "window": "window", + } + + def __init__( + self_, + audience_filters: Union[GetCohortUsersRequestDataAttributesDefinitionAudienceFilters, UnsetType] = unset, + cohort: Union[str, UnsetType] = unset, + inclusion_search: Union[str, UnsetType] = unset, + return_search: Union[str, UnsetType] = unset, + segment_id: Union[str, UnsetType] = unset, + window: Union[int, UnsetType] = unset, + **kwargs, + ): + """ + + + :param audience_filters: + :type audience_filters: GetCohortUsersRequestDataAttributesDefinitionAudienceFilters, optional + + :param cohort: + :type cohort: str, optional + + :param inclusion_search: + :type inclusion_search: str, optional + + :param return_search: + :type return_search: str, optional + + :param segment_id: + :type segment_id: str, optional + + :param window: + :type window: int, optional + """ + if audience_filters is not unset: + kwargs["audience_filters"] = audience_filters + if cohort is not unset: + kwargs["cohort"] = cohort + if inclusion_search is not unset: + kwargs["inclusion_search"] = inclusion_search + if return_search is not unset: + kwargs["return_search"] = return_search + if segment_id is not unset: + kwargs["segment_id"] = segment_id + if window is not unset: + kwargs["window"] = window + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_definition_audience_filters.py b/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_definition_audience_filters.py new file mode 100644 index 0000000000..850012866d --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_definition_audience_filters.py @@ -0,0 +1,90 @@ +# 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.get_cohort_users_request_data_attributes_definition_audience_filters_accounts_items import ( + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersAccountsItems, + ) + from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters_segments_items import ( + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersSegmentsItems, + ) + from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters_users_items import ( + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersUsersItems, + ) + + +class GetCohortUsersRequestDataAttributesDefinitionAudienceFilters(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters_accounts_items import ( + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersAccountsItems, + ) + from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters_segments_items import ( + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersSegmentsItems, + ) + from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters_users_items import ( + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersUsersItems, + ) + + return { + "accounts": ([GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersAccountsItems],), + "formula": (str,), + "segments": ([GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersSegmentsItems],), + "users": ([GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersUsersItems],), + } + + attribute_map = { + "accounts": "accounts", + "formula": "formula", + "segments": "segments", + "users": "users", + } + + def __init__( + self_, + accounts: Union[ + List[GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersAccountsItems], UnsetType + ] = unset, + formula: Union[str, UnsetType] = unset, + segments: Union[ + List[GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersSegmentsItems], UnsetType + ] = unset, + users: Union[List[GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersUsersItems], UnsetType] = unset, + **kwargs, + ): + """ + + + :param accounts: + :type accounts: [GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersAccountsItems], optional + + :param formula: + :type formula: str, optional + + :param segments: + :type segments: [GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersSegmentsItems], optional + + :param users: + :type users: [GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersUsersItems], optional + """ + if accounts is not unset: + kwargs["accounts"] = accounts + if formula is not unset: + kwargs["formula"] = formula + if segments is not unset: + kwargs["segments"] = segments + if users is not unset: + kwargs["users"] = users + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_definition_audience_filters_accounts_items.py b/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_definition_audience_filters_accounts_items.py new file mode 100644 index 0000000000..59d33adaf9 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_definition_audience_filters_accounts_items.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 typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersAccountsItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "name": (str,), + "query": (str,), + } + + attribute_map = { + "name": "name", + "query": "query", + } + + def __init__(self_, name: str, query: Union[str, UnsetType] = unset, **kwargs): + """ + + + :param name: + :type name: str + + :param query: + :type query: str, optional + """ + if query is not unset: + kwargs["query"] = query + super().__init__(kwargs) + + self_.name = name diff --git a/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_definition_audience_filters_segments_items.py b/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_definition_audience_filters_segments_items.py new file mode 100644 index 0000000000..7dffefbc49 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_definition_audience_filters_segments_items.py @@ -0,0 +1,39 @@ +# 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 GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersSegmentsItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "name": (str,), + "segment_id": (str,), + } + + attribute_map = { + "name": "name", + "segment_id": "segment_id", + } + + def __init__(self_, name: str, segment_id: str, **kwargs): + """ + + + :param name: + :type name: str + + :param segment_id: + :type segment_id: str + """ + super().__init__(kwargs) + + self_.name = name + self_.segment_id = segment_id diff --git a/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_definition_audience_filters_users_items.py b/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_definition_audience_filters_users_items.py new file mode 100644 index 0000000000..e3bb8854d6 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_definition_audience_filters_users_items.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 typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersUsersItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "name": (str,), + "query": (str,), + } + + attribute_map = { + "name": "name", + "query": "query", + } + + def __init__(self_, name: str, query: Union[str, UnsetType] = unset, **kwargs): + """ + + + :param name: + :type name: str + + :param query: + :type query: str, optional + """ + if query is not unset: + kwargs["query"] = query + super().__init__(kwargs) + + self_.name = name diff --git a/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_time.py b/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_time.py new file mode 100644 index 0000000000..dea0ac5454 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_users_request_data_attributes_time.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 typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class GetCohortUsersRequestDataAttributesTime(ModelNormal): + @cached_property + def openapi_types(_): + return { + "_from": (int,), + "to": (int,), + } + + attribute_map = { + "_from": "from", + "to": "to", + } + + def __init__(self_, _from: Union[int, UnsetType] = unset, to: Union[int, UnsetType] = unset, **kwargs): + """ + + + :param _from: + :type _from: int, optional + + :param to: + :type to: int, optional + """ + if _from is not unset: + kwargs["_from"] = _from + if to is not unset: + kwargs["to"] = to + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_users_request_data_type.py b/src/datadog_api_client/v2/model/get_cohort_users_request_data_type.py new file mode 100644 index 0000000000..36787c780f --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_users_request_data_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 GetCohortUsersRequestDataType(ModelSimple): + """ + + + :param value: If omitted defaults to "cohort_users_request". Must be one of ["cohort_users_request"]. + :type value: str + """ + + allowed_values = { + "cohort_users_request", + } + COHORT_USERS_REQUEST: ClassVar["GetCohortUsersRequestDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +GetCohortUsersRequestDataType.COHORT_USERS_REQUEST = GetCohortUsersRequestDataType("cohort_users_request") diff --git a/src/datadog_api_client/v2/model/get_cohort_users_response.py b/src/datadog_api_client/v2/model/get_cohort_users_response.py new file mode 100644 index 0000000000..643137ae1f --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_users_response.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.get_cohort_users_response_data import GetCohortUsersResponseData + + +class GetCohortUsersResponse(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_users_response_data import GetCohortUsersResponseData + + return { + "data": (GetCohortUsersResponseData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[GetCohortUsersResponseData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: GetCohortUsersResponseData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_users_response_data.py b/src/datadog_api_client/v2/model/get_cohort_users_response_data.py new file mode 100644 index 0000000000..8291d793bd --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_users_response_data.py @@ -0,0 +1,68 @@ +# 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.get_cohort_users_response_data_attributes import ( + GetCohortUsersResponseDataAttributes, + ) + from datadog_api_client.v2.model.get_cohort_users_response_data_type import GetCohortUsersResponseDataType + + +class GetCohortUsersResponseData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_users_response_data_attributes import ( + GetCohortUsersResponseDataAttributes, + ) + from datadog_api_client.v2.model.get_cohort_users_response_data_type import GetCohortUsersResponseDataType + + return { + "attributes": (GetCohortUsersResponseDataAttributes,), + "id": (str,), + "type": (GetCohortUsersResponseDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: GetCohortUsersResponseDataType, + attributes: Union[GetCohortUsersResponseDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: GetCohortUsersResponseDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: + :type type: GetCohortUsersResponseDataType + """ + if attributes is not unset: + kwargs["attributes"] = attributes + if id is not unset: + kwargs["id"] = id + super().__init__(kwargs) + + self_.type = type diff --git a/src/datadog_api_client/v2/model/get_cohort_users_response_data_attributes.py b/src/datadog_api_client/v2/model/get_cohort_users_response_data_attributes.py new file mode 100644 index 0000000000..9acb45436c --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_users_response_data_attributes.py @@ -0,0 +1,48 @@ +# 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.get_cohort_users_response_data_attributes_users_items import ( + GetCohortUsersResponseDataAttributesUsersItems, + ) + + +class GetCohortUsersResponseDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_cohort_users_response_data_attributes_users_items import ( + GetCohortUsersResponseDataAttributesUsersItems, + ) + + return { + "users": ([GetCohortUsersResponseDataAttributesUsersItems],), + } + + attribute_map = { + "users": "users", + } + + def __init__( + self_, users: Union[List[GetCohortUsersResponseDataAttributesUsersItems], UnsetType] = unset, **kwargs + ): + """ + + + :param users: + :type users: [GetCohortUsersResponseDataAttributesUsersItems], optional + """ + if users is not unset: + kwargs["users"] = users + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_users_response_data_attributes_users_items.py b/src/datadog_api_client/v2/model/get_cohort_users_response_data_attributes_users_items.py new file mode 100644 index 0000000000..267e8dc809 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_users_response_data_attributes_users_items.py @@ -0,0 +1,56 @@ +# 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 GetCohortUsersResponseDataAttributesUsersItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "email": (str,), + "id": (str,), + "name": (str,), + } + + attribute_map = { + "email": "email", + "id": "id", + "name": "name", + } + + def __init__( + self_, + email: Union[str, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + name: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param email: + :type email: str, optional + + :param id: + :type id: str, optional + + :param name: + :type name: str, optional + """ + if email is not unset: + kwargs["email"] = email + if id is not unset: + kwargs["id"] = id + if name is not unset: + kwargs["name"] = name + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_cohort_users_response_data_type.py b/src/datadog_api_client/v2/model/get_cohort_users_response_data_type.py new file mode 100644 index 0000000000..3a710726ba --- /dev/null +++ b/src/datadog_api_client/v2/model/get_cohort_users_response_data_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 GetCohortUsersResponseDataType(ModelSimple): + """ + + + :param value: If omitted defaults to "cohort_users_response". Must be one of ["cohort_users_response"]. + :type value: str + """ + + allowed_values = { + "cohort_users_response", + } + COHORT_USERS_RESPONSE: ClassVar["GetCohortUsersResponseDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +GetCohortUsersResponseDataType.COHORT_USERS_RESPONSE = GetCohortUsersResponseDataType("cohort_users_response") diff --git a/src/datadog_api_client/v2/model/sankey_request.py b/src/datadog_api_client/v2/model/sankey_request.py new file mode 100644 index 0000000000..97dfaa3b46 --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_request.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.sankey_request_data import SankeyRequestData + + +class SankeyRequest(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.sankey_request_data import SankeyRequestData + + return { + "data": (SankeyRequestData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[SankeyRequestData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: SankeyRequestData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/sankey_request_data.py b/src/datadog_api_client/v2/model/sankey_request_data.py new file mode 100644 index 0000000000..6634dccbf1 --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_request_data.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, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.sankey_request_data_attributes import SankeyRequestDataAttributes + from datadog_api_client.v2.model.sankey_request_data_type import SankeyRequestDataType + + +class SankeyRequestData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.sankey_request_data_attributes import SankeyRequestDataAttributes + from datadog_api_client.v2.model.sankey_request_data_type import SankeyRequestDataType + + return { + "attributes": (SankeyRequestDataAttributes,), + "id": (str,), + "type": (SankeyRequestDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: SankeyRequestDataType, + attributes: Union[SankeyRequestDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: SankeyRequestDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: + :type type: SankeyRequestDataType + """ + if attributes is not unset: + kwargs["attributes"] = attributes + if id is not unset: + kwargs["id"] = id + super().__init__(kwargs) + + self_.type = type diff --git a/src/datadog_api_client/v2/model/sankey_request_data_attributes.py b/src/datadog_api_client/v2/model/sankey_request_data_attributes.py new file mode 100644 index 0000000000..b7ed75583c --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_request_data_attributes.py @@ -0,0 +1,106 @@ +# 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.sankey_request_data_attributes_definition import ( + SankeyRequestDataAttributesDefinition, + ) + from datadog_api_client.v2.model.sankey_request_data_attributes_sampling import SankeyRequestDataAttributesSampling + from datadog_api_client.v2.model.sankey_request_data_attributes_search import SankeyRequestDataAttributesSearch + from datadog_api_client.v2.model.sankey_request_data_attributes_time import SankeyRequestDataAttributesTime + + +class SankeyRequestDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.sankey_request_data_attributes_definition import ( + SankeyRequestDataAttributesDefinition, + ) + from datadog_api_client.v2.model.sankey_request_data_attributes_sampling import ( + SankeyRequestDataAttributesSampling, + ) + from datadog_api_client.v2.model.sankey_request_data_attributes_search import SankeyRequestDataAttributesSearch + from datadog_api_client.v2.model.sankey_request_data_attributes_time import SankeyRequestDataAttributesTime + + return { + "data_source": (str,), + "definition": (SankeyRequestDataAttributesDefinition,), + "enforced_execution_type": (str,), + "request_id": (str,), + "sampling": (SankeyRequestDataAttributesSampling,), + "search": (SankeyRequestDataAttributesSearch,), + "time": (SankeyRequestDataAttributesTime,), + } + + attribute_map = { + "data_source": "data_source", + "definition": "definition", + "enforced_execution_type": "enforced_execution_type", + "request_id": "request_id", + "sampling": "sampling", + "search": "search", + "time": "time", + } + + def __init__( + self_, + data_source: Union[str, UnsetType] = unset, + definition: Union[SankeyRequestDataAttributesDefinition, UnsetType] = unset, + enforced_execution_type: Union[str, UnsetType] = unset, + request_id: Union[str, UnsetType] = unset, + sampling: Union[SankeyRequestDataAttributesSampling, UnsetType] = unset, + search: Union[SankeyRequestDataAttributesSearch, UnsetType] = unset, + time: Union[SankeyRequestDataAttributesTime, UnsetType] = unset, + **kwargs, + ): + """ + + + :param data_source: + :type data_source: str, optional + + :param definition: + :type definition: SankeyRequestDataAttributesDefinition, optional + + :param enforced_execution_type: + :type enforced_execution_type: str, optional + + :param request_id: + :type request_id: str, optional + + :param sampling: + :type sampling: SankeyRequestDataAttributesSampling, optional + + :param search: + :type search: SankeyRequestDataAttributesSearch, optional + + :param time: + :type time: SankeyRequestDataAttributesTime, optional + """ + if data_source is not unset: + kwargs["data_source"] = data_source + if definition is not unset: + kwargs["definition"] = definition + if enforced_execution_type is not unset: + kwargs["enforced_execution_type"] = enforced_execution_type + if request_id is not unset: + kwargs["request_id"] = request_id + if sampling is not unset: + kwargs["sampling"] = sampling + if search is not unset: + kwargs["search"] = search + if time is not unset: + kwargs["time"] = time + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/sankey_request_data_attributes_definition.py b/src/datadog_api_client/v2/model/sankey_request_data_attributes_definition.py new file mode 100644 index 0000000000..f996b89ea2 --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_request_data_attributes_definition.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, + unset, + UnsetType, +) + + +class SankeyRequestDataAttributesDefinition(ModelNormal): + @cached_property + def openapi_types(_): + return { + "entries_per_step": (int,), + "number_of_steps": (int,), + "source": (str,), + "target": (str,), + } + + attribute_map = { + "entries_per_step": "entries_per_step", + "number_of_steps": "number_of_steps", + "source": "source", + "target": "target", + } + + def __init__( + self_, + entries_per_step: Union[int, UnsetType] = unset, + number_of_steps: Union[int, UnsetType] = unset, + source: Union[str, UnsetType] = unset, + target: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param entries_per_step: + :type entries_per_step: int, optional + + :param number_of_steps: + :type number_of_steps: int, optional + + :param source: + :type source: str, optional + + :param target: + :type target: str, optional + """ + if entries_per_step is not unset: + kwargs["entries_per_step"] = entries_per_step + if number_of_steps is not unset: + kwargs["number_of_steps"] = number_of_steps + if source is not unset: + kwargs["source"] = source + if target is not unset: + kwargs["target"] = target + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/sankey_request_data_attributes_sampling.py b/src/datadog_api_client/v2/model/sankey_request_data_attributes_sampling.py new file mode 100644 index 0000000000..1934dc0f54 --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_request_data_attributes_sampling.py @@ -0,0 +1,36 @@ +# 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 SankeyRequestDataAttributesSampling(ModelNormal): + @cached_property + def openapi_types(_): + return { + "enabled": (bool,), + } + + attribute_map = { + "enabled": "enabled", + } + + def __init__(self_, enabled: Union[bool, UnsetType] = unset, **kwargs): + """ + + + :param enabled: The ``sampling`` ``enabled``. + :type enabled: bool, optional + """ + if enabled is not unset: + kwargs["enabled"] = enabled + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/sankey_request_data_attributes_search.py b/src/datadog_api_client/v2/model/sankey_request_data_attributes_search.py new file mode 100644 index 0000000000..a612421c6a --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_request_data_attributes_search.py @@ -0,0 +1,80 @@ +# 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.sankey_request_data_attributes_search_audience_filters import ( + SankeyRequestDataAttributesSearchAudienceFilters, + ) + from datadog_api_client.v2.model.sankey_request_data_attributes_search_occurrences import ( + SankeyRequestDataAttributesSearchOccurrences, + ) + + +class SankeyRequestDataAttributesSearch(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.sankey_request_data_attributes_search_audience_filters import ( + SankeyRequestDataAttributesSearchAudienceFilters, + ) + from datadog_api_client.v2.model.sankey_request_data_attributes_search_occurrences import ( + SankeyRequestDataAttributesSearchOccurrences, + ) + + return { + "audience_filters": (SankeyRequestDataAttributesSearchAudienceFilters,), + "occurrences": (SankeyRequestDataAttributesSearchOccurrences,), + "query": (str,), + "subquery_id": (str,), + } + + attribute_map = { + "audience_filters": "audience_filters", + "occurrences": "occurrences", + "query": "query", + "subquery_id": "subquery_id", + } + + def __init__( + self_, + audience_filters: Union[SankeyRequestDataAttributesSearchAudienceFilters, UnsetType] = unset, + occurrences: Union[SankeyRequestDataAttributesSearchOccurrences, UnsetType] = unset, + query: Union[str, UnsetType] = unset, + subquery_id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param audience_filters: + :type audience_filters: SankeyRequestDataAttributesSearchAudienceFilters, optional + + :param occurrences: + :type occurrences: SankeyRequestDataAttributesSearchOccurrences, optional + + :param query: + :type query: str, optional + + :param subquery_id: + :type subquery_id: str, optional + """ + if audience_filters is not unset: + kwargs["audience_filters"] = audience_filters + if occurrences is not unset: + kwargs["occurrences"] = occurrences + if query is not unset: + kwargs["query"] = query + if subquery_id is not unset: + kwargs["subquery_id"] = subquery_id + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/sankey_request_data_attributes_search_audience_filters.py b/src/datadog_api_client/v2/model/sankey_request_data_attributes_search_audience_filters.py new file mode 100644 index 0000000000..cfe5c939ab --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_request_data_attributes_search_audience_filters.py @@ -0,0 +1,86 @@ +# 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.sankey_request_data_attributes_search_audience_filters_accounts_items import ( + SankeyRequestDataAttributesSearchAudienceFiltersAccountsItems, + ) + from datadog_api_client.v2.model.sankey_request_data_attributes_search_audience_filters_segments_items import ( + SankeyRequestDataAttributesSearchAudienceFiltersSegmentsItems, + ) + from datadog_api_client.v2.model.sankey_request_data_attributes_search_audience_filters_users_items import ( + SankeyRequestDataAttributesSearchAudienceFiltersUsersItems, + ) + + +class SankeyRequestDataAttributesSearchAudienceFilters(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.sankey_request_data_attributes_search_audience_filters_accounts_items import ( + SankeyRequestDataAttributesSearchAudienceFiltersAccountsItems, + ) + from datadog_api_client.v2.model.sankey_request_data_attributes_search_audience_filters_segments_items import ( + SankeyRequestDataAttributesSearchAudienceFiltersSegmentsItems, + ) + from datadog_api_client.v2.model.sankey_request_data_attributes_search_audience_filters_users_items import ( + SankeyRequestDataAttributesSearchAudienceFiltersUsersItems, + ) + + return { + "accounts": ([SankeyRequestDataAttributesSearchAudienceFiltersAccountsItems],), + "formula": (str,), + "segments": ([SankeyRequestDataAttributesSearchAudienceFiltersSegmentsItems],), + "users": ([SankeyRequestDataAttributesSearchAudienceFiltersUsersItems],), + } + + attribute_map = { + "accounts": "accounts", + "formula": "formula", + "segments": "segments", + "users": "users", + } + + def __init__( + self_, + accounts: Union[List[SankeyRequestDataAttributesSearchAudienceFiltersAccountsItems], UnsetType] = unset, + formula: Union[str, UnsetType] = unset, + segments: Union[List[SankeyRequestDataAttributesSearchAudienceFiltersSegmentsItems], UnsetType] = unset, + users: Union[List[SankeyRequestDataAttributesSearchAudienceFiltersUsersItems], UnsetType] = unset, + **kwargs, + ): + """ + + + :param accounts: + :type accounts: [SankeyRequestDataAttributesSearchAudienceFiltersAccountsItems], optional + + :param formula: + :type formula: str, optional + + :param segments: + :type segments: [SankeyRequestDataAttributesSearchAudienceFiltersSegmentsItems], optional + + :param users: + :type users: [SankeyRequestDataAttributesSearchAudienceFiltersUsersItems], optional + """ + if accounts is not unset: + kwargs["accounts"] = accounts + if formula is not unset: + kwargs["formula"] = formula + if segments is not unset: + kwargs["segments"] = segments + if users is not unset: + kwargs["users"] = users + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/sankey_request_data_attributes_search_audience_filters_accounts_items.py b/src/datadog_api_client/v2/model/sankey_request_data_attributes_search_audience_filters_accounts_items.py new file mode 100644 index 0000000000..2dfbaf56b2 --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_request_data_attributes_search_audience_filters_accounts_items.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 typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class SankeyRequestDataAttributesSearchAudienceFiltersAccountsItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "name": (str,), + "query": (str,), + } + + attribute_map = { + "name": "name", + "query": "query", + } + + def __init__(self_, name: str, query: Union[str, UnsetType] = unset, **kwargs): + """ + + + :param name: + :type name: str + + :param query: + :type query: str, optional + """ + if query is not unset: + kwargs["query"] = query + super().__init__(kwargs) + + self_.name = name diff --git a/src/datadog_api_client/v2/model/sankey_request_data_attributes_search_audience_filters_segments_items.py b/src/datadog_api_client/v2/model/sankey_request_data_attributes_search_audience_filters_segments_items.py new file mode 100644 index 0000000000..50d3b7ee39 --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_request_data_attributes_search_audience_filters_segments_items.py @@ -0,0 +1,39 @@ +# 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 SankeyRequestDataAttributesSearchAudienceFiltersSegmentsItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "name": (str,), + "segment_id": (str,), + } + + attribute_map = { + "name": "name", + "segment_id": "segment_id", + } + + def __init__(self_, name: str, segment_id: str, **kwargs): + """ + + + :param name: + :type name: str + + :param segment_id: + :type segment_id: str + """ + super().__init__(kwargs) + + self_.name = name + self_.segment_id = segment_id diff --git a/src/datadog_api_client/v2/model/sankey_request_data_attributes_search_audience_filters_users_items.py b/src/datadog_api_client/v2/model/sankey_request_data_attributes_search_audience_filters_users_items.py new file mode 100644 index 0000000000..a5c3daca4b --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_request_data_attributes_search_audience_filters_users_items.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 typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class SankeyRequestDataAttributesSearchAudienceFiltersUsersItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "name": (str,), + "query": (str,), + } + + attribute_map = { + "name": "name", + "query": "query", + } + + def __init__(self_, name: str, query: Union[str, UnsetType] = unset, **kwargs): + """ + + + :param name: + :type name: str + + :param query: + :type query: str, optional + """ + if query is not unset: + kwargs["query"] = query + super().__init__(kwargs) + + self_.name = name diff --git a/src/datadog_api_client/v2/model/sankey_request_data_attributes_search_occurrences.py b/src/datadog_api_client/v2/model/sankey_request_data_attributes_search_occurrences.py new file mode 100644 index 0000000000..9833e1f382 --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_request_data_attributes_search_occurrences.py @@ -0,0 +1,49 @@ +# 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, Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class SankeyRequestDataAttributesSearchOccurrences(ModelNormal): + @cached_property + def openapi_types(_): + return { + "meta": ({str: (str,)},), + "operator": (str,), + "value": (str,), + } + + attribute_map = { + "meta": "meta", + "operator": "operator", + "value": "value", + } + + def __init__(self_, operator: str, value: str, meta: Union[Dict[str, str], UnsetType] = unset, **kwargs): + """ + + + :param meta: + :type meta: {str: (str,)}, optional + + :param operator: + :type operator: str + + :param value: + :type value: str + """ + if meta is not unset: + kwargs["meta"] = meta + super().__init__(kwargs) + + self_.operator = operator + self_.value = value diff --git a/src/datadog_api_client/v2/model/sankey_request_data_attributes_time.py b/src/datadog_api_client/v2/model/sankey_request_data_attributes_time.py new file mode 100644 index 0000000000..5879d1ec64 --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_request_data_attributes_time.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 typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class SankeyRequestDataAttributesTime(ModelNormal): + @cached_property + def openapi_types(_): + return { + "_from": (int,), + "to": (int,), + } + + attribute_map = { + "_from": "from", + "to": "to", + } + + def __init__(self_, _from: Union[int, UnsetType] = unset, to: Union[int, UnsetType] = unset, **kwargs): + """ + + + :param _from: + :type _from: int, optional + + :param to: + :type to: int, optional + """ + if _from is not unset: + kwargs["_from"] = _from + if to is not unset: + kwargs["to"] = to + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/sankey_request_data_type.py b/src/datadog_api_client/v2/model/sankey_request_data_type.py new file mode 100644 index 0000000000..8e0e1a2377 --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_request_data_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 SankeyRequestDataType(ModelSimple): + """ + + + :param value: If omitted defaults to "sankey_request". Must be one of ["sankey_request"]. + :type value: str + """ + + allowed_values = { + "sankey_request", + } + SANKEY_REQUEST: ClassVar["SankeyRequestDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +SankeyRequestDataType.SANKEY_REQUEST = SankeyRequestDataType("sankey_request") diff --git a/src/datadog_api_client/v2/model/sankey_response.py b/src/datadog_api_client/v2/model/sankey_response.py new file mode 100644 index 0000000000..497cf9fc2f --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_response.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.sankey_response_data import SankeyResponseData + + +class SankeyResponse(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.sankey_response_data import SankeyResponseData + + return { + "data": (SankeyResponseData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[SankeyResponseData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: SankeyResponseData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/sankey_response_data.py b/src/datadog_api_client/v2/model/sankey_response_data.py new file mode 100644 index 0000000000..65899834ef --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_response_data.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, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.sankey_response_data_attributes import SankeyResponseDataAttributes + from datadog_api_client.v2.model.sankey_response_data_type import SankeyResponseDataType + + +class SankeyResponseData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.sankey_response_data_attributes import SankeyResponseDataAttributes + from datadog_api_client.v2.model.sankey_response_data_type import SankeyResponseDataType + + return { + "attributes": (SankeyResponseDataAttributes,), + "id": (str,), + "type": (SankeyResponseDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: SankeyResponseDataType, + attributes: Union[SankeyResponseDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: SankeyResponseDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: + :type type: SankeyResponseDataType + """ + if attributes is not unset: + kwargs["attributes"] = attributes + if id is not unset: + kwargs["id"] = id + super().__init__(kwargs) + + self_.type = type diff --git a/src/datadog_api_client/v2/model/sankey_response_data_attributes.py b/src/datadog_api_client/v2/model/sankey_response_data_attributes.py new file mode 100644 index 0000000000..a85f6ca170 --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_response_data_attributes.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 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.sankey_response_data_attributes_links_items import ( + SankeyResponseDataAttributesLinksItems, + ) + from datadog_api_client.v2.model.sankey_response_data_attributes_nodes_items import ( + SankeyResponseDataAttributesNodesItems, + ) + + +class SankeyResponseDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.sankey_response_data_attributes_links_items import ( + SankeyResponseDataAttributesLinksItems, + ) + from datadog_api_client.v2.model.sankey_response_data_attributes_nodes_items import ( + SankeyResponseDataAttributesNodesItems, + ) + + return { + "links": ([SankeyResponseDataAttributesLinksItems],), + "nodes": ([SankeyResponseDataAttributesNodesItems],), + } + + attribute_map = { + "links": "links", + "nodes": "nodes", + } + + def __init__( + self_, + links: Union[List[SankeyResponseDataAttributesLinksItems], UnsetType] = unset, + nodes: Union[List[SankeyResponseDataAttributesNodesItems], UnsetType] = unset, + **kwargs, + ): + """ + + + :param links: + :type links: [SankeyResponseDataAttributesLinksItems], optional + + :param nodes: + :type nodes: [SankeyResponseDataAttributesNodesItems], optional + """ + if links is not unset: + kwargs["links"] = links + if nodes is not unset: + kwargs["nodes"] = nodes + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/sankey_response_data_attributes_links_items.py b/src/datadog_api_client/v2/model/sankey_response_data_attributes_links_items.py new file mode 100644 index 0000000000..3349e378fe --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_response_data_attributes_links_items.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 Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class SankeyResponseDataAttributesLinksItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "column": (int,), + "id": (str,), + "source": (str,), + "target": (str,), + "value": (int,), + } + + attribute_map = { + "column": "column", + "id": "id", + "source": "source", + "target": "target", + "value": "value", + } + + def __init__( + self_, + column: Union[int, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + source: Union[str, UnsetType] = unset, + target: Union[str, UnsetType] = unset, + value: Union[int, UnsetType] = unset, + **kwargs, + ): + """ + + + :param column: + :type column: int, optional + + :param id: + :type id: str, optional + + :param source: + :type source: str, optional + + :param target: + :type target: str, optional + + :param value: + :type value: int, optional + """ + if column is not unset: + kwargs["column"] = column + if id is not unset: + kwargs["id"] = id + if source is not unset: + kwargs["source"] = source + if target is not unset: + kwargs["target"] = target + if value is not unset: + kwargs["value"] = value + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/sankey_response_data_attributes_nodes_items.py b/src/datadog_api_client/v2/model/sankey_response_data_attributes_nodes_items.py new file mode 100644 index 0000000000..6fa09fd208 --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_response_data_attributes_nodes_items.py @@ -0,0 +1,106 @@ +# 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.sankey_response_data_attributes_nodes_items_aggregated_nodes_items import ( + SankeyResponseDataAttributesNodesItemsAggregatedNodesItems, + ) + + +class SankeyResponseDataAttributesNodesItems(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.sankey_response_data_attributes_nodes_items_aggregated_nodes_items import ( + SankeyResponseDataAttributesNodesItemsAggregatedNodesItems, + ) + + return { + "aggregated_nodes": ([SankeyResponseDataAttributesNodesItemsAggregatedNodesItems],), + "column": (int,), + "id": (str,), + "incoming_value": (int,), + "name": (str,), + "outgoing_value": (int,), + "type": (str,), + "value": (int,), + } + + attribute_map = { + "aggregated_nodes": "aggregated_nodes", + "column": "column", + "id": "id", + "incoming_value": "incoming_value", + "name": "name", + "outgoing_value": "outgoing_value", + "type": "type", + "value": "value", + } + + def __init__( + self_, + aggregated_nodes: Union[List[SankeyResponseDataAttributesNodesItemsAggregatedNodesItems], UnsetType] = unset, + column: Union[int, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + incoming_value: Union[int, UnsetType] = unset, + name: Union[str, UnsetType] = unset, + outgoing_value: Union[int, UnsetType] = unset, + type: Union[str, UnsetType] = unset, + value: Union[int, UnsetType] = unset, + **kwargs, + ): + """ + + + :param aggregated_nodes: + :type aggregated_nodes: [SankeyResponseDataAttributesNodesItemsAggregatedNodesItems], optional + + :param column: + :type column: int, optional + + :param id: + :type id: str, optional + + :param incoming_value: + :type incoming_value: int, optional + + :param name: + :type name: str, optional + + :param outgoing_value: + :type outgoing_value: int, optional + + :param type: + :type type: str, optional + + :param value: + :type value: int, optional + """ + if aggregated_nodes is not unset: + kwargs["aggregated_nodes"] = aggregated_nodes + if column is not unset: + kwargs["column"] = column + if id is not unset: + kwargs["id"] = id + if incoming_value is not unset: + kwargs["incoming_value"] = incoming_value + if name is not unset: + kwargs["name"] = name + if outgoing_value is not unset: + kwargs["outgoing_value"] = outgoing_value + if type is not unset: + kwargs["type"] = type + if value is not unset: + kwargs["value"] = value + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/sankey_response_data_attributes_nodes_items_aggregated_nodes_items.py b/src/datadog_api_client/v2/model/sankey_response_data_attributes_nodes_items_aggregated_nodes_items.py new file mode 100644 index 0000000000..c7d8305548 --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_response_data_attributes_nodes_items_aggregated_nodes_items.py @@ -0,0 +1,80 @@ +# 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 SankeyResponseDataAttributesNodesItemsAggregatedNodesItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "id": (str,), + "incoming_value": (int,), + "name": (str,), + "outgoing_value": (int,), + "type": (str,), + "value": (int,), + } + + attribute_map = { + "id": "id", + "incoming_value": "incoming_value", + "name": "name", + "outgoing_value": "outgoing_value", + "type": "type", + "value": "value", + } + + def __init__( + self_, + id: Union[str, UnsetType] = unset, + incoming_value: Union[int, UnsetType] = unset, + name: Union[str, UnsetType] = unset, + outgoing_value: Union[int, UnsetType] = unset, + type: Union[str, UnsetType] = unset, + value: Union[int, UnsetType] = unset, + **kwargs, + ): + """ + + + :param id: + :type id: str, optional + + :param incoming_value: + :type incoming_value: int, optional + + :param name: + :type name: str, optional + + :param outgoing_value: + :type outgoing_value: int, optional + + :param type: + :type type: str, optional + + :param value: + :type value: int, optional + """ + if id is not unset: + kwargs["id"] = id + if incoming_value is not unset: + kwargs["incoming_value"] = incoming_value + if name is not unset: + kwargs["name"] = name + if outgoing_value is not unset: + kwargs["outgoing_value"] = outgoing_value + if type is not unset: + kwargs["type"] = type + if value is not unset: + kwargs["value"] = value + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/sankey_response_data_type.py b/src/datadog_api_client/v2/model/sankey_response_data_type.py new file mode 100644 index 0000000000..ce8b0a09b6 --- /dev/null +++ b/src/datadog_api_client/v2/model/sankey_response_data_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 SankeyResponseDataType(ModelSimple): + """ + + + :param value: If omitted defaults to "sankey_response". Must be one of ["sankey_response"]. + :type value: str + """ + + allowed_values = { + "sankey_response", + } + SANKEY_RESPONSE: ClassVar["SankeyResponseDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +SankeyResponseDataType.SANKEY_RESPONSE = SankeyResponseDataType("sankey_response") diff --git a/src/datadog_api_client/v2/model/segment.py b/src/datadog_api_client/v2/model/segment.py new file mode 100644 index 0000000000..5f250622e1 --- /dev/null +++ b/src/datadog_api_client/v2/model/segment.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.segment_data import SegmentData + + +class Segment(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.segment_data import SegmentData + + return { + "data": (SegmentData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[SegmentData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: SegmentData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/segment_array.py b/src/datadog_api_client/v2/model/segment_array.py new file mode 100644 index 0000000000..c34a3c318a --- /dev/null +++ b/src/datadog_api_client/v2/model/segment_array.py @@ -0,0 +1,40 @@ +# 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.segment_data import SegmentData + + +class SegmentArray(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.segment_data import SegmentData + + return { + "data": ([SegmentData],), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: List[SegmentData], **kwargs): + """ + + + :param data: + :type data: [SegmentData] + """ + super().__init__(kwargs) + + self_.data = data diff --git a/src/datadog_api_client/v2/model/segment_data.py b/src/datadog_api_client/v2/model/segment_data.py new file mode 100644 index 0000000000..2658707500 --- /dev/null +++ b/src/datadog_api_client/v2/model/segment_data.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, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.segment_data_attributes import SegmentDataAttributes + from datadog_api_client.v2.model.segment_data_type import SegmentDataType + + +class SegmentData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.segment_data_attributes import SegmentDataAttributes + from datadog_api_client.v2.model.segment_data_type import SegmentDataType + + return { + "attributes": (SegmentDataAttributes,), + "id": (str,), + "type": (SegmentDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: SegmentDataType, + attributes: Union[SegmentDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: SegmentDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: + :type type: SegmentDataType + """ + if attributes is not unset: + kwargs["attributes"] = attributes + if id is not unset: + kwargs["id"] = id + super().__init__(kwargs) + + self_.type = type diff --git a/src/datadog_api_client/v2/model/segment_data_attributes.py b/src/datadog_api_client/v2/model/segment_data_attributes.py new file mode 100644 index 0000000000..9f61ab7c3f --- /dev/null +++ b/src/datadog_api_client/v2/model/segment_data_attributes.py @@ -0,0 +1,160 @@ +# 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, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.segment_data_source import SegmentDataSource + from datadog_api_client.v2.model.segment_data_attributes_data_query import SegmentDataAttributesDataQuery + + +class SegmentDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.segment_data_source import SegmentDataSource + from datadog_api_client.v2.model.segment_data_attributes_data_query import SegmentDataAttributesDataQuery + + return { + "created_at": (datetime,), + "created_by": (SegmentDataSource,), + "data_query": (SegmentDataAttributesDataQuery,), + "description": (str,), + "disabled_at": (datetime,), + "disabled_by": (SegmentDataSource,), + "materialization_row_count": (int,), + "materialized_at": (str,), + "modified_at": (datetime,), + "modified_by": (SegmentDataSource,), + "name": (str,), + "org_id": (int,), + "source": (int,), + "tags": ([str],), + "version": (int,), + } + + attribute_map = { + "created_at": "created_at", + "created_by": "created_by", + "data_query": "data_query", + "description": "description", + "disabled_at": "disabled_at", + "disabled_by": "disabled_by", + "materialization_row_count": "materialization_row_count", + "materialized_at": "materialized_at", + "modified_at": "modified_at", + "modified_by": "modified_by", + "name": "name", + "org_id": "org_id", + "source": "source", + "tags": "tags", + "version": "version", + } + + def __init__( + self_, + data_query: SegmentDataAttributesDataQuery, + name: str, + created_at: Union[datetime, UnsetType] = unset, + created_by: Union[SegmentDataSource, UnsetType] = unset, + description: Union[str, UnsetType] = unset, + disabled_at: Union[datetime, UnsetType] = unset, + disabled_by: Union[SegmentDataSource, UnsetType] = unset, + materialization_row_count: Union[int, UnsetType] = unset, + materialized_at: Union[str, UnsetType] = unset, + modified_at: Union[datetime, UnsetType] = unset, + modified_by: Union[SegmentDataSource, UnsetType] = unset, + org_id: Union[int, UnsetType] = unset, + source: Union[int, UnsetType] = unset, + tags: Union[List[str], UnsetType] = unset, + version: Union[int, UnsetType] = unset, + **kwargs, + ): + """ + + + :param created_at: + :type created_at: datetime, optional + + :param created_by: + :type created_by: SegmentDataSource, optional + + :param data_query: + :type data_query: SegmentDataAttributesDataQuery + + :param description: + :type description: str, optional + + :param disabled_at: + :type disabled_at: datetime, optional + + :param disabled_by: + :type disabled_by: SegmentDataSource, optional + + :param materialization_row_count: + :type materialization_row_count: int, optional + + :param materialized_at: + :type materialized_at: str, optional + + :param modified_at: + :type modified_at: datetime, optional + + :param modified_by: + :type modified_by: SegmentDataSource, optional + + :param name: + :type name: str + + :param org_id: + :type org_id: int, optional + + :param source: + :type source: int, optional + + :param tags: + :type tags: [str], optional + + :param version: + :type version: int, optional + """ + if created_at is not unset: + kwargs["created_at"] = created_at + if created_by is not unset: + kwargs["created_by"] = created_by + if description is not unset: + kwargs["description"] = description + if disabled_at is not unset: + kwargs["disabled_at"] = disabled_at + if disabled_by is not unset: + kwargs["disabled_by"] = disabled_by + if materialization_row_count is not unset: + kwargs["materialization_row_count"] = materialization_row_count + if materialized_at is not unset: + kwargs["materialized_at"] = materialized_at + if modified_at is not unset: + kwargs["modified_at"] = modified_at + if modified_by is not unset: + kwargs["modified_by"] = modified_by + if org_id is not unset: + kwargs["org_id"] = org_id + if source is not unset: + kwargs["source"] = source + if tags is not unset: + kwargs["tags"] = tags + if version is not unset: + kwargs["version"] = version + super().__init__(kwargs) + + self_.data_query = data_query + self_.name = name diff --git a/src/datadog_api_client/v2/model/segment_data_attributes_data_query.py b/src/datadog_api_client/v2/model/segment_data_attributes_data_query.py new file mode 100644 index 0000000000..df5110363e --- /dev/null +++ b/src/datadog_api_client/v2/model/segment_data_attributes_data_query.py @@ -0,0 +1,100 @@ +# 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.segment_data_attributes_data_query_event_platform_items import ( + SegmentDataAttributesDataQueryEventPlatformItems, + ) + from datadog_api_client.v2.model.segment_data_attributes_data_query_reference_table_items import ( + SegmentDataAttributesDataQueryReferenceTableItems, + ) + from datadog_api_client.v2.model.segment_data_attributes_data_query_static_items import ( + SegmentDataAttributesDataQueryStaticItems, + ) + from datadog_api_client.v2.model.segment_data_attributes_data_query_user_store_items import ( + SegmentDataAttributesDataQueryUserStoreItems, + ) + + +class SegmentDataAttributesDataQuery(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.segment_data_attributes_data_query_event_platform_items import ( + SegmentDataAttributesDataQueryEventPlatformItems, + ) + from datadog_api_client.v2.model.segment_data_attributes_data_query_reference_table_items import ( + SegmentDataAttributesDataQueryReferenceTableItems, + ) + from datadog_api_client.v2.model.segment_data_attributes_data_query_static_items import ( + SegmentDataAttributesDataQueryStaticItems, + ) + from datadog_api_client.v2.model.segment_data_attributes_data_query_user_store_items import ( + SegmentDataAttributesDataQueryUserStoreItems, + ) + + return { + "combination": (str,), + "event_platform": ([SegmentDataAttributesDataQueryEventPlatformItems],), + "reference_table": ([SegmentDataAttributesDataQueryReferenceTableItems],), + "static": ([SegmentDataAttributesDataQueryStaticItems],), + "user_store": ([SegmentDataAttributesDataQueryUserStoreItems],), + } + + attribute_map = { + "combination": "combination", + "event_platform": "event_platform", + "reference_table": "reference_table", + "static": "static", + "user_store": "user_store", + } + + def __init__( + self_, + combination: Union[str, UnsetType] = unset, + event_platform: Union[List[SegmentDataAttributesDataQueryEventPlatformItems], UnsetType] = unset, + reference_table: Union[List[SegmentDataAttributesDataQueryReferenceTableItems], UnsetType] = unset, + static: Union[List[SegmentDataAttributesDataQueryStaticItems], UnsetType] = unset, + user_store: Union[List[SegmentDataAttributesDataQueryUserStoreItems], UnsetType] = unset, + **kwargs, + ): + """ + + + :param combination: + :type combination: str, optional + + :param event_platform: + :type event_platform: [SegmentDataAttributesDataQueryEventPlatformItems], optional + + :param reference_table: + :type reference_table: [SegmentDataAttributesDataQueryReferenceTableItems], optional + + :param static: + :type static: [SegmentDataAttributesDataQueryStaticItems], optional + + :param user_store: + :type user_store: [SegmentDataAttributesDataQueryUserStoreItems], optional + """ + if combination is not unset: + kwargs["combination"] = combination + if event_platform is not unset: + kwargs["event_platform"] = event_platform + if reference_table is not unset: + kwargs["reference_table"] = reference_table + if static is not unset: + kwargs["static"] = static + if user_store is not unset: + kwargs["user_store"] = user_store + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/segment_data_attributes_data_query_event_platform_items.py b/src/datadog_api_client/v2/model/segment_data_attributes_data_query_event_platform_items.py new file mode 100644 index 0000000000..15894f0b6c --- /dev/null +++ b/src/datadog_api_client/v2/model/segment_data_attributes_data_query_event_platform_items.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 Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class SegmentDataAttributesDataQueryEventPlatformItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "facet": (str,), + "_from": (str,), + "name": (str,), + "query": (str,), + "to": (str,), + } + + attribute_map = { + "facet": "facet", + "_from": "from", + "name": "name", + "query": "query", + "to": "to", + } + + def __init__( + self_, + facet: str, + _from: Union[str, UnsetType] = unset, + name: Union[str, UnsetType] = unset, + query: Union[str, UnsetType] = unset, + to: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param facet: + :type facet: str + + :param _from: + :type _from: str, optional + + :param name: + :type name: str, optional + + :param query: + :type query: str, optional + + :param to: + :type to: str, optional + """ + if _from is not unset: + kwargs["_from"] = _from + if name is not unset: + kwargs["name"] = name + if query is not unset: + kwargs["query"] = query + if to is not unset: + kwargs["to"] = to + super().__init__(kwargs) + + self_.facet = facet diff --git a/src/datadog_api_client/v2/model/segment_data_attributes_data_query_reference_table_items.py b/src/datadog_api_client/v2/model/segment_data_attributes_data_query_reference_table_items.py new file mode 100644 index 0000000000..f2330f1ba1 --- /dev/null +++ b/src/datadog_api_client/v2/model/segment_data_attributes_data_query_reference_table_items.py @@ -0,0 +1,87 @@ +# 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.segment_data_attributes_data_query_reference_table_items_columns_items import ( + SegmentDataAttributesDataQueryReferenceTableItemsColumnsItems, + ) + from datadog_api_client.v2.model.segment_data_attributes_data_query_reference_table_items_join_condition import ( + SegmentDataAttributesDataQueryReferenceTableItemsJoinCondition, + ) + + +class SegmentDataAttributesDataQueryReferenceTableItems(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.segment_data_attributes_data_query_reference_table_items_columns_items import ( + SegmentDataAttributesDataQueryReferenceTableItemsColumnsItems, + ) + from datadog_api_client.v2.model.segment_data_attributes_data_query_reference_table_items_join_condition import ( + SegmentDataAttributesDataQueryReferenceTableItemsJoinCondition, + ) + + return { + "columns": ([SegmentDataAttributesDataQueryReferenceTableItemsColumnsItems],), + "filter_query": (str,), + "join_condition": (SegmentDataAttributesDataQueryReferenceTableItemsJoinCondition,), + "name": (str,), + "table_name": (str,), + } + + attribute_map = { + "columns": "columns", + "filter_query": "filter_query", + "join_condition": "join_condition", + "name": "name", + "table_name": "table_name", + } + + def __init__( + self_, + join_condition: SegmentDataAttributesDataQueryReferenceTableItemsJoinCondition, + table_name: str, + columns: Union[List[SegmentDataAttributesDataQueryReferenceTableItemsColumnsItems], UnsetType] = unset, + filter_query: Union[str, UnsetType] = unset, + name: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param columns: + :type columns: [SegmentDataAttributesDataQueryReferenceTableItemsColumnsItems], optional + + :param filter_query: + :type filter_query: str, optional + + :param join_condition: + :type join_condition: SegmentDataAttributesDataQueryReferenceTableItemsJoinCondition + + :param name: + :type name: str, optional + + :param table_name: + :type table_name: str + """ + if columns is not unset: + kwargs["columns"] = columns + if filter_query is not unset: + kwargs["filter_query"] = filter_query + if name is not unset: + kwargs["name"] = name + super().__init__(kwargs) + + self_.join_condition = join_condition + self_.table_name = table_name diff --git a/src/datadog_api_client/v2/model/segment_data_attributes_data_query_reference_table_items_columns_items.py b/src/datadog_api_client/v2/model/segment_data_attributes_data_query_reference_table_items_columns_items.py new file mode 100644 index 0000000000..bacc8512d6 --- /dev/null +++ b/src/datadog_api_client/v2/model/segment_data_attributes_data_query_reference_table_items_columns_items.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 typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class SegmentDataAttributesDataQueryReferenceTableItemsColumnsItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "alias": (str,), + "name": (str,), + } + + attribute_map = { + "alias": "alias", + "name": "name", + } + + def __init__(self_, alias: Union[str, UnsetType] = unset, name: Union[str, UnsetType] = unset, **kwargs): + """ + + + :param alias: + :type alias: str, optional + + :param name: + :type name: str, optional + """ + if alias is not unset: + kwargs["alias"] = alias + if name is not unset: + kwargs["name"] = name + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/segment_data_attributes_data_query_reference_table_items_join_condition.py b/src/datadog_api_client/v2/model/segment_data_attributes_data_query_reference_table_items_join_condition.py new file mode 100644 index 0000000000..afa9a0f387 --- /dev/null +++ b/src/datadog_api_client/v2/model/segment_data_attributes_data_query_reference_table_items_join_condition.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 typing import Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class SegmentDataAttributesDataQueryReferenceTableItemsJoinCondition(ModelNormal): + @cached_property + def openapi_types(_): + return { + "column_name": (str,), + "facet": (str,), + } + + attribute_map = { + "column_name": "column_name", + "facet": "facet", + } + + def __init__(self_, column_name: str, facet: Union[str, UnsetType] = unset, **kwargs): + """ + + + :param column_name: + :type column_name: str + + :param facet: + :type facet: str, optional + """ + if facet is not unset: + kwargs["facet"] = facet + super().__init__(kwargs) + + self_.column_name = column_name diff --git a/src/datadog_api_client/v2/model/segment_data_attributes_data_query_static_items.py b/src/datadog_api_client/v2/model/segment_data_attributes_data_query_static_items.py new file mode 100644 index 0000000000..ed116f001c --- /dev/null +++ b/src/datadog_api_client/v2/model/segment_data_attributes_data_query_static_items.py @@ -0,0 +1,62 @@ +# 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 SegmentDataAttributesDataQueryStaticItems(ModelNormal): + validations = { + "user_count": { + "inclusive_minimum": 0, + }, + } + + @cached_property + def openapi_types(_): + return { + "id": (str,), + "name": (str,), + "user_count": (int,), + } + + attribute_map = { + "id": "id", + "name": "name", + "user_count": "user_count", + } + + def __init__( + self_, + id: Union[str, UnsetType] = unset, + name: Union[str, UnsetType] = unset, + user_count: Union[int, UnsetType] = unset, + **kwargs, + ): + """ + + + :param id: + :type id: str, optional + + :param name: + :type name: str, optional + + :param user_count: + :type user_count: int, optional + """ + if id is not unset: + kwargs["id"] = id + if name is not unset: + kwargs["name"] = name + if user_count is not unset: + kwargs["user_count"] = user_count + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/segment_data_attributes_data_query_user_store_items.py b/src/datadog_api_client/v2/model/segment_data_attributes_data_query_user_store_items.py new file mode 100644 index 0000000000..8e7d88d9e7 --- /dev/null +++ b/src/datadog_api_client/v2/model/segment_data_attributes_data_query_user_store_items.py @@ -0,0 +1,56 @@ +# 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 SegmentDataAttributesDataQueryUserStoreItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "facet": (str,), + "name": (str,), + "query": (str,), + } + + attribute_map = { + "facet": "facet", + "name": "name", + "query": "query", + } + + def __init__( + self_, + facet: Union[str, UnsetType] = unset, + name: Union[str, UnsetType] = unset, + query: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param facet: + :type facet: str, optional + + :param name: + :type name: str, optional + + :param query: + :type query: str, optional + """ + if facet is not unset: + kwargs["facet"] = facet + if name is not unset: + kwargs["name"] = name + if query is not unset: + kwargs["query"] = query + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/segment_data_source.py b/src/datadog_api_client/v2/model/segment_data_source.py new file mode 100644 index 0000000000..d88f12d2e6 --- /dev/null +++ b/src/datadog_api_client/v2/model/segment_data_source.py @@ -0,0 +1,70 @@ +# 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 SegmentDataSource(ModelNormal): + @cached_property + def openapi_types(_): + return { + "handle": (str,), + "icon": (str,), + "id": (str,), + "name": (str,), + "uuid": (str,), + } + + attribute_map = { + "handle": "handle", + "icon": "icon", + "id": "id", + "name": "name", + "uuid": "uuid", + } + + def __init__( + self_, + handle: str, + id: str, + uuid: str, + icon: Union[str, UnsetType] = unset, + name: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param handle: + :type handle: str + + :param icon: + :type icon: str, optional + + :param id: + :type id: str + + :param name: + :type name: str, optional + + :param uuid: + :type uuid: str + """ + if icon is not unset: + kwargs["icon"] = icon + if name is not unset: + kwargs["name"] = name + super().__init__(kwargs) + + self_.handle = handle + self_.id = id + self_.uuid = uuid diff --git a/src/datadog_api_client/v2/model/segment_data_type.py b/src/datadog_api_client/v2/model/segment_data_type.py new file mode 100644 index 0000000000..91599fa177 --- /dev/null +++ b/src/datadog_api_client/v2/model/segment_data_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 SegmentDataType(ModelSimple): + """ + + + :param value: If omitted defaults to "segment". Must be one of ["segment"]. + :type value: str + """ + + allowed_values = { + "segment", + } + SEGMENT: ClassVar["SegmentDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +SegmentDataType.SEGMENT = SegmentDataType("segment") diff --git a/src/datadog_api_client/v2/models/__init__.py b/src/datadog_api_client/v2/models/__init__.py index 2132ec885b..0126cf40f0 100644 --- a/src/datadog_api_client/v2/models/__init__.py +++ b/src/datadog_api_client/v2/models/__init__.py @@ -1642,6 +1642,51 @@ from datadog_api_client.v2.model.full_application_key_attributes import FullApplicationKeyAttributes from datadog_api_client.v2.model.full_custom_framework_data import FullCustomFrameworkData from datadog_api_client.v2.model.full_custom_framework_data_attributes import FullCustomFrameworkDataAttributes +from datadog_api_client.v2.model.funnel_request import FunnelRequest +from datadog_api_client.v2.model.funnel_request_data import FunnelRequestData +from datadog_api_client.v2.model.funnel_request_data_attributes import FunnelRequestDataAttributes +from datadog_api_client.v2.model.funnel_request_data_attributes_search import FunnelRequestDataAttributesSearch +from datadog_api_client.v2.model.funnel_request_data_attributes_search_steps_items import ( + FunnelRequestDataAttributesSearchStepsItems, +) +from datadog_api_client.v2.model.funnel_request_data_attributes_time import FunnelRequestDataAttributesTime +from datadog_api_client.v2.model.funnel_request_data_type import FunnelRequestDataType +from datadog_api_client.v2.model.funnel_response import FunnelResponse +from datadog_api_client.v2.model.funnel_response_data import FunnelResponseData +from datadog_api_client.v2.model.funnel_response_data_attributes import FunnelResponseDataAttributes +from datadog_api_client.v2.model.funnel_response_data_attributes_funnel_steps_items import ( + FunnelResponseDataAttributesFunnelStepsItems, +) +from datadog_api_client.v2.model.funnel_response_data_type import FunnelResponseDataType +from datadog_api_client.v2.model.funnel_response_elapsed_time import FunnelResponseElapsedTime +from datadog_api_client.v2.model.funnel_suggestion_request import FunnelSuggestionRequest +from datadog_api_client.v2.model.funnel_suggestion_request_data import FunnelSuggestionRequestData +from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes import FunnelSuggestionRequestDataAttributes +from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_search import ( + FunnelSuggestionRequestDataAttributesSearch, +) +from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_search_steps_items import ( + FunnelSuggestionRequestDataAttributesSearchStepsItems, +) +from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_term_search import ( + FunnelSuggestionRequestDataAttributesTermSearch, +) +from datadog_api_client.v2.model.funnel_suggestion_request_data_attributes_time import ( + FunnelSuggestionRequestDataAttributesTime, +) +from datadog_api_client.v2.model.funnel_suggestion_request_data_type import FunnelSuggestionRequestDataType +from datadog_api_client.v2.model.funnel_suggestion_response import FunnelSuggestionResponse +from datadog_api_client.v2.model.funnel_suggestion_response_data import FunnelSuggestionResponseData +from datadog_api_client.v2.model.funnel_suggestion_response_data_attributes import ( + FunnelSuggestionResponseDataAttributes, +) +from datadog_api_client.v2.model.funnel_suggestion_response_data_attributes_actions_items import ( + FunnelSuggestionResponseDataAttributesActionsItems, +) +from datadog_api_client.v2.model.funnel_suggestion_response_data_attributes_views_items import ( + FunnelSuggestionResponseDataAttributesViewsItems, +) +from datadog_api_client.v2.model.funnel_suggestion_response_data_type import FunnelSuggestionResponseDataType from datadog_api_client.v2.model.gcp_credentials import GCPCredentials from datadog_api_client.v2.model.gcp_credentials_update import GCPCredentialsUpdate from datadog_api_client.v2.model.gcp_integration import GCPIntegration @@ -1712,6 +1757,65 @@ from datadog_api_client.v2.model.get_app_response import GetAppResponse from datadog_api_client.v2.model.get_app_response_data import GetAppResponseData from datadog_api_client.v2.model.get_app_response_data_attributes import GetAppResponseDataAttributes +from datadog_api_client.v2.model.get_cohort_request import GetCohortRequest +from datadog_api_client.v2.model.get_cohort_request_data import GetCohortRequestData +from datadog_api_client.v2.model.get_cohort_request_data_attributes import GetCohortRequestDataAttributes +from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition import ( + GetCohortRequestDataAttributesDefinition, +) +from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters import ( + GetCohortRequestDataAttributesDefinitionAudienceFilters, +) +from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters_accounts_items import ( + GetCohortRequestDataAttributesDefinitionAudienceFiltersAccountsItems, +) +from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters_segments_items import ( + GetCohortRequestDataAttributesDefinitionAudienceFiltersSegmentsItems, +) +from datadog_api_client.v2.model.get_cohort_request_data_attributes_definition_audience_filters_users_items import ( + GetCohortRequestDataAttributesDefinitionAudienceFiltersUsersItems, +) +from datadog_api_client.v2.model.get_cohort_request_data_attributes_time import GetCohortRequestDataAttributesTime +from datadog_api_client.v2.model.get_cohort_request_data_type import GetCohortRequestDataType +from datadog_api_client.v2.model.get_cohort_response import GetCohortResponse +from datadog_api_client.v2.model.get_cohort_response_data import GetCohortResponseData +from datadog_api_client.v2.model.get_cohort_response_data_attributes import GetCohortResponseDataAttributes +from datadog_api_client.v2.model.get_cohort_response_data_attributes_cohorts_items import ( + GetCohortResponseDataAttributesCohortsItems, +) +from datadog_api_client.v2.model.get_cohort_response_data_attributes_cohorts_items_values_items import ( + GetCohortResponseDataAttributesCohortsItemsValuesItems, +) +from datadog_api_client.v2.model.get_cohort_response_data_type import GetCohortResponseDataType +from datadog_api_client.v2.model.get_cohort_users_request import GetCohortUsersRequest +from datadog_api_client.v2.model.get_cohort_users_request_data import GetCohortUsersRequestData +from datadog_api_client.v2.model.get_cohort_users_request_data_attributes import GetCohortUsersRequestDataAttributes +from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition import ( + GetCohortUsersRequestDataAttributesDefinition, +) +from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters import ( + GetCohortUsersRequestDataAttributesDefinitionAudienceFilters, +) +from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters_accounts_items import ( + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersAccountsItems, +) +from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters_segments_items import ( + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersSegmentsItems, +) +from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_definition_audience_filters_users_items import ( + GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersUsersItems, +) +from datadog_api_client.v2.model.get_cohort_users_request_data_attributes_time import ( + GetCohortUsersRequestDataAttributesTime, +) +from datadog_api_client.v2.model.get_cohort_users_request_data_type import GetCohortUsersRequestDataType +from datadog_api_client.v2.model.get_cohort_users_response import GetCohortUsersResponse +from datadog_api_client.v2.model.get_cohort_users_response_data import GetCohortUsersResponseData +from datadog_api_client.v2.model.get_cohort_users_response_data_attributes import GetCohortUsersResponseDataAttributes +from datadog_api_client.v2.model.get_cohort_users_response_data_attributes_users_items import ( + GetCohortUsersResponseDataAttributesUsersItems, +) +from datadog_api_client.v2.model.get_cohort_users_response_data_type import GetCohortUsersResponseDataType from datadog_api_client.v2.model.get_custom_framework_response import GetCustomFrameworkResponse from datadog_api_client.v2.model.get_data_deletions_response_body import GetDataDeletionsResponseBody from datadog_api_client.v2.model.get_device_attributes import GetDeviceAttributes @@ -3711,6 +3815,42 @@ from datadog_api_client.v2.model.slo_report_status_get_response import SLOReportStatusGetResponse from datadog_api_client.v2.model.slo_report_status_get_response_attributes import SLOReportStatusGetResponseAttributes from datadog_api_client.v2.model.slo_report_status_get_response_data import SLOReportStatusGetResponseData +from datadog_api_client.v2.model.sankey_request import SankeyRequest +from datadog_api_client.v2.model.sankey_request_data import SankeyRequestData +from datadog_api_client.v2.model.sankey_request_data_attributes import SankeyRequestDataAttributes +from datadog_api_client.v2.model.sankey_request_data_attributes_definition import SankeyRequestDataAttributesDefinition +from datadog_api_client.v2.model.sankey_request_data_attributes_sampling import SankeyRequestDataAttributesSampling +from datadog_api_client.v2.model.sankey_request_data_attributes_search import SankeyRequestDataAttributesSearch +from datadog_api_client.v2.model.sankey_request_data_attributes_search_audience_filters import ( + SankeyRequestDataAttributesSearchAudienceFilters, +) +from datadog_api_client.v2.model.sankey_request_data_attributes_search_audience_filters_accounts_items import ( + SankeyRequestDataAttributesSearchAudienceFiltersAccountsItems, +) +from datadog_api_client.v2.model.sankey_request_data_attributes_search_audience_filters_segments_items import ( + SankeyRequestDataAttributesSearchAudienceFiltersSegmentsItems, +) +from datadog_api_client.v2.model.sankey_request_data_attributes_search_audience_filters_users_items import ( + SankeyRequestDataAttributesSearchAudienceFiltersUsersItems, +) +from datadog_api_client.v2.model.sankey_request_data_attributes_search_occurrences import ( + SankeyRequestDataAttributesSearchOccurrences, +) +from datadog_api_client.v2.model.sankey_request_data_attributes_time import SankeyRequestDataAttributesTime +from datadog_api_client.v2.model.sankey_request_data_type import SankeyRequestDataType +from datadog_api_client.v2.model.sankey_response import SankeyResponse +from datadog_api_client.v2.model.sankey_response_data import SankeyResponseData +from datadog_api_client.v2.model.sankey_response_data_attributes import SankeyResponseDataAttributes +from datadog_api_client.v2.model.sankey_response_data_attributes_links_items import ( + SankeyResponseDataAttributesLinksItems, +) +from datadog_api_client.v2.model.sankey_response_data_attributes_nodes_items import ( + SankeyResponseDataAttributesNodesItems, +) +from datadog_api_client.v2.model.sankey_response_data_attributes_nodes_items_aggregated_nodes_items import ( + SankeyResponseDataAttributesNodesItemsAggregatedNodesItems, +) +from datadog_api_client.v2.model.sankey_response_data_type import SankeyResponseDataType from datadog_api_client.v2.model.sca_request import ScaRequest from datadog_api_client.v2.model.sca_request_data import ScaRequestData from datadog_api_client.v2.model.sca_request_data_attributes import ScaRequestDataAttributes @@ -4039,6 +4179,31 @@ from datadog_api_client.v2.model.security_monitoring_user import SecurityMonitoringUser from datadog_api_client.v2.model.security_trigger import SecurityTrigger from datadog_api_client.v2.model.security_trigger_wrapper import SecurityTriggerWrapper +from datadog_api_client.v2.model.segment import Segment +from datadog_api_client.v2.model.segment_array import SegmentArray +from datadog_api_client.v2.model.segment_data import SegmentData +from datadog_api_client.v2.model.segment_data_attributes import SegmentDataAttributes +from datadog_api_client.v2.model.segment_data_attributes_data_query import SegmentDataAttributesDataQuery +from datadog_api_client.v2.model.segment_data_attributes_data_query_event_platform_items import ( + SegmentDataAttributesDataQueryEventPlatformItems, +) +from datadog_api_client.v2.model.segment_data_attributes_data_query_reference_table_items import ( + SegmentDataAttributesDataQueryReferenceTableItems, +) +from datadog_api_client.v2.model.segment_data_attributes_data_query_reference_table_items_columns_items import ( + SegmentDataAttributesDataQueryReferenceTableItemsColumnsItems, +) +from datadog_api_client.v2.model.segment_data_attributes_data_query_reference_table_items_join_condition import ( + SegmentDataAttributesDataQueryReferenceTableItemsJoinCondition, +) +from datadog_api_client.v2.model.segment_data_attributes_data_query_static_items import ( + SegmentDataAttributesDataQueryStaticItems, +) +from datadog_api_client.v2.model.segment_data_attributes_data_query_user_store_items import ( + SegmentDataAttributesDataQueryUserStoreItems, +) +from datadog_api_client.v2.model.segment_data_source import SegmentDataSource +from datadog_api_client.v2.model.segment_data_type import SegmentDataType from datadog_api_client.v2.model.selectors import Selectors from datadog_api_client.v2.model.self_service_trigger_wrapper import SelfServiceTriggerWrapper from datadog_api_client.v2.model.send_slack_message_action import SendSlackMessageAction @@ -5961,6 +6126,33 @@ "FullApplicationKeyAttributes", "FullCustomFrameworkData", "FullCustomFrameworkDataAttributes", + "FunnelRequest", + "FunnelRequestData", + "FunnelRequestDataAttributes", + "FunnelRequestDataAttributesSearch", + "FunnelRequestDataAttributesSearchStepsItems", + "FunnelRequestDataAttributesTime", + "FunnelRequestDataType", + "FunnelResponse", + "FunnelResponseData", + "FunnelResponseDataAttributes", + "FunnelResponseDataAttributesFunnelStepsItems", + "FunnelResponseDataType", + "FunnelResponseElapsedTime", + "FunnelSuggestionRequest", + "FunnelSuggestionRequestData", + "FunnelSuggestionRequestDataAttributes", + "FunnelSuggestionRequestDataAttributesSearch", + "FunnelSuggestionRequestDataAttributesSearchStepsItems", + "FunnelSuggestionRequestDataAttributesTermSearch", + "FunnelSuggestionRequestDataAttributesTime", + "FunnelSuggestionRequestDataType", + "FunnelSuggestionResponse", + "FunnelSuggestionResponseData", + "FunnelSuggestionResponseDataAttributes", + "FunnelSuggestionResponseDataAttributesActionsItems", + "FunnelSuggestionResponseDataAttributesViewsItems", + "FunnelSuggestionResponseDataType", "GCPCredentials", "GCPCredentialsUpdate", "GCPIntegration", @@ -6025,6 +6217,37 @@ "GetAppResponse", "GetAppResponseData", "GetAppResponseDataAttributes", + "GetCohortRequest", + "GetCohortRequestData", + "GetCohortRequestDataAttributes", + "GetCohortRequestDataAttributesDefinition", + "GetCohortRequestDataAttributesDefinitionAudienceFilters", + "GetCohortRequestDataAttributesDefinitionAudienceFiltersAccountsItems", + "GetCohortRequestDataAttributesDefinitionAudienceFiltersSegmentsItems", + "GetCohortRequestDataAttributesDefinitionAudienceFiltersUsersItems", + "GetCohortRequestDataAttributesTime", + "GetCohortRequestDataType", + "GetCohortResponse", + "GetCohortResponseData", + "GetCohortResponseDataAttributes", + "GetCohortResponseDataAttributesCohortsItems", + "GetCohortResponseDataAttributesCohortsItemsValuesItems", + "GetCohortResponseDataType", + "GetCohortUsersRequest", + "GetCohortUsersRequestData", + "GetCohortUsersRequestDataAttributes", + "GetCohortUsersRequestDataAttributesDefinition", + "GetCohortUsersRequestDataAttributesDefinitionAudienceFilters", + "GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersAccountsItems", + "GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersSegmentsItems", + "GetCohortUsersRequestDataAttributesDefinitionAudienceFiltersUsersItems", + "GetCohortUsersRequestDataAttributesTime", + "GetCohortUsersRequestDataType", + "GetCohortUsersResponse", + "GetCohortUsersResponseData", + "GetCohortUsersResponseDataAttributes", + "GetCohortUsersResponseDataAttributesUsersItems", + "GetCohortUsersResponseDataType", "GetCustomFrameworkResponse", "GetDataDeletionsResponseBody", "GetDeviceAttributes", @@ -7412,6 +7635,26 @@ "SLOReportStatusGetResponse", "SLOReportStatusGetResponseAttributes", "SLOReportStatusGetResponseData", + "SankeyRequest", + "SankeyRequestData", + "SankeyRequestDataAttributes", + "SankeyRequestDataAttributesDefinition", + "SankeyRequestDataAttributesSampling", + "SankeyRequestDataAttributesSearch", + "SankeyRequestDataAttributesSearchAudienceFilters", + "SankeyRequestDataAttributesSearchAudienceFiltersAccountsItems", + "SankeyRequestDataAttributesSearchAudienceFiltersSegmentsItems", + "SankeyRequestDataAttributesSearchAudienceFiltersUsersItems", + "SankeyRequestDataAttributesSearchOccurrences", + "SankeyRequestDataAttributesTime", + "SankeyRequestDataType", + "SankeyResponse", + "SankeyResponseData", + "SankeyResponseDataAttributes", + "SankeyResponseDataAttributesLinksItems", + "SankeyResponseDataAttributesNodesItems", + "SankeyResponseDataAttributesNodesItemsAggregatedNodesItems", + "SankeyResponseDataType", "ScaRequest", "ScaRequestData", "ScaRequestDataAttributes", @@ -7608,6 +7851,19 @@ "SecurityMonitoringUser", "SecurityTrigger", "SecurityTriggerWrapper", + "Segment", + "SegmentArray", + "SegmentData", + "SegmentDataAttributes", + "SegmentDataAttributesDataQuery", + "SegmentDataAttributesDataQueryEventPlatformItems", + "SegmentDataAttributesDataQueryReferenceTableItems", + "SegmentDataAttributesDataQueryReferenceTableItemsColumnsItems", + "SegmentDataAttributesDataQueryReferenceTableItemsJoinCondition", + "SegmentDataAttributesDataQueryStaticItems", + "SegmentDataAttributesDataQueryUserStoreItems", + "SegmentDataSource", + "SegmentDataType", "Selectors", "SelfServiceTriggerWrapper", "SendSlackMessageAction", diff --git a/tests/v2/features/cohort.feature b/tests/v2/features/cohort.feature new file mode 100644 index 0000000000..8ca5e7bbdd --- /dev/null +++ b/tests/v2/features/cohort.feature @@ -0,0 +1,24 @@ +@endpoint(cohort) @endpoint(cohort-v2) +Feature: Cohort + API for Cohort. + + Background: + Given a valid "apiKeyAuth" key in the system + And a valid "appKeyAuth" key in the system + And an instance of "Cohort" API + + @generated @skip @team:DataDog/product-analytics-backend + Scenario: Get rum cohort returns "Successful response with cohort analysis data" response + Given operation "GetRumCohort" enabled + And new "GetRumCohort" request + And body with value {"data": {"attributes": {"definition": {"audience_filters": {"accounts": [{"name": ""}], "segments": [{"name": "", "segment_id": ""}], "users": [{"name": ""}]}}, "time": {}}, "type": "cohort_request"}} + When the request is sent + Then the response status is 200 Successful response with cohort analysis data + + @generated @skip @team:DataDog/product-analytics-backend + Scenario: Get rum cohort users returns "Successful response with cohort users" response + Given operation "GetRumCohortUsers" enabled + And new "GetRumCohortUsers" request + And body with value {"data": {"attributes": {"definition": {"audience_filters": {"accounts": [{"name": ""}], "segments": [{"name": "", "segment_id": ""}], "users": [{"name": ""}]}}, "time": {}}, "type": "cohort_users_request"}} + When the request is sent + Then the response status is 200 Successful response with cohort users diff --git a/tests/v2/features/funnel.feature b/tests/v2/features/funnel.feature new file mode 100644 index 0000000000..929450400f --- /dev/null +++ b/tests/v2/features/funnel.feature @@ -0,0 +1,24 @@ +@endpoint(funnel) @endpoint(funnel-v2) +Feature: Funnel + API for funnel. + + Background: + Given a valid "apiKeyAuth" key in the system + And a valid "appKeyAuth" key in the system + And an instance of "Funnel" API + + @generated @skip @team:DataDog/product-analytics-backend + Scenario: Get rum funnel returns "Successful response with funnel analysis data" response + Given operation "GetRumFunnel" enabled + And new "GetRumFunnel" request + And body with value {"data": {"attributes": {"data_source": "rum", "enforced_execution_type": "", "request_id": "", "search": {"cross_session_filter": "", "query_string": "@type:view", "steps": [{"facet": "@view.name", "step_filter": "", "value": "/apm/home"}, {"facet": "@view.name", "step_filter": "", "value": "/apm/traces"}], "subquery_id": ""}, "time": {"from": 1756425600000, "to": 1756857600000}}, "id": "funnel_request", "type": "funnel_request"}} + When the request is sent + Then the response status is 200 Successful response with funnel analysis data + + @generated @skip @team:DataDog/product-analytics-backend + Scenario: Get rum funnel step suggestions returns "Successful response with funnel step suggestions" response + Given operation "GetRumFunnelStepSuggestions" enabled + And new "GetRumFunnelStepSuggestions" request + And body with value {"data": {"attributes": {"data_source": "", "search": {"cross_session_filter": "", "query_string": "@type:view", "steps": [{"facet": "@view.name", "step_filter": "", "value": "/apm/home"}], "subquery_id": ""}, "term_search": {"query": "apm"}, "time": {"from": 1756425600000, "to": 1756857600000}}, "id": "funnel_suggestion_request", "type": "funnel_suggestion_request"}} + When the request is sent + Then the response status is 200 Successful response with funnel step suggestions diff --git a/tests/v2/features/segments.feature b/tests/v2/features/segments.feature new file mode 100644 index 0000000000..95cc467d6d --- /dev/null +++ b/tests/v2/features/segments.feature @@ -0,0 +1,30 @@ +@endpoint(segments) @endpoint(segments-v2) +Feature: Segments + API for segments. + + Background: + Given a valid "apiKeyAuth" key in the system + And a valid "appKeyAuth" key in the system + And an instance of "Segments" API + + @generated @skip @team:DataDog/product-analytics-backend + Scenario: Create rum segment returns "Segment created successfully" response + Given operation "CreateRumSegment" enabled + And new "CreateRumSegment" request + And body with value {"data": {"attributes": {"created_at": "0001-01-01T00:00:00Z", "created_by": {"handle": "", "id": "", "uuid": ""}, "data_query": {"event_platform": [{"facet": "@usr.id", "from": "2025-08-01", "name": "high_value_users", "query": "@type:view @view.name:/logs @usr.session_duration:>300000", "to": "2025-09-01"}]}, "description": "Users who frequently visit logs and have high session duration", "modified_at": "0001-01-01T00:00:00Z", "modified_by": {"handle": "", "id": "", "uuid": ""}, "name": "High-Value Users", "org_id": 123456, "source": 0, "tags": ["high-value", "logs", "active"], "version": 1}, "id": "segment-12345", "type": "segment"}} + When the request is sent + Then the response status is 201 Segment created successfully + + @generated @skip @team:DataDog/product-analytics-backend + Scenario: Initialize rum segments returns "Default segments created successfully" response + Given operation "InitializeRumSegments" enabled + And new "InitializeRumSegments" request + When the request is sent + Then the response status is 200 Default segments created successfully + + @generated @skip @team:DataDog/product-analytics-backend + Scenario: List rum segments returns "Successful response with list of segments" response + Given operation "ListRumSegments" enabled + And new "ListRumSegments" request + When the request is sent + Then the response status is 200 Successful response with list of segments diff --git a/tests/v2/features/undo.json b/tests/v2/features/undo.json index f4a7f9e7f8..f019e40f8b 100644 --- a/tests/v2/features/undo.json +++ b/tests/v2/features/undo.json @@ -3254,6 +3254,18 @@ "type": "idempotent" } }, + "GetRumCohort": { + "tag": "Cohort", + "undo": { + "type": "safe" + } + }, + "GetRumCohortUsers": { + "tag": "Cohort", + "undo": { + "type": "safe" + } + }, "ListRumMetrics": { "tag": "Rum Metrics", "undo": { @@ -3303,6 +3315,42 @@ "type": "safe" } }, + "GetRumFunnel": { + "tag": "Funnel", + "undo": { + "type": "safe" + } + }, + "GetRumFunnelStepSuggestions": { + "tag": "Funnel", + "undo": { + "type": "safe" + } + }, + "GetRumSankey": { + "tag": "User Flow", + "undo": { + "type": "safe" + } + }, + "ListRumSegments": { + "tag": "Segments", + "undo": { + "type": "safe" + } + }, + "CreateRumSegment": { + "tag": "Segments", + "undo": { + "type": "safe" + } + }, + "InitializeRumSegments": { + "tag": "Segments", + "undo": { + "type": "safe" + } + }, "UploadIdPMetadata": { "tag": "Organizations", "undo": { diff --git a/tests/v2/features/user_flow.feature b/tests/v2/features/user_flow.feature new file mode 100644 index 0000000000..6dca1f6987 --- /dev/null +++ b/tests/v2/features/user_flow.feature @@ -0,0 +1,14 @@ +@endpoint(user-flow) @endpoint(user-flow-v2) +Feature: User Flow + API for user flow. + + @generated @skip @team:DataDog/product-analytics-backend + Scenario: Get rum sankey returns "Successful response with Sankey diagram data" response + Given a valid "apiKeyAuth" key in the system + And a valid "appKeyAuth" key in the system + And an instance of "UserFlow" API + And operation "GetRumSankey" enabled + And new "GetRumSankey" request + And body with value {"data": {"attributes": {"data_source": "", "definition": {"entries_per_step": 10, "number_of_steps": 5, "source": "@view.name", "target": "@view.name"}, "enforced_execution_type": "", "request_id": "", "sampling": {"enabled": true}, "search": {"audience_filters": {}, "query": "@type:view @application.id:*", "subquery_id": ""}, "time": {"from": 1756425600000, "to": 1756857600000}}, "id": "sankey_request", "type": "sankey_request"}} + When the request is sent + Then the response status is 200 Successful response with Sankey diagram data