From 1c520118b25b887181060ea0f43ad93d3d60a699 Mon Sep 17 00:00:00 2001 From: "ci.datadog-api-spec" Date: Tue, 4 Nov 2025 13:57:20 +0000 Subject: [PATCH] Regenerate client from commit 73c1307 of spec repo --- .generator/schemas/v2/openapi.yaml | 1065 +++++++++++++++++ docs/datadog_api_client.v2.api.rst | 7 + docs/datadog_api_client.v2.model.rst | 371 ++++++ .../CreateConnection.py | 47 + .../DeleteConnection.py | 15 + .../GetAccountFacetInfo.py | 39 + .../v2/rum-audience-management/GetMapping.py | 16 + .../GetUserFacetInfo.py | 39 + .../ListConnections.py | 16 + .../rum-audience-management/QueryAccounts.py | 45 + .../QueryEventFilteredUsers.py | 57 + .../v2/rum-audience-management/QueryUsers.py | 45 + .../UpdateConnection.py | 57 + src/datadog_api_client/configuration.py | 10 + .../v2/api/rum_audience_management_api.py | 435 +++++++ src/datadog_api_client/v2/apis/__init__.py | 2 + .../v2/model/create_connection_request.py | 42 + .../model/create_connection_request_data.py | 68 ++ ...eate_connection_request_data_attributes.py | 80 ++ ...on_request_data_attributes_fields_items.py | 78 ++ .../v2/model/facet_info_request.py | 42 + .../v2/model/facet_info_request_data.py | 64 + .../facet_info_request_data_attributes.py | 79 ++ ...cet_info_request_data_attributes_search.py | 36 + ...nfo_request_data_attributes_term_search.py | 36 + .../v2/model/facet_info_request_data_type.py | 35 + .../v2/model/facet_info_response.py | 42 + .../v2/model/facet_info_response_data.py | 64 + .../facet_info_response_data_attributes.py | 46 + ...et_info_response_data_attributes_result.py | 64 + ...o_response_data_attributes_result_range.py | 43 + ...nse_data_attributes_result_values_items.py | 43 + .../v2/model/facet_info_response_data_type.py | 35 + .../v2/model/get_mapping_response.py | 42 + .../v2/model/get_mapping_response_data.py | 64 + .../get_mapping_response_data_attributes.py | 48 + ...sponse_data_attributes_attributes_items.py | 80 ++ .../model/get_mapping_response_data_type.py | 35 + .../v2/model/list_connections_response.py | 42 + .../model/list_connections_response_data.py | 68 ++ ...st_connections_response_data_attributes.py | 50 + ...ponse_data_attributes_connections_items.py | 121 ++ ..._data_attributes_connections_items_join.py | 43 + .../list_connections_response_data_type.py | 35 + .../v2/model/query_account_request.py | 42 + .../v2/model/query_account_request_data.py | 64 + .../query_account_request_data_attributes.py | 82 ++ ...ry_account_request_data_attributes_sort.py | 43 + .../model/query_account_request_data_type.py | 35 + .../query_event_filtered_users_request.py | 44 + ...query_event_filtered_users_request_data.py | 72 ++ ..._filtered_users_request_data_attributes.py | 82 ++ ...ers_request_data_attributes_event_query.py | 58 + ..._data_attributes_event_query_time_frame.py | 43 + ..._event_filtered_users_request_data_type.py | 37 + .../v2/model/query_response.py | 42 + .../v2/model/query_response_data.py | 64 + .../model/query_response_data_attributes.py | 47 + .../v2/model/query_response_data_type.py | 35 + .../v2/model/query_users_request.py | 42 + .../v2/model/query_users_request_data.py | 64 + .../query_users_request_data_attributes.py | 80 ++ ...uery_users_request_data_attributes_sort.py | 43 + .../v2/model/query_users_request_data_type.py | 35 + .../v2/model/update_connection_request.py | 42 + .../model/update_connection_request_data.py | 67 ++ ...date_connection_request_data_attributes.py | 72 ++ ..._data_attributes_fields_to_update_items.py | 72 ++ .../update_connection_request_data_type.py | 35 + src/datadog_api_client/v2/models/__init__.py | 130 ++ .../features/rum_audience_management.feature | 91 ++ tests/v2/features/undo.json | 81 ++ 72 files changed, 5435 insertions(+) create mode 100644 examples/v2/rum-audience-management/CreateConnection.py create mode 100644 examples/v2/rum-audience-management/DeleteConnection.py create mode 100644 examples/v2/rum-audience-management/GetAccountFacetInfo.py create mode 100644 examples/v2/rum-audience-management/GetMapping.py create mode 100644 examples/v2/rum-audience-management/GetUserFacetInfo.py create mode 100644 examples/v2/rum-audience-management/ListConnections.py create mode 100644 examples/v2/rum-audience-management/QueryAccounts.py create mode 100644 examples/v2/rum-audience-management/QueryEventFilteredUsers.py create mode 100644 examples/v2/rum-audience-management/QueryUsers.py create mode 100644 examples/v2/rum-audience-management/UpdateConnection.py create mode 100644 src/datadog_api_client/v2/api/rum_audience_management_api.py create mode 100644 src/datadog_api_client/v2/model/create_connection_request.py create mode 100644 src/datadog_api_client/v2/model/create_connection_request_data.py create mode 100644 src/datadog_api_client/v2/model/create_connection_request_data_attributes.py create mode 100644 src/datadog_api_client/v2/model/create_connection_request_data_attributes_fields_items.py create mode 100644 src/datadog_api_client/v2/model/facet_info_request.py create mode 100644 src/datadog_api_client/v2/model/facet_info_request_data.py create mode 100644 src/datadog_api_client/v2/model/facet_info_request_data_attributes.py create mode 100644 src/datadog_api_client/v2/model/facet_info_request_data_attributes_search.py create mode 100644 src/datadog_api_client/v2/model/facet_info_request_data_attributes_term_search.py create mode 100644 src/datadog_api_client/v2/model/facet_info_request_data_type.py create mode 100644 src/datadog_api_client/v2/model/facet_info_response.py create mode 100644 src/datadog_api_client/v2/model/facet_info_response_data.py create mode 100644 src/datadog_api_client/v2/model/facet_info_response_data_attributes.py create mode 100644 src/datadog_api_client/v2/model/facet_info_response_data_attributes_result.py create mode 100644 src/datadog_api_client/v2/model/facet_info_response_data_attributes_result_range.py create mode 100644 src/datadog_api_client/v2/model/facet_info_response_data_attributes_result_values_items.py create mode 100644 src/datadog_api_client/v2/model/facet_info_response_data_type.py create mode 100644 src/datadog_api_client/v2/model/get_mapping_response.py create mode 100644 src/datadog_api_client/v2/model/get_mapping_response_data.py create mode 100644 src/datadog_api_client/v2/model/get_mapping_response_data_attributes.py create mode 100644 src/datadog_api_client/v2/model/get_mapping_response_data_attributes_attributes_items.py create mode 100644 src/datadog_api_client/v2/model/get_mapping_response_data_type.py create mode 100644 src/datadog_api_client/v2/model/list_connections_response.py create mode 100644 src/datadog_api_client/v2/model/list_connections_response_data.py create mode 100644 src/datadog_api_client/v2/model/list_connections_response_data_attributes.py create mode 100644 src/datadog_api_client/v2/model/list_connections_response_data_attributes_connections_items.py create mode 100644 src/datadog_api_client/v2/model/list_connections_response_data_attributes_connections_items_join.py create mode 100644 src/datadog_api_client/v2/model/list_connections_response_data_type.py create mode 100644 src/datadog_api_client/v2/model/query_account_request.py create mode 100644 src/datadog_api_client/v2/model/query_account_request_data.py create mode 100644 src/datadog_api_client/v2/model/query_account_request_data_attributes.py create mode 100644 src/datadog_api_client/v2/model/query_account_request_data_attributes_sort.py create mode 100644 src/datadog_api_client/v2/model/query_account_request_data_type.py create mode 100644 src/datadog_api_client/v2/model/query_event_filtered_users_request.py create mode 100644 src/datadog_api_client/v2/model/query_event_filtered_users_request_data.py create mode 100644 src/datadog_api_client/v2/model/query_event_filtered_users_request_data_attributes.py create mode 100644 src/datadog_api_client/v2/model/query_event_filtered_users_request_data_attributes_event_query.py create mode 100644 src/datadog_api_client/v2/model/query_event_filtered_users_request_data_attributes_event_query_time_frame.py create mode 100644 src/datadog_api_client/v2/model/query_event_filtered_users_request_data_type.py create mode 100644 src/datadog_api_client/v2/model/query_response.py create mode 100644 src/datadog_api_client/v2/model/query_response_data.py create mode 100644 src/datadog_api_client/v2/model/query_response_data_attributes.py create mode 100644 src/datadog_api_client/v2/model/query_response_data_type.py create mode 100644 src/datadog_api_client/v2/model/query_users_request.py create mode 100644 src/datadog_api_client/v2/model/query_users_request_data.py create mode 100644 src/datadog_api_client/v2/model/query_users_request_data_attributes.py create mode 100644 src/datadog_api_client/v2/model/query_users_request_data_attributes_sort.py create mode 100644 src/datadog_api_client/v2/model/query_users_request_data_type.py create mode 100644 src/datadog_api_client/v2/model/update_connection_request.py create mode 100644 src/datadog_api_client/v2/model/update_connection_request_data.py create mode 100644 src/datadog_api_client/v2/model/update_connection_request_data_attributes.py create mode 100644 src/datadog_api_client/v2/model/update_connection_request_data_attributes_fields_to_update_items.py create mode 100644 src/datadog_api_client/v2/model/update_connection_request_data_type.py create mode 100644 tests/v2/features/rum_audience_management.feature diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index 6bc9597abb..94f4594ca8 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -12489,6 +12489,89 @@ components: required: - type type: object + CreateConnectionRequest: + example: + data: + attributes: + fields: + - description: Customer subscription tier from `CRM` + display_name: Customer Tier + id: customer_tier + source_name: subscription_tier + type: string + - description: Customer lifetime value in `USD` + display_name: Lifetime Value + id: lifetime_value + source_name: ltv + type: number + join_attribute: user_email + join_type: email + type: ref_table + id: crm-integration + type: connection_id + properties: + data: + $ref: '#/components/schemas/CreateConnectionRequestData' + type: object + CreateConnectionRequestData: + properties: + attributes: + $ref: '#/components/schemas/CreateConnectionRequestDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/UpdateConnectionRequestDataType' + required: + - type + type: object + CreateConnectionRequestDataAttributes: + properties: + fields: + items: + $ref: '#/components/schemas/CreateConnectionRequestDataAttributesFieldsItems' + type: array + join_attribute: + example: '' + type: string + join_type: + example: '' + type: string + metadata: + additionalProperties: + type: string + type: object + type: + example: '' + type: string + required: + - join_attribute + - join_type + - type + type: object + CreateConnectionRequestDataAttributesFieldsItems: + properties: + description: + type: string + display_name: + type: string + groups: + items: + type: string + type: array + id: + example: '' + type: string + source_name: + example: '' + type: string + type: + example: '' + type: string + required: + - id + - source_name + - type + type: object CreateCustomFrameworkRequest: description: Request object to create a custom framework. properties: @@ -19701,6 +19784,140 @@ components: from the other indexes. type: string type: object + FacetInfoRequest: + example: + data: + attributes: + facet_id: first_browser_name + limit: 10 + search: + query: user_org_id:5001 AND first_country_code:US + term_search: + value: Chrome + id: facet_info_request + type: users_facet_info_request + properties: + data: + $ref: '#/components/schemas/FacetInfoRequestData' + type: object + FacetInfoRequestData: + properties: + attributes: + $ref: '#/components/schemas/FacetInfoRequestDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/FacetInfoRequestDataType' + required: + - type + type: object + FacetInfoRequestDataAttributes: + properties: + facet_id: + example: '' + type: string + limit: + example: 0 + format: int64 + type: integer + search: + $ref: '#/components/schemas/FacetInfoRequestDataAttributesSearch' + term_search: + $ref: '#/components/schemas/FacetInfoRequestDataAttributesTermSearch' + required: + - facet_id + - limit + type: object + FacetInfoRequestDataAttributesSearch: + properties: + query: + type: string + type: object + FacetInfoRequestDataAttributesTermSearch: + properties: + value: + type: string + type: object + FacetInfoRequestDataType: + default: users_facet_info_request + description: Users facet info request resource type. + enum: + - users_facet_info_request + example: users_facet_info_request + type: string + x-enum-varnames: + - USERS_FACET_INFO_REQUEST + FacetInfoResponse: + example: + data: + attributes: + result: + values: + - count: 4892 + value: Chrome + - count: 2341 + value: Safari + - count: 1567 + value: Firefox + - count: 892 + value: Edge + - count: 234 + value: Opera + id: facet_info_response + type: users_facet_info + properties: + data: + $ref: '#/components/schemas/FacetInfoResponseData' + type: object + FacetInfoResponseData: + properties: + attributes: + $ref: '#/components/schemas/FacetInfoResponseDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/FacetInfoResponseDataType' + required: + - type + type: object + FacetInfoResponseDataAttributes: + properties: + result: + $ref: '#/components/schemas/FacetInfoResponseDataAttributesResult' + type: object + FacetInfoResponseDataAttributesResult: + properties: + range: + $ref: '#/components/schemas/FacetInfoResponseDataAttributesResultRange' + values: + items: + $ref: '#/components/schemas/FacetInfoResponseDataAttributesResultValuesItems' + type: array + type: object + FacetInfoResponseDataAttributesResultRange: + properties: + max: + type: object + min: + type: object + type: object + FacetInfoResponseDataAttributesResultValuesItems: + properties: + count: + format: int64 + type: integer + value: + type: string + type: object + FacetInfoResponseDataType: + default: users_facet_info + description: Users facet info resource type. + enum: + - users_facet_info + example: users_facet_info + type: string + x-enum-varnames: + - USERS_FACET_INFO FastlyAPIKey: description: The definition of the `FastlyAPIKey` object. properties: @@ -22089,6 +22306,90 @@ components: - ASSIGNEE - CASE - TEAM_OWNERS + GetMappingResponse: + example: + data: + attributes: + attributes: + - attribute: user_id + description: Unique user identifier + display_name: User ID + groups: + - Identity + is_custom: false + type: string + - attribute: user_email + description: User email address + display_name: Email Address + groups: + - Identity + - Contact + is_custom: false + type: string + - attribute: first_country_code + description: The ISO code of the country for the user's first session + display_name: First Country Code + groups: + - Geography + is_custom: false + type: string + - attribute: '@customer_tier' + description: Customer subscription tier + display_name: Customer Tier + groups: + - Business + is_custom: true + type: string + id: get_mappings_response + type: get_mappings_response + properties: + data: + $ref: '#/components/schemas/GetMappingResponseData' + type: object + GetMappingResponseData: + properties: + attributes: + $ref: '#/components/schemas/GetMappingResponseDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/GetMappingResponseDataType' + required: + - type + type: object + GetMappingResponseDataAttributes: + properties: + attributes: + items: + $ref: '#/components/schemas/GetMappingResponseDataAttributesAttributesItems' + type: array + type: object + GetMappingResponseDataAttributesAttributesItems: + properties: + attribute: + type: string + description: + type: string + display_name: + type: string + groups: + items: + type: string + type: array + is_custom: + type: boolean + type: + type: string + type: object + GetMappingResponseDataType: + default: get_mappings_response + description: Get mappings response resource type. + enum: + - get_mappings_response + example: get_mappings_response + type: string + x-enum-varnames: + - GET_MAPPINGS_RESPONSE GetMultipleRulesetsRequest: properties: data: @@ -27737,6 +28038,104 @@ components: required: - data type: object + ListConnectionsResponse: + example: + data: + attributes: + connections: + - created_at: '0001-01-01T00:00:00Z' + created_by: 00000000-0000-0000-0000-000000000000 + fields: + - description: Customer subscription tier + display_name: Customer Tier + groups: + - Business + - Subscription + id: customer_tier + source_name: subscription_tier + type: string + - description: Channel through which user signed up + display_name: Signup Source + groups: + - Marketing + - Attribution + id: signup_source + source_name: acquisition_channel + type: string + id: user-profiles-connection + join: + attribute: user_email + type: email + type: ref_table + updated_at: '0001-01-01T00:00:00Z' + updated_by: 00000000-0000-0000-0000-000000000000 + id: list_connections_response + type: list_connections_response + properties: + data: + $ref: '#/components/schemas/ListConnectionsResponseData' + type: object + ListConnectionsResponseData: + properties: + attributes: + $ref: '#/components/schemas/ListConnectionsResponseDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/ListConnectionsResponseDataType' + required: + - type + type: object + ListConnectionsResponseDataAttributes: + properties: + connections: + items: + $ref: '#/components/schemas/ListConnectionsResponseDataAttributesConnectionsItems' + type: array + type: object + ListConnectionsResponseDataAttributesConnectionsItems: + properties: + created_at: + format: date-time + type: string + created_by: + type: string + fields: + items: + $ref: '#/components/schemas/CreateConnectionRequestDataAttributesFieldsItems' + type: array + id: + type: string + join: + $ref: '#/components/schemas/ListConnectionsResponseDataAttributesConnectionsItemsJoin' + metadata: + additionalProperties: + type: string + type: object + type: + type: string + updated_at: + format: date-time + type: string + updated_by: + type: string + type: object + ListConnectionsResponseDataAttributesConnectionsItemsJoin: + properties: + attribute: + type: string + type: + type: string + type: object + ListConnectionsResponseDataType: + default: list_connections_response + description: List connections response resource type. + enum: + - list_connections_response + example: list_connections_response + type: string + x-enum-varnames: + - LIST_CONNECTIONS_RESPONSE ListDevicesResponse: description: List devices response. properties: @@ -38196,6 +38595,153 @@ components: - $ref: '#/components/schemas/ActionQuery' - $ref: '#/components/schemas/DataTransform' - $ref: '#/components/schemas/StateVariable' + QueryAccountRequest: + example: + data: + attributes: + limit: 20 + query: plan_type:enterprise AND user_count:>100 AND subscription_status:active + select_columns: + - account_id + - account_name + - user_count + - plan_type + - subscription_status + - created_at + - mrr + - industry + sort: + field: user_count + order: DESC + wildcard_search_term: tech + id: query_account_request + type: query_account_request + properties: + data: + $ref: '#/components/schemas/QueryAccountRequestData' + type: object + QueryAccountRequestData: + properties: + attributes: + $ref: '#/components/schemas/QueryAccountRequestDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/QueryAccountRequestDataType' + required: + - type + type: object + QueryAccountRequestDataAttributes: + properties: + limit: + format: int64 + type: integer + query: + type: string + select_columns: + items: + type: string + type: array + sort: + $ref: '#/components/schemas/QueryAccountRequestDataAttributesSort' + wildcard_search_term: + type: string + type: object + QueryAccountRequestDataAttributesSort: + properties: + field: + type: string + order: + type: string + type: object + QueryAccountRequestDataType: + default: query_account_request + description: Query account request resource type. + enum: + - query_account_request + example: query_account_request + type: string + x-enum-varnames: + - QUERY_ACCOUNT_REQUEST + QueryEventFilteredUsersRequest: + example: + data: + attributes: + event_query: + query: '@type:view AND @view.loading_time:>3000 AND @application.name:ecommerce-platform' + time_frame: + end: 1761309676 + start: 1760100076 + include_row_count: true + limit: 25 + query: user_org_id:5001 AND first_country_code:US AND first_browser_name:Chrome + select_columns: + - user_id + - user_email + - first_country_code + - first_browser_name + - events_count + - session_count + - error_count + - avg_loading_time + id: query_event_filtered_users_request + type: query_event_filtered_users_request + properties: + data: + $ref: '#/components/schemas/QueryEventFilteredUsersRequestData' + type: object + QueryEventFilteredUsersRequestData: + properties: + attributes: + $ref: '#/components/schemas/QueryEventFilteredUsersRequestDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/QueryEventFilteredUsersRequestDataType' + required: + - type + type: object + QueryEventFilteredUsersRequestDataAttributes: + properties: + event_query: + $ref: '#/components/schemas/QueryEventFilteredUsersRequestDataAttributesEventQuery' + include_row_count: + type: boolean + limit: + format: int64 + type: integer + query: + type: string + select_columns: + items: + type: string + type: array + type: object + QueryEventFilteredUsersRequestDataAttributesEventQuery: + properties: + query: + type: string + time_frame: + $ref: '#/components/schemas/QueryEventFilteredUsersRequestDataAttributesEventQueryTimeFrame' + type: object + QueryEventFilteredUsersRequestDataAttributesEventQueryTimeFrame: + properties: + end: + format: int64 + type: integer + start: + format: int64 + type: integer + type: object + QueryEventFilteredUsersRequestDataType: + default: query_event_filtered_users_request + description: Query event filtered users request resource type. + enum: + - query_event_filtered_users_request + example: query_event_filtered_users_request + type: string + x-enum-varnames: + - QUERY_EVENT_FILTERED_USERS_REQUEST QueryFormula: description: A formula for calculation based on one or more queries. properties: @@ -38209,6 +38755,81 @@ components: required: - formula type: object + QueryResponse: + example: + data: + attributes: + hits: + - first_browser_name: Chrome + first_city: San Francisco + first_country_code: US + first_device_type: Desktop + last_seen: '2025-08-14T06:45:12.142Z' + session_count: 47 + user_created: '2024-12-15T08:42:33.287Z' + user_email: john.smith@techcorp.com + user_id: '150847' + user_name: John Smith + user_org_id: '5001' + - first_browser_name: Chrome + first_city: Austin + first_country_code: US + first_device_type: Desktop + last_seen: '2025-08-14T05:22:08.951Z' + session_count: 89 + user_created: '2024-11-28T14:17:45.634Z' + user_email: john.williams@techcorp.com + user_id: '150848' + user_name: John Williams + user_org_id: '5001' + - first_browser_name: Chrome + first_city: Seattle + first_country_code: US + first_device_type: Desktop + last_seen: '2025-08-14T04:18:34.726Z' + session_count: 23 + user_created: '2025-01-03T16:33:21.445Z' + user_email: john.jones@techcorp.com + user_id: '150849' + user_name: John Jones + user_org_id: '5001' + total: 147 + id: query_response + type: query_response + properties: + data: + $ref: '#/components/schemas/QueryResponseData' + type: object + QueryResponseData: + properties: + attributes: + $ref: '#/components/schemas/QueryResponseDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/QueryResponseDataType' + required: + - type + type: object + QueryResponseDataAttributes: + properties: + hits: + items: + additionalProperties: {} + type: array + total: + format: int64 + type: integer + type: object + QueryResponseDataType: + default: query_response + description: Query response resource type. + enum: + - query_response + example: query_response + type: string + x-enum-varnames: + - QUERY_RESPONSE QuerySortOrder: default: desc description: Direction of sort. @@ -38219,6 +38840,74 @@ components: x-enum-varnames: - ASC - DESC + QueryUsersRequest: + example: + data: + attributes: + limit: 25 + query: user_email:*@techcorp.com AND first_country_code:US AND first_browser_name:Chrome + select_columns: + - user_id + - user_email + - user_name + - user_org_id + - first_country_code + - first_browser_name + - first_device_type + - last_seen + sort: + field: first_seen + order: DESC + wildcard_search_term: john + id: query_users_request + type: query_users_request + properties: + data: + $ref: '#/components/schemas/QueryUsersRequestData' + type: object + QueryUsersRequestData: + properties: + attributes: + $ref: '#/components/schemas/QueryUsersRequestDataAttributes' + id: + type: string + type: + $ref: '#/components/schemas/QueryUsersRequestDataType' + required: + - type + type: object + QueryUsersRequestDataAttributes: + properties: + limit: + format: int64 + type: integer + query: + type: string + select_columns: + items: + type: string + type: array + sort: + $ref: '#/components/schemas/QueryUsersRequestDataAttributesSort' + wildcard_search_term: + type: string + type: object + QueryUsersRequestDataAttributesSort: + properties: + field: + type: string + order: + type: string + type: object + QueryUsersRequestDataType: + default: query_users_request + description: Query users request resource type. + enum: + - query_users_request + example: query_users_request + type: string + x-enum-varnames: + - QUERY_USERS_REQUEST RUMAggregateBucketValue: description: A bucket value, can be either a timeseries or a single value. oneOf: @@ -52083,6 +52772,88 @@ components: description: The display name of the datastore. type: string type: object + UpdateConnectionRequest: + example: + data: + attributes: + fields_to_add: + - description: Net Promoter Score from customer surveys + display_name: NPS Score + groups: + - Satisfaction + - Metrics + id: nps_score + source_name: net_promoter_score + type: number + fields_to_delete: + - old_revenue_field + fields_to_update: + - field_id: lifetime_value + updated_display_name: Customer Lifetime Value (`USD`) + updated_groups: + - Financial + - Metrics + id: crm-integration + type: connection_id + properties: + data: + $ref: '#/components/schemas/UpdateConnectionRequestData' + type: object + UpdateConnectionRequestData: + properties: + attributes: + $ref: '#/components/schemas/UpdateConnectionRequestDataAttributes' + id: + example: '' + type: string + type: + $ref: '#/components/schemas/UpdateConnectionRequestDataType' + required: + - type + - id + type: object + UpdateConnectionRequestDataAttributes: + properties: + fields_to_add: + items: + $ref: '#/components/schemas/CreateConnectionRequestDataAttributesFieldsItems' + type: array + fields_to_delete: + items: + type: string + type: array + fields_to_update: + items: + $ref: '#/components/schemas/UpdateConnectionRequestDataAttributesFieldsToUpdateItems' + type: array + type: object + UpdateConnectionRequestDataAttributesFieldsToUpdateItems: + properties: + field_id: + example: '' + type: string + updated_description: + type: string + updated_display_name: + type: string + updated_field_id: + type: string + updated_groups: + items: + type: string + type: array + required: + - field_id + type: object + UpdateConnectionRequestDataType: + default: connection_id + description: Connection id resource type. + enum: + - connection_id + example: connection_id + type: string + x-enum-varnames: + - CONNECTION_ID UpdateCustomFrameworkRequest: description: Request object to update a custom framework. properties: @@ -70940,6 +71711,298 @@ paths: x-permission: operator: OPEN permissions: [] + /api/v2/product-analytics/accounts/facet_info: + post: + description: Get facet information for account attributes including possible + values and counts + operationId: GetAccountFacetInfo + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/FacetInfoRequest' + required: true + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/FacetInfoResponse' + description: Successful response with facet information + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get account facet info + tags: + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/product-analytics/accounts/query: + post: + description: Query accounts with flexible filtering by account properties + operationId: QueryAccounts + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/QueryAccountRequest' + required: true + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/QueryResponse' + description: Successful response with account data + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Query accounts + tags: + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/product-analytics/users/event_filtered_query: + post: + description: Query users filtered by both user properties and event platform + data + operationId: QueryEventFilteredUsers + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/QueryEventFilteredUsersRequest' + required: true + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/QueryResponse' + description: Successful response with filtered user data + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Query event filtered users + tags: + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/product-analytics/users/facet_info: + post: + description: Get facet information for user attributes including possible values + and counts + operationId: GetUserFacetInfo + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/FacetInfoRequest' + required: true + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/FacetInfoResponse' + description: Successful response with facet information + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get user facet info + tags: + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/product-analytics/users/query: + post: + description: Query users with flexible filtering by user properties, with optional + wildcard search + operationId: QueryUsers + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/QueryUsersRequest' + required: true + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/QueryResponse' + description: Successful response with user data + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Query users + tags: + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/product-analytics/{entity}/mapping: + get: + description: Get entity mapping configuration including all available attributes + and their properties + operationId: GetMapping + parameters: + - description: The entity for which to get the mapping + in: path + name: entity + required: true + schema: + example: users + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/GetMappingResponse' + description: Successful response with entity mapping configuration + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get mapping + tags: + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/product-analytics/{entity}/mapping/connection: + post: + description: Create a new data connection and its fields for an entity + operationId: CreateConnection + parameters: + - description: The entity for which to create the connection + in: path + name: entity + required: true + schema: + example: users + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateConnectionRequest' + required: true + responses: + '201': + description: Connection created successfully + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create connection + tags: + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + put: + description: Update an existing data connection by adding, updating, or deleting + fields + operationId: UpdateConnection + parameters: + - description: The entity for which to update the connection + in: path + name: entity + required: true + schema: + example: users + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateConnectionRequest' + required: true + responses: + '200': + description: Connection updated successfully + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update connection + tags: + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/product-analytics/{entity}/mapping/connection/{id}: + delete: + description: Delete an existing data connection for an entity + operationId: DeleteConnection + parameters: + - description: The connection ID to delete + in: path + name: id + required: true + schema: + example: connection-id-123 + type: string + - description: The entity for which to delete the connection + in: path + name: entity + required: true + schema: + example: users + type: string + responses: + '204': + description: Connection deleted successfully + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete connection + tags: + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/product-analytics/{entity}/mapping/connections: + get: + description: List all data connections for an entity + operationId: ListConnections + parameters: + - description: The entity for which to list connections + in: path + name: entity + required: true + schema: + example: users + type: string + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/ListConnectionsResponse' + description: Successful response with list of connections + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List connections + tags: + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' /api/v2/query/scalar: post: description: 'Query scalar values (as seen on Query Value, Table, and Toplist @@ -81770,6 +82833,8 @@ tags: [Pipelines page](https://app.datadoghq.com/logs/pipelines).' name: Roles +- description: Auto-generated tag Rum Audience Management + name: Rum Audience Management - description: Manage configuration of [rum-based metrics](https://app.datadoghq.com/rum/generate-metrics) for your organization. externalDocs: diff --git a/docs/datadog_api_client.v2.api.rst b/docs/datadog_api_client.v2.api.rst index 1ff85c6b60..13c0fb8992 100644 --- a/docs/datadog_api_client.v2.api.rst +++ b/docs/datadog_api_client.v2.api.rst @@ -438,6 +438,13 @@ datadog\_api\_client.v2.api.rum\_api module :members: :show-inheritance: +datadog\_api\_client.v2.api.rum\_audience\_management\_api module +----------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.api.rum_audience_management_api + :members: + :show-inheritance: + datadog\_api\_client.v2.api.rum\_metrics\_api module ---------------------------------------------------- diff --git a/docs/datadog_api_client.v2.model.rst b/docs/datadog_api_client.v2.model.rst index 889f134a08..2f7ec94341 100644 --- a/docs/datadog_api_client.v2.model.rst +++ b/docs/datadog_api_client.v2.model.rst @@ -4918,6 +4918,34 @@ datadog\_api\_client.v2.model.create\_apps\_datastore\_response\_data module :members: :show-inheritance: +datadog\_api\_client.v2.model.create\_connection\_request module +---------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.create_connection_request + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.create\_connection\_request\_data module +---------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.create_connection_request_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.create\_connection\_request\_data\_attributes module +---------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.create_connection_request_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.create\_connection\_request\_data\_attributes\_fields\_items module +------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.create_connection_request_data_attributes_fields_items + :members: + :show-inheritance: + datadog\_api\_client.v2.model.create\_custom\_framework\_request module ----------------------------------------------------------------------- @@ -8180,6 +8208,97 @@ datadog\_api\_client.v2.model.events\_warning module :members: :show-inheritance: +datadog\_api\_client.v2.model.facet\_info\_request module +--------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.facet_info_request + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.facet\_info\_request\_data module +--------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.facet_info_request_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.facet\_info\_request\_data\_attributes module +--------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.facet_info_request_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.facet\_info\_request\_data\_attributes\_search module +----------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.facet_info_request_data_attributes_search + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.facet\_info\_request\_data\_attributes\_term\_search module +----------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.facet_info_request_data_attributes_term_search + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.facet\_info\_request\_data\_type module +--------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.facet_info_request_data_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.facet\_info\_response module +---------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.facet_info_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.facet\_info\_response\_data module +---------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.facet_info_response_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.facet\_info\_response\_data\_attributes module +---------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.facet_info_response_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.facet\_info\_response\_data\_attributes\_result module +------------------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.facet_info_response_data_attributes_result + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.facet\_info\_response\_data\_attributes\_result\_range module +------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.facet_info_response_data_attributes_result_range + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.facet\_info\_response\_data\_attributes\_result\_values\_items module +--------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.facet_info_response_data_attributes_result_values_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.facet\_info\_response\_data\_type module +---------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.facet_info_response_data_type + :members: + :show-inheritance: + datadog\_api\_client.v2.model.fastly\_accoun\_response\_attributes module ------------------------------------------------------------------------- @@ -9258,6 +9377,41 @@ datadog\_api\_client.v2.model.get\_issue\_include\_query\_parameter\_item module :members: :show-inheritance: +datadog\_api\_client.v2.model.get\_mapping\_response module +----------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_mapping_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_mapping\_response\_data module +----------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_mapping_response_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_mapping\_response\_data\_attributes module +----------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_mapping_response_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_mapping\_response\_data\_attributes\_attributes\_items module +------------------------------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.get_mapping_response_data_attributes_attributes_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.get\_mapping\_response\_data\_type module +----------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.get_mapping_response_data_type + :members: + :show-inheritance: + datadog\_api\_client.v2.model.get\_multiple\_rulesets\_request module --------------------------------------------------------------------- @@ -11883,6 +12037,48 @@ datadog\_api\_client.v2.model.list\_assets\_sbo\_ms\_response module :members: :show-inheritance: +datadog\_api\_client.v2.model.list\_connections\_response module +---------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.list_connections_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.list\_connections\_response\_data module +---------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.list_connections_response_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.list\_connections\_response\_data\_attributes module +---------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.list_connections_response_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.list\_connections\_response\_data\_attributes\_connections\_items module +------------------------------------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.list_connections_response_data_attributes_connections_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.list\_connections\_response\_data\_attributes\_connections\_items\_join module +------------------------------------------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.list_connections_response_data_attributes_connections_items_join + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.list\_connections\_response\_data\_type module +---------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.list_connections_response_data_type + :members: + :show-inheritance: + datadog\_api\_client.v2.model.list\_devices\_response module ------------------------------------------------------------ @@ -16790,6 +16986,83 @@ datadog\_api\_client.v2.model.query module :members: :show-inheritance: +datadog\_api\_client.v2.model.query\_account\_request module +------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.query_account_request + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_account\_request\_data module +------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.query_account_request_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_account\_request\_data\_attributes module +------------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.query_account_request_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_account\_request\_data\_attributes\_sort module +------------------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.query_account_request_data_attributes_sort + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_account\_request\_data\_type module +------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.query_account_request_data_type + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_event\_filtered\_users\_request module +--------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.query_event_filtered_users_request + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_event\_filtered\_users\_request\_data module +--------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.query_event_filtered_users_request_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_event\_filtered\_users\_request\_data\_attributes module +--------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.query_event_filtered_users_request_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_event\_filtered\_users\_request\_data\_attributes\_event\_query module +----------------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.query_event_filtered_users_request_data_attributes_event_query + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_event\_filtered\_users\_request\_data\_attributes\_event\_query\_time\_frame module +------------------------------------------------------------------------------------------------------------------------ + +.. automodule:: datadog_api_client.v2.model.query_event_filtered_users_request_data_attributes_event_query_time_frame + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_event\_filtered\_users\_request\_data\_type module +--------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.query_event_filtered_users_request_data_type + :members: + :show-inheritance: + datadog\_api\_client.v2.model.query\_formula module --------------------------------------------------- @@ -16797,6 +17070,34 @@ datadog\_api\_client.v2.model.query\_formula module :members: :show-inheritance: +datadog\_api\_client.v2.model.query\_response module +---------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.query_response + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_response\_data module +---------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.query_response_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_response\_data\_attributes module +---------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.query_response_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_response\_data\_type module +---------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.query_response_data_type + :members: + :show-inheritance: + datadog\_api\_client.v2.model.query\_sort\_order module ------------------------------------------------------- @@ -16804,6 +17105,41 @@ datadog\_api\_client.v2.model.query\_sort\_order module :members: :show-inheritance: +datadog\_api\_client.v2.model.query\_users\_request module +---------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.query_users_request + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_users\_request\_data module +---------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.query_users_request_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_users\_request\_data\_attributes module +---------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.query_users_request_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_users\_request\_data\_attributes\_sort module +---------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.query_users_request_data_attributes_sort + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.query\_users\_request\_data\_type module +---------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.query_users_request_data_type + :members: + :show-inheritance: + datadog\_api\_client.v2.model.readiness\_gate module ---------------------------------------------------- @@ -23055,6 +23391,41 @@ datadog\_api\_client.v2.model.update\_apps\_datastore\_request\_data\_attributes :members: :show-inheritance: +datadog\_api\_client.v2.model.update\_connection\_request module +---------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.update_connection_request + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.update\_connection\_request\_data module +---------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.update_connection_request_data + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.update\_connection\_request\_data\_attributes module +---------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.update_connection_request_data_attributes + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.update\_connection\_request\_data\_attributes\_fields\_to\_update\_items module +------------------------------------------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.update_connection_request_data_attributes_fields_to_update_items + :members: + :show-inheritance: + +datadog\_api\_client.v2.model.update\_connection\_request\_data\_type module +---------------------------------------------------------------------------- + +.. automodule:: datadog_api_client.v2.model.update_connection_request_data_type + :members: + :show-inheritance: + datadog\_api\_client.v2.model.update\_custom\_framework\_request module ----------------------------------------------------------------------- diff --git a/examples/v2/rum-audience-management/CreateConnection.py b/examples/v2/rum-audience-management/CreateConnection.py new file mode 100644 index 0000000000..68961bd853 --- /dev/null +++ b/examples/v2/rum-audience-management/CreateConnection.py @@ -0,0 +1,47 @@ +""" +Create connection returns "Connection created successfully" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.rum_audience_management_api import RumAudienceManagementApi +from datadog_api_client.v2.model.create_connection_request import CreateConnectionRequest +from datadog_api_client.v2.model.create_connection_request_data import CreateConnectionRequestData +from datadog_api_client.v2.model.create_connection_request_data_attributes import CreateConnectionRequestDataAttributes +from datadog_api_client.v2.model.create_connection_request_data_attributes_fields_items import ( + CreateConnectionRequestDataAttributesFieldsItems, +) +from datadog_api_client.v2.model.update_connection_request_data_type import UpdateConnectionRequestDataType + +body = CreateConnectionRequest( + data=CreateConnectionRequestData( + attributes=CreateConnectionRequestDataAttributes( + fields=[ + CreateConnectionRequestDataAttributesFieldsItems( + description="Customer subscription tier from `CRM`", + display_name="Customer Tier", + id="customer_tier", + source_name="subscription_tier", + type="string", + ), + CreateConnectionRequestDataAttributesFieldsItems( + description="Customer lifetime value in `USD`", + display_name="Lifetime Value", + id="lifetime_value", + source_name="ltv", + type="number", + ), + ], + join_attribute="user_email", + join_type="email", + type="ref_table", + ), + id="crm-integration", + type=UpdateConnectionRequestDataType.CONNECTION_ID, + ), +) + +configuration = Configuration() +configuration.unstable_operations["create_connection"] = True +with ApiClient(configuration) as api_client: + api_instance = RumAudienceManagementApi(api_client) + api_instance.create_connection(entity="users", body=body) diff --git a/examples/v2/rum-audience-management/DeleteConnection.py b/examples/v2/rum-audience-management/DeleteConnection.py new file mode 100644 index 0000000000..4a0813ccfe --- /dev/null +++ b/examples/v2/rum-audience-management/DeleteConnection.py @@ -0,0 +1,15 @@ +""" +Delete connection returns "Connection deleted successfully" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.rum_audience_management_api import RumAudienceManagementApi + +configuration = Configuration() +configuration.unstable_operations["delete_connection"] = True +with ApiClient(configuration) as api_client: + api_instance = RumAudienceManagementApi(api_client) + api_instance.delete_connection( + id="connection-id-123", + entity="users", + ) diff --git a/examples/v2/rum-audience-management/GetAccountFacetInfo.py b/examples/v2/rum-audience-management/GetAccountFacetInfo.py new file mode 100644 index 0000000000..beb18ab0dc --- /dev/null +++ b/examples/v2/rum-audience-management/GetAccountFacetInfo.py @@ -0,0 +1,39 @@ +""" +Get account facet info returns "Successful response with facet information" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.rum_audience_management_api import RumAudienceManagementApi +from datadog_api_client.v2.model.facet_info_request import FacetInfoRequest +from datadog_api_client.v2.model.facet_info_request_data import FacetInfoRequestData +from datadog_api_client.v2.model.facet_info_request_data_attributes import FacetInfoRequestDataAttributes +from datadog_api_client.v2.model.facet_info_request_data_attributes_search import FacetInfoRequestDataAttributesSearch +from datadog_api_client.v2.model.facet_info_request_data_attributes_term_search import ( + FacetInfoRequestDataAttributesTermSearch, +) +from datadog_api_client.v2.model.facet_info_request_data_type import FacetInfoRequestDataType + +body = FacetInfoRequest( + data=FacetInfoRequestData( + attributes=FacetInfoRequestDataAttributes( + facet_id="first_browser_name", + limit=10, + search=FacetInfoRequestDataAttributesSearch( + query="user_org_id:5001 AND first_country_code:US", + ), + term_search=FacetInfoRequestDataAttributesTermSearch( + value="Chrome", + ), + ), + id="facet_info_request", + type=FacetInfoRequestDataType.USERS_FACET_INFO_REQUEST, + ), +) + +configuration = Configuration() +configuration.unstable_operations["get_account_facet_info"] = True +with ApiClient(configuration) as api_client: + api_instance = RumAudienceManagementApi(api_client) + response = api_instance.get_account_facet_info(body=body) + + print(response) diff --git a/examples/v2/rum-audience-management/GetMapping.py b/examples/v2/rum-audience-management/GetMapping.py new file mode 100644 index 0000000000..9dffdf95af --- /dev/null +++ b/examples/v2/rum-audience-management/GetMapping.py @@ -0,0 +1,16 @@ +""" +Get mapping returns "Successful response with entity mapping configuration" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.rum_audience_management_api import RumAudienceManagementApi + +configuration = Configuration() +configuration.unstable_operations["get_mapping"] = True +with ApiClient(configuration) as api_client: + api_instance = RumAudienceManagementApi(api_client) + response = api_instance.get_mapping( + entity="users", + ) + + print(response) diff --git a/examples/v2/rum-audience-management/GetUserFacetInfo.py b/examples/v2/rum-audience-management/GetUserFacetInfo.py new file mode 100644 index 0000000000..9c8f8f8231 --- /dev/null +++ b/examples/v2/rum-audience-management/GetUserFacetInfo.py @@ -0,0 +1,39 @@ +""" +Get user facet info returns "Successful response with facet information" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.rum_audience_management_api import RumAudienceManagementApi +from datadog_api_client.v2.model.facet_info_request import FacetInfoRequest +from datadog_api_client.v2.model.facet_info_request_data import FacetInfoRequestData +from datadog_api_client.v2.model.facet_info_request_data_attributes import FacetInfoRequestDataAttributes +from datadog_api_client.v2.model.facet_info_request_data_attributes_search import FacetInfoRequestDataAttributesSearch +from datadog_api_client.v2.model.facet_info_request_data_attributes_term_search import ( + FacetInfoRequestDataAttributesTermSearch, +) +from datadog_api_client.v2.model.facet_info_request_data_type import FacetInfoRequestDataType + +body = FacetInfoRequest( + data=FacetInfoRequestData( + attributes=FacetInfoRequestDataAttributes( + facet_id="first_browser_name", + limit=10, + search=FacetInfoRequestDataAttributesSearch( + query="user_org_id:5001 AND first_country_code:US", + ), + term_search=FacetInfoRequestDataAttributesTermSearch( + value="Chrome", + ), + ), + id="facet_info_request", + type=FacetInfoRequestDataType.USERS_FACET_INFO_REQUEST, + ), +) + +configuration = Configuration() +configuration.unstable_operations["get_user_facet_info"] = True +with ApiClient(configuration) as api_client: + api_instance = RumAudienceManagementApi(api_client) + response = api_instance.get_user_facet_info(body=body) + + print(response) diff --git a/examples/v2/rum-audience-management/ListConnections.py b/examples/v2/rum-audience-management/ListConnections.py new file mode 100644 index 0000000000..224bb5553a --- /dev/null +++ b/examples/v2/rum-audience-management/ListConnections.py @@ -0,0 +1,16 @@ +""" +List connections returns "Successful response with list of connections" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.rum_audience_management_api import RumAudienceManagementApi + +configuration = Configuration() +configuration.unstable_operations["list_connections"] = True +with ApiClient(configuration) as api_client: + api_instance = RumAudienceManagementApi(api_client) + response = api_instance.list_connections( + entity="users", + ) + + print(response) diff --git a/examples/v2/rum-audience-management/QueryAccounts.py b/examples/v2/rum-audience-management/QueryAccounts.py new file mode 100644 index 0000000000..1db9319dbc --- /dev/null +++ b/examples/v2/rum-audience-management/QueryAccounts.py @@ -0,0 +1,45 @@ +""" +Query accounts returns "Successful response with account data" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.rum_audience_management_api import RumAudienceManagementApi +from datadog_api_client.v2.model.query_account_request import QueryAccountRequest +from datadog_api_client.v2.model.query_account_request_data import QueryAccountRequestData +from datadog_api_client.v2.model.query_account_request_data_attributes import QueryAccountRequestDataAttributes +from datadog_api_client.v2.model.query_account_request_data_attributes_sort import QueryAccountRequestDataAttributesSort +from datadog_api_client.v2.model.query_account_request_data_type import QueryAccountRequestDataType + +body = QueryAccountRequest( + data=QueryAccountRequestData( + attributes=QueryAccountRequestDataAttributes( + limit=20, + query="plan_type:enterprise AND user_count:>100 AND subscription_status:active", + select_columns=[ + "account_id", + "account_name", + "user_count", + "plan_type", + "subscription_status", + "created_at", + "mrr", + "industry", + ], + sort=QueryAccountRequestDataAttributesSort( + field="user_count", + order="DESC", + ), + wildcard_search_term="tech", + ), + id="query_account_request", + type=QueryAccountRequestDataType.QUERY_ACCOUNT_REQUEST, + ), +) + +configuration = Configuration() +configuration.unstable_operations["query_accounts"] = True +with ApiClient(configuration) as api_client: + api_instance = RumAudienceManagementApi(api_client) + response = api_instance.query_accounts(body=body) + + print(response) diff --git a/examples/v2/rum-audience-management/QueryEventFilteredUsers.py b/examples/v2/rum-audience-management/QueryEventFilteredUsers.py new file mode 100644 index 0000000000..257e68d464 --- /dev/null +++ b/examples/v2/rum-audience-management/QueryEventFilteredUsers.py @@ -0,0 +1,57 @@ +""" +Query event filtered users returns "Successful response with filtered user data" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.rum_audience_management_api import RumAudienceManagementApi +from datadog_api_client.v2.model.query_event_filtered_users_request import QueryEventFilteredUsersRequest +from datadog_api_client.v2.model.query_event_filtered_users_request_data import QueryEventFilteredUsersRequestData +from datadog_api_client.v2.model.query_event_filtered_users_request_data_attributes import ( + QueryEventFilteredUsersRequestDataAttributes, +) +from datadog_api_client.v2.model.query_event_filtered_users_request_data_attributes_event_query import ( + QueryEventFilteredUsersRequestDataAttributesEventQuery, +) +from datadog_api_client.v2.model.query_event_filtered_users_request_data_attributes_event_query_time_frame import ( + QueryEventFilteredUsersRequestDataAttributesEventQueryTimeFrame, +) +from datadog_api_client.v2.model.query_event_filtered_users_request_data_type import ( + QueryEventFilteredUsersRequestDataType, +) + +body = QueryEventFilteredUsersRequest( + data=QueryEventFilteredUsersRequestData( + attributes=QueryEventFilteredUsersRequestDataAttributes( + event_query=QueryEventFilteredUsersRequestDataAttributesEventQuery( + query="@type:view AND @view.loading_time:>3000 AND @application.name:ecommerce-platform", + time_frame=QueryEventFilteredUsersRequestDataAttributesEventQueryTimeFrame( + end=1761309676, + start=1760100076, + ), + ), + include_row_count=True, + limit=25, + query="user_org_id:5001 AND first_country_code:US AND first_browser_name:Chrome", + select_columns=[ + "user_id", + "user_email", + "first_country_code", + "first_browser_name", + "events_count", + "session_count", + "error_count", + "avg_loading_time", + ], + ), + id="query_event_filtered_users_request", + type=QueryEventFilteredUsersRequestDataType.QUERY_EVENT_FILTERED_USERS_REQUEST, + ), +) + +configuration = Configuration() +configuration.unstable_operations["query_event_filtered_users"] = True +with ApiClient(configuration) as api_client: + api_instance = RumAudienceManagementApi(api_client) + response = api_instance.query_event_filtered_users(body=body) + + print(response) diff --git a/examples/v2/rum-audience-management/QueryUsers.py b/examples/v2/rum-audience-management/QueryUsers.py new file mode 100644 index 0000000000..8b3e9ddc67 --- /dev/null +++ b/examples/v2/rum-audience-management/QueryUsers.py @@ -0,0 +1,45 @@ +""" +Query users returns "Successful response with user data" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.rum_audience_management_api import RumAudienceManagementApi +from datadog_api_client.v2.model.query_users_request import QueryUsersRequest +from datadog_api_client.v2.model.query_users_request_data import QueryUsersRequestData +from datadog_api_client.v2.model.query_users_request_data_attributes import QueryUsersRequestDataAttributes +from datadog_api_client.v2.model.query_users_request_data_attributes_sort import QueryUsersRequestDataAttributesSort +from datadog_api_client.v2.model.query_users_request_data_type import QueryUsersRequestDataType + +body = QueryUsersRequest( + data=QueryUsersRequestData( + attributes=QueryUsersRequestDataAttributes( + limit=25, + query="user_email:*@techcorp.com AND first_country_code:US AND first_browser_name:Chrome", + select_columns=[ + "user_id", + "user_email", + "user_name", + "user_org_id", + "first_country_code", + "first_browser_name", + "first_device_type", + "last_seen", + ], + sort=QueryUsersRequestDataAttributesSort( + field="first_seen", + order="DESC", + ), + wildcard_search_term="john", + ), + id="query_users_request", + type=QueryUsersRequestDataType.QUERY_USERS_REQUEST, + ), +) + +configuration = Configuration() +configuration.unstable_operations["query_users"] = True +with ApiClient(configuration) as api_client: + api_instance = RumAudienceManagementApi(api_client) + response = api_instance.query_users(body=body) + + print(response) diff --git a/examples/v2/rum-audience-management/UpdateConnection.py b/examples/v2/rum-audience-management/UpdateConnection.py new file mode 100644 index 0000000000..4abd9d9c50 --- /dev/null +++ b/examples/v2/rum-audience-management/UpdateConnection.py @@ -0,0 +1,57 @@ +""" +Update connection returns "Connection updated successfully" response +""" + +from datadog_api_client import ApiClient, Configuration +from datadog_api_client.v2.api.rum_audience_management_api import RumAudienceManagementApi +from datadog_api_client.v2.model.create_connection_request_data_attributes_fields_items import ( + CreateConnectionRequestDataAttributesFieldsItems, +) +from datadog_api_client.v2.model.update_connection_request import UpdateConnectionRequest +from datadog_api_client.v2.model.update_connection_request_data import UpdateConnectionRequestData +from datadog_api_client.v2.model.update_connection_request_data_attributes import UpdateConnectionRequestDataAttributes +from datadog_api_client.v2.model.update_connection_request_data_attributes_fields_to_update_items import ( + UpdateConnectionRequestDataAttributesFieldsToUpdateItems, +) +from datadog_api_client.v2.model.update_connection_request_data_type import UpdateConnectionRequestDataType + +body = UpdateConnectionRequest( + data=UpdateConnectionRequestData( + attributes=UpdateConnectionRequestDataAttributes( + fields_to_add=[ + CreateConnectionRequestDataAttributesFieldsItems( + description="Net Promoter Score from customer surveys", + display_name="NPS Score", + groups=[ + "Satisfaction", + "Metrics", + ], + id="nps_score", + source_name="net_promoter_score", + type="number", + ), + ], + fields_to_delete=[ + "old_revenue_field", + ], + fields_to_update=[ + UpdateConnectionRequestDataAttributesFieldsToUpdateItems( + field_id="lifetime_value", + updated_display_name="Customer Lifetime Value (`USD`)", + updated_groups=[ + "Financial", + "Metrics", + ], + ), + ], + ), + id="crm-integration", + type=UpdateConnectionRequestDataType.CONNECTION_ID, + ), +) + +configuration = Configuration() +configuration.unstable_operations["update_connection"] = True +with ApiClient(configuration) as api_client: + api_instance = RumAudienceManagementApi(api_client) + api_instance.update_connection(entity="users", body=body) diff --git a/src/datadog_api_client/configuration.py b/src/datadog_api_client/configuration.py index e603b19d57..40241337fc 100644 --- a/src/datadog_api_client/configuration.py +++ b/src/datadog_api_client/configuration.py @@ -324,6 +324,16 @@ def __init__( "v2.validate_existing_monitor_user_template": False, "v2.validate_monitor_user_template": False, "v2.list_role_templates": False, + "v2.create_connection": False, + "v2.delete_connection": False, + "v2.get_account_facet_info": False, + "v2.get_mapping": False, + "v2.get_user_facet_info": False, + "v2.list_connections": False, + "v2.query_accounts": False, + "v2.query_event_filtered_users": False, + "v2.query_users": False, + "v2.update_connection": False, "v2.create_pipeline": False, "v2.delete_pipeline": False, "v2.get_pipeline": False, diff --git a/src/datadog_api_client/v2/api/rum_audience_management_api.py b/src/datadog_api_client/v2/api/rum_audience_management_api.py new file mode 100644 index 0000000000..52cbf0a88b --- /dev/null +++ b/src/datadog_api_client/v2/api/rum_audience_management_api.py @@ -0,0 +1,435 @@ +# 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.facet_info_response import FacetInfoResponse +from datadog_api_client.v2.model.facet_info_request import FacetInfoRequest +from datadog_api_client.v2.model.query_response import QueryResponse +from datadog_api_client.v2.model.query_account_request import QueryAccountRequest +from datadog_api_client.v2.model.query_event_filtered_users_request import QueryEventFilteredUsersRequest +from datadog_api_client.v2.model.query_users_request import QueryUsersRequest +from datadog_api_client.v2.model.get_mapping_response import GetMappingResponse +from datadog_api_client.v2.model.create_connection_request import CreateConnectionRequest +from datadog_api_client.v2.model.update_connection_request import UpdateConnectionRequest +from datadog_api_client.v2.model.list_connections_response import ListConnectionsResponse + + +class RumAudienceManagementApi: + """ + Auto-generated tag Rum Audience Management + """ + + def __init__(self, api_client=None): + if api_client is None: + api_client = ApiClient(Configuration()) + self.api_client = api_client + + self._create_connection_endpoint = _Endpoint( + settings={ + "response_type": None, + "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], + "endpoint_path": "/api/v2/product-analytics/{entity}/mapping/connection", + "operation_id": "create_connection", + "http_method": "POST", + "version": "v2", + }, + params_map={ + "entity": { + "required": True, + "openapi_types": (str,), + "attribute": "entity", + "location": "path", + }, + "body": { + "required": True, + "openapi_types": (CreateConnectionRequest,), + "location": "body", + }, + }, + headers_map={"accept": ["*/*"], "content_type": ["application/json"]}, + api_client=api_client, + ) + + self._delete_connection_endpoint = _Endpoint( + settings={ + "response_type": None, + "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], + "endpoint_path": "/api/v2/product-analytics/{entity}/mapping/connection/{id}", + "operation_id": "delete_connection", + "http_method": "DELETE", + "version": "v2", + }, + params_map={ + "id": { + "required": True, + "openapi_types": (str,), + "attribute": "id", + "location": "path", + }, + "entity": { + "required": True, + "openapi_types": (str,), + "attribute": "entity", + "location": "path", + }, + }, + headers_map={ + "accept": ["*/*"], + }, + api_client=api_client, + ) + + self._get_account_facet_info_endpoint = _Endpoint( + settings={ + "response_type": (FacetInfoResponse,), + "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], + "endpoint_path": "/api/v2/product-analytics/accounts/facet_info", + "operation_id": "get_account_facet_info", + "http_method": "POST", + "version": "v2", + }, + params_map={ + "body": { + "required": True, + "openapi_types": (FacetInfoRequest,), + "location": "body", + }, + }, + headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, + api_client=api_client, + ) + + self._get_mapping_endpoint = _Endpoint( + settings={ + "response_type": (GetMappingResponse,), + "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], + "endpoint_path": "/api/v2/product-analytics/{entity}/mapping", + "operation_id": "get_mapping", + "http_method": "GET", + "version": "v2", + }, + params_map={ + "entity": { + "required": True, + "openapi_types": (str,), + "attribute": "entity", + "location": "path", + }, + }, + headers_map={ + "accept": ["application/json"], + }, + api_client=api_client, + ) + + self._get_user_facet_info_endpoint = _Endpoint( + settings={ + "response_type": (FacetInfoResponse,), + "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], + "endpoint_path": "/api/v2/product-analytics/users/facet_info", + "operation_id": "get_user_facet_info", + "http_method": "POST", + "version": "v2", + }, + params_map={ + "body": { + "required": True, + "openapi_types": (FacetInfoRequest,), + "location": "body", + }, + }, + headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, + api_client=api_client, + ) + + self._list_connections_endpoint = _Endpoint( + settings={ + "response_type": (ListConnectionsResponse,), + "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], + "endpoint_path": "/api/v2/product-analytics/{entity}/mapping/connections", + "operation_id": "list_connections", + "http_method": "GET", + "version": "v2", + }, + params_map={ + "entity": { + "required": True, + "openapi_types": (str,), + "attribute": "entity", + "location": "path", + }, + }, + headers_map={ + "accept": ["application/json"], + }, + api_client=api_client, + ) + + self._query_accounts_endpoint = _Endpoint( + settings={ + "response_type": (QueryResponse,), + "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], + "endpoint_path": "/api/v2/product-analytics/accounts/query", + "operation_id": "query_accounts", + "http_method": "POST", + "version": "v2", + }, + params_map={ + "body": { + "required": True, + "openapi_types": (QueryAccountRequest,), + "location": "body", + }, + }, + headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, + api_client=api_client, + ) + + self._query_event_filtered_users_endpoint = _Endpoint( + settings={ + "response_type": (QueryResponse,), + "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], + "endpoint_path": "/api/v2/product-analytics/users/event_filtered_query", + "operation_id": "query_event_filtered_users", + "http_method": "POST", + "version": "v2", + }, + params_map={ + "body": { + "required": True, + "openapi_types": (QueryEventFilteredUsersRequest,), + "location": "body", + }, + }, + headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, + api_client=api_client, + ) + + self._query_users_endpoint = _Endpoint( + settings={ + "response_type": (QueryResponse,), + "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], + "endpoint_path": "/api/v2/product-analytics/users/query", + "operation_id": "query_users", + "http_method": "POST", + "version": "v2", + }, + params_map={ + "body": { + "required": True, + "openapi_types": (QueryUsersRequest,), + "location": "body", + }, + }, + headers_map={"accept": ["application/json"], "content_type": ["application/json"]}, + api_client=api_client, + ) + + self._update_connection_endpoint = _Endpoint( + settings={ + "response_type": None, + "auth": ["apiKeyAuth", "appKeyAuth", "AuthZ"], + "endpoint_path": "/api/v2/product-analytics/{entity}/mapping/connection", + "operation_id": "update_connection", + "http_method": "PUT", + "version": "v2", + }, + params_map={ + "entity": { + "required": True, + "openapi_types": (str,), + "attribute": "entity", + "location": "path", + }, + "body": { + "required": True, + "openapi_types": (UpdateConnectionRequest,), + "location": "body", + }, + }, + headers_map={"accept": ["*/*"], "content_type": ["application/json"]}, + api_client=api_client, + ) + + def create_connection( + self, + entity: str, + body: CreateConnectionRequest, + ) -> None: + """Create connection. + + Create a new data connection and its fields for an entity + + :param entity: The entity for which to create the connection + :type entity: str + :type body: CreateConnectionRequest + :rtype: None + """ + kwargs: Dict[str, Any] = {} + kwargs["entity"] = entity + + kwargs["body"] = body + + return self._create_connection_endpoint.call_with_http_info(**kwargs) + + def delete_connection( + self, + id: str, + entity: str, + ) -> None: + """Delete connection. + + Delete an existing data connection for an entity + + :param id: The connection ID to delete + :type id: str + :param entity: The entity for which to delete the connection + :type entity: str + :rtype: None + """ + kwargs: Dict[str, Any] = {} + kwargs["id"] = id + + kwargs["entity"] = entity + + return self._delete_connection_endpoint.call_with_http_info(**kwargs) + + def get_account_facet_info( + self, + body: FacetInfoRequest, + ) -> FacetInfoResponse: + """Get account facet info. + + Get facet information for account attributes including possible values and counts + + :type body: FacetInfoRequest + :rtype: FacetInfoResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["body"] = body + + return self._get_account_facet_info_endpoint.call_with_http_info(**kwargs) + + def get_mapping( + self, + entity: str, + ) -> GetMappingResponse: + """Get mapping. + + Get entity mapping configuration including all available attributes and their properties + + :param entity: The entity for which to get the mapping + :type entity: str + :rtype: GetMappingResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["entity"] = entity + + return self._get_mapping_endpoint.call_with_http_info(**kwargs) + + def get_user_facet_info( + self, + body: FacetInfoRequest, + ) -> FacetInfoResponse: + """Get user facet info. + + Get facet information for user attributes including possible values and counts + + :type body: FacetInfoRequest + :rtype: FacetInfoResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["body"] = body + + return self._get_user_facet_info_endpoint.call_with_http_info(**kwargs) + + def list_connections( + self, + entity: str, + ) -> ListConnectionsResponse: + """List connections. + + List all data connections for an entity + + :param entity: The entity for which to list connections + :type entity: str + :rtype: ListConnectionsResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["entity"] = entity + + return self._list_connections_endpoint.call_with_http_info(**kwargs) + + def query_accounts( + self, + body: QueryAccountRequest, + ) -> QueryResponse: + """Query accounts. + + Query accounts with flexible filtering by account properties + + :type body: QueryAccountRequest + :rtype: QueryResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["body"] = body + + return self._query_accounts_endpoint.call_with_http_info(**kwargs) + + def query_event_filtered_users( + self, + body: QueryEventFilteredUsersRequest, + ) -> QueryResponse: + """Query event filtered users. + + Query users filtered by both user properties and event platform data + + :type body: QueryEventFilteredUsersRequest + :rtype: QueryResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["body"] = body + + return self._query_event_filtered_users_endpoint.call_with_http_info(**kwargs) + + def query_users( + self, + body: QueryUsersRequest, + ) -> QueryResponse: + """Query users. + + Query users with flexible filtering by user properties, with optional wildcard search + + :type body: QueryUsersRequest + :rtype: QueryResponse + """ + kwargs: Dict[str, Any] = {} + kwargs["body"] = body + + return self._query_users_endpoint.call_with_http_info(**kwargs) + + def update_connection( + self, + entity: str, + body: UpdateConnectionRequest, + ) -> None: + """Update connection. + + Update an existing data connection by adding, updating, or deleting fields + + :param entity: The entity for which to update the connection + :type entity: str + :type body: UpdateConnectionRequest + :rtype: None + """ + kwargs: Dict[str, Any] = {} + kwargs["entity"] = entity + + kwargs["body"] = body + + return self._update_connection_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..3d7276fb2f 100644 --- a/src/datadog_api_client/v2/apis/__init__.py +++ b/src/datadog_api_client/v2/apis/__init__.py @@ -60,6 +60,7 @@ from datadog_api_client.v2.api.reference_tables_api import ReferenceTablesApi from datadog_api_client.v2.api.restriction_policies_api import RestrictionPoliciesApi from datadog_api_client.v2.api.roles_api import RolesApi +from datadog_api_client.v2.api.rum_audience_management_api import RumAudienceManagementApi 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 @@ -144,6 +145,7 @@ "ReferenceTablesApi", "RestrictionPoliciesApi", "RolesApi", + "RumAudienceManagementApi", "RumMetricsApi", "RumRetentionFiltersApi", "SecurityMonitoringApi", diff --git a/src/datadog_api_client/v2/model/create_connection_request.py b/src/datadog_api_client/v2/model/create_connection_request.py new file mode 100644 index 0000000000..085c924395 --- /dev/null +++ b/src/datadog_api_client/v2/model/create_connection_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.create_connection_request_data import CreateConnectionRequestData + + +class CreateConnectionRequest(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.create_connection_request_data import CreateConnectionRequestData + + return { + "data": (CreateConnectionRequestData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[CreateConnectionRequestData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: CreateConnectionRequestData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/create_connection_request_data.py b/src/datadog_api_client/v2/model/create_connection_request_data.py new file mode 100644 index 0000000000..ce3d8d6faf --- /dev/null +++ b/src/datadog_api_client/v2/model/create_connection_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.create_connection_request_data_attributes import ( + CreateConnectionRequestDataAttributes, + ) + from datadog_api_client.v2.model.update_connection_request_data_type import UpdateConnectionRequestDataType + + +class CreateConnectionRequestData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.create_connection_request_data_attributes import ( + CreateConnectionRequestDataAttributes, + ) + from datadog_api_client.v2.model.update_connection_request_data_type import UpdateConnectionRequestDataType + + return { + "attributes": (CreateConnectionRequestDataAttributes,), + "id": (str,), + "type": (UpdateConnectionRequestDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: UpdateConnectionRequestDataType, + attributes: Union[CreateConnectionRequestDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: CreateConnectionRequestDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: Connection id resource type. + :type type: UpdateConnectionRequestDataType + """ + 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/create_connection_request_data_attributes.py b/src/datadog_api_client/v2/model/create_connection_request_data_attributes.py new file mode 100644 index 0000000000..554e99a101 --- /dev/null +++ b/src/datadog_api_client/v2/model/create_connection_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 Dict, List, Union, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.create_connection_request_data_attributes_fields_items import ( + CreateConnectionRequestDataAttributesFieldsItems, + ) + + +class CreateConnectionRequestDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.create_connection_request_data_attributes_fields_items import ( + CreateConnectionRequestDataAttributesFieldsItems, + ) + + return { + "fields": ([CreateConnectionRequestDataAttributesFieldsItems],), + "join_attribute": (str,), + "join_type": (str,), + "metadata": ({str: (str,)},), + "type": (str,), + } + + attribute_map = { + "fields": "fields", + "join_attribute": "join_attribute", + "join_type": "join_type", + "metadata": "metadata", + "type": "type", + } + + def __init__( + self_, + join_attribute: str, + join_type: str, + type: str, + fields: Union[List[CreateConnectionRequestDataAttributesFieldsItems], UnsetType] = unset, + metadata: Union[Dict[str, str], UnsetType] = unset, + **kwargs, + ): + """ + + + :param fields: + :type fields: [CreateConnectionRequestDataAttributesFieldsItems], optional + + :param join_attribute: + :type join_attribute: str + + :param join_type: + :type join_type: str + + :param metadata: + :type metadata: {str: (str,)}, optional + + :param type: + :type type: str + """ + if fields is not unset: + kwargs["fields"] = fields + if metadata is not unset: + kwargs["metadata"] = metadata + super().__init__(kwargs) + + self_.join_attribute = join_attribute + self_.join_type = join_type + self_.type = type diff --git a/src/datadog_api_client/v2/model/create_connection_request_data_attributes_fields_items.py b/src/datadog_api_client/v2/model/create_connection_request_data_attributes_fields_items.py new file mode 100644 index 0000000000..33e3820763 --- /dev/null +++ b/src/datadog_api_client/v2/model/create_connection_request_data_attributes_fields_items.py @@ -0,0 +1,78 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import List, Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class CreateConnectionRequestDataAttributesFieldsItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "description": (str,), + "display_name": (str,), + "groups": ([str],), + "id": (str,), + "source_name": (str,), + "type": (str,), + } + + attribute_map = { + "description": "description", + "display_name": "display_name", + "groups": "groups", + "id": "id", + "source_name": "source_name", + "type": "type", + } + + def __init__( + self_, + id: str, + source_name: str, + type: str, + description: Union[str, UnsetType] = unset, + display_name: Union[str, UnsetType] = unset, + groups: Union[List[str], UnsetType] = unset, + **kwargs, + ): + """ + + + :param description: + :type description: str, optional + + :param display_name: + :type display_name: str, optional + + :param groups: + :type groups: [str], optional + + :param id: + :type id: str + + :param source_name: + :type source_name: str + + :param type: + :type type: str + """ + if description is not unset: + kwargs["description"] = description + if display_name is not unset: + kwargs["display_name"] = display_name + if groups is not unset: + kwargs["groups"] = groups + super().__init__(kwargs) + + self_.id = id + self_.source_name = source_name + self_.type = type diff --git a/src/datadog_api_client/v2/model/facet_info_request.py b/src/datadog_api_client/v2/model/facet_info_request.py new file mode 100644 index 0000000000..15625bcea6 --- /dev/null +++ b/src/datadog_api_client/v2/model/facet_info_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.facet_info_request_data import FacetInfoRequestData + + +class FacetInfoRequest(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.facet_info_request_data import FacetInfoRequestData + + return { + "data": (FacetInfoRequestData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[FacetInfoRequestData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: FacetInfoRequestData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/facet_info_request_data.py b/src/datadog_api_client/v2/model/facet_info_request_data.py new file mode 100644 index 0000000000..a09e9b2851 --- /dev/null +++ b/src/datadog_api_client/v2/model/facet_info_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.facet_info_request_data_attributes import FacetInfoRequestDataAttributes + from datadog_api_client.v2.model.facet_info_request_data_type import FacetInfoRequestDataType + + +class FacetInfoRequestData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.facet_info_request_data_attributes import FacetInfoRequestDataAttributes + from datadog_api_client.v2.model.facet_info_request_data_type import FacetInfoRequestDataType + + return { + "attributes": (FacetInfoRequestDataAttributes,), + "id": (str,), + "type": (FacetInfoRequestDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: FacetInfoRequestDataType, + attributes: Union[FacetInfoRequestDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: FacetInfoRequestDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: Users facet info request resource type. + :type type: FacetInfoRequestDataType + """ + 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/facet_info_request_data_attributes.py b/src/datadog_api_client/v2/model/facet_info_request_data_attributes.py new file mode 100644 index 0000000000..28bcf15ec1 --- /dev/null +++ b/src/datadog_api_client/v2/model/facet_info_request_data_attributes.py @@ -0,0 +1,79 @@ +# 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.facet_info_request_data_attributes_search import ( + FacetInfoRequestDataAttributesSearch, + ) + from datadog_api_client.v2.model.facet_info_request_data_attributes_term_search import ( + FacetInfoRequestDataAttributesTermSearch, + ) + + +class FacetInfoRequestDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.facet_info_request_data_attributes_search import ( + FacetInfoRequestDataAttributesSearch, + ) + from datadog_api_client.v2.model.facet_info_request_data_attributes_term_search import ( + FacetInfoRequestDataAttributesTermSearch, + ) + + return { + "facet_id": (str,), + "limit": (int,), + "search": (FacetInfoRequestDataAttributesSearch,), + "term_search": (FacetInfoRequestDataAttributesTermSearch,), + } + + attribute_map = { + "facet_id": "facet_id", + "limit": "limit", + "search": "search", + "term_search": "term_search", + } + + def __init__( + self_, + facet_id: str, + limit: int, + search: Union[FacetInfoRequestDataAttributesSearch, UnsetType] = unset, + term_search: Union[FacetInfoRequestDataAttributesTermSearch, UnsetType] = unset, + **kwargs, + ): + """ + + + :param facet_id: + :type facet_id: str + + :param limit: + :type limit: int + + :param search: + :type search: FacetInfoRequestDataAttributesSearch, optional + + :param term_search: + :type term_search: FacetInfoRequestDataAttributesTermSearch, optional + """ + if search is not unset: + kwargs["search"] = search + if term_search is not unset: + kwargs["term_search"] = term_search + super().__init__(kwargs) + + self_.facet_id = facet_id + self_.limit = limit diff --git a/src/datadog_api_client/v2/model/facet_info_request_data_attributes_search.py b/src/datadog_api_client/v2/model/facet_info_request_data_attributes_search.py new file mode 100644 index 0000000000..441992aeee --- /dev/null +++ b/src/datadog_api_client/v2/model/facet_info_request_data_attributes_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 FacetInfoRequestDataAttributesSearch(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/facet_info_request_data_attributes_term_search.py b/src/datadog_api_client/v2/model/facet_info_request_data_attributes_term_search.py new file mode 100644 index 0000000000..288650b24f --- /dev/null +++ b/src/datadog_api_client/v2/model/facet_info_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 FacetInfoRequestDataAttributesTermSearch(ModelNormal): + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + attribute_map = { + "value": "value", + } + + def __init__(self_, value: Union[str, UnsetType] = unset, **kwargs): + """ + + + :param value: + :type value: str, optional + """ + if value is not unset: + kwargs["value"] = value + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/facet_info_request_data_type.py b/src/datadog_api_client/v2/model/facet_info_request_data_type.py new file mode 100644 index 0000000000..1cecf96007 --- /dev/null +++ b/src/datadog_api_client/v2/model/facet_info_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 FacetInfoRequestDataType(ModelSimple): + """ + Users facet info request resource type. + + :param value: If omitted defaults to "users_facet_info_request". Must be one of ["users_facet_info_request"]. + :type value: str + """ + + allowed_values = { + "users_facet_info_request", + } + USERS_FACET_INFO_REQUEST: ClassVar["FacetInfoRequestDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +FacetInfoRequestDataType.USERS_FACET_INFO_REQUEST = FacetInfoRequestDataType("users_facet_info_request") diff --git a/src/datadog_api_client/v2/model/facet_info_response.py b/src/datadog_api_client/v2/model/facet_info_response.py new file mode 100644 index 0000000000..be69cbbf62 --- /dev/null +++ b/src/datadog_api_client/v2/model/facet_info_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.facet_info_response_data import FacetInfoResponseData + + +class FacetInfoResponse(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.facet_info_response_data import FacetInfoResponseData + + return { + "data": (FacetInfoResponseData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[FacetInfoResponseData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: FacetInfoResponseData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/facet_info_response_data.py b/src/datadog_api_client/v2/model/facet_info_response_data.py new file mode 100644 index 0000000000..088cffd28e --- /dev/null +++ b/src/datadog_api_client/v2/model/facet_info_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.facet_info_response_data_attributes import FacetInfoResponseDataAttributes + from datadog_api_client.v2.model.facet_info_response_data_type import FacetInfoResponseDataType + + +class FacetInfoResponseData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.facet_info_response_data_attributes import FacetInfoResponseDataAttributes + from datadog_api_client.v2.model.facet_info_response_data_type import FacetInfoResponseDataType + + return { + "attributes": (FacetInfoResponseDataAttributes,), + "id": (str,), + "type": (FacetInfoResponseDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: FacetInfoResponseDataType, + attributes: Union[FacetInfoResponseDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: FacetInfoResponseDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: Users facet info resource type. + :type type: FacetInfoResponseDataType + """ + 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/facet_info_response_data_attributes.py b/src/datadog_api_client/v2/model/facet_info_response_data_attributes.py new file mode 100644 index 0000000000..c74082b79e --- /dev/null +++ b/src/datadog_api_client/v2/model/facet_info_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 Union, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.facet_info_response_data_attributes_result import ( + FacetInfoResponseDataAttributesResult, + ) + + +class FacetInfoResponseDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.facet_info_response_data_attributes_result import ( + FacetInfoResponseDataAttributesResult, + ) + + return { + "result": (FacetInfoResponseDataAttributesResult,), + } + + attribute_map = { + "result": "result", + } + + def __init__(self_, result: Union[FacetInfoResponseDataAttributesResult, UnsetType] = unset, **kwargs): + """ + + + :param result: + :type result: FacetInfoResponseDataAttributesResult, optional + """ + if result is not unset: + kwargs["result"] = result + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/facet_info_response_data_attributes_result.py b/src/datadog_api_client/v2/model/facet_info_response_data_attributes_result.py new file mode 100644 index 0000000000..634767e3c7 --- /dev/null +++ b/src/datadog_api_client/v2/model/facet_info_response_data_attributes_result.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.facet_info_response_data_attributes_result_range import ( + FacetInfoResponseDataAttributesResultRange, + ) + from datadog_api_client.v2.model.facet_info_response_data_attributes_result_values_items import ( + FacetInfoResponseDataAttributesResultValuesItems, + ) + + +class FacetInfoResponseDataAttributesResult(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.facet_info_response_data_attributes_result_range import ( + FacetInfoResponseDataAttributesResultRange, + ) + from datadog_api_client.v2.model.facet_info_response_data_attributes_result_values_items import ( + FacetInfoResponseDataAttributesResultValuesItems, + ) + + return { + "range": (FacetInfoResponseDataAttributesResultRange,), + "values": ([FacetInfoResponseDataAttributesResultValuesItems],), + } + + attribute_map = { + "range": "range", + "values": "values", + } + + def __init__( + self_, + range: Union[FacetInfoResponseDataAttributesResultRange, UnsetType] = unset, + values: Union[List[FacetInfoResponseDataAttributesResultValuesItems], UnsetType] = unset, + **kwargs, + ): + """ + + + :param range: + :type range: FacetInfoResponseDataAttributesResultRange, optional + + :param values: + :type values: [FacetInfoResponseDataAttributesResultValuesItems], optional + """ + if range is not unset: + kwargs["range"] = range + if values is not unset: + kwargs["values"] = values + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/facet_info_response_data_attributes_result_range.py b/src/datadog_api_client/v2/model/facet_info_response_data_attributes_result_range.py new file mode 100644 index 0000000000..073e471ce5 --- /dev/null +++ b/src/datadog_api_client/v2/model/facet_info_response_data_attributes_result_range.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 FacetInfoResponseDataAttributesResultRange(ModelNormal): + @cached_property + def openapi_types(_): + return { + "max": (dict,), + "min": (dict,), + } + + attribute_map = { + "max": "max", + "min": "min", + } + + def __init__(self_, max: Union[dict, UnsetType] = unset, min: Union[dict, UnsetType] = unset, **kwargs): + """ + + + :param max: + :type max: dict, optional + + :param min: + :type min: dict, optional + """ + if max is not unset: + kwargs["max"] = max + if min is not unset: + kwargs["min"] = min + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/facet_info_response_data_attributes_result_values_items.py b/src/datadog_api_client/v2/model/facet_info_response_data_attributes_result_values_items.py new file mode 100644 index 0000000000..e232a60df5 --- /dev/null +++ b/src/datadog_api_client/v2/model/facet_info_response_data_attributes_result_values_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 FacetInfoResponseDataAttributesResultValuesItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "count": (int,), + "value": (str,), + } + + attribute_map = { + "count": "count", + "value": "value", + } + + def __init__(self_, count: Union[int, UnsetType] = unset, value: Union[str, UnsetType] = unset, **kwargs): + """ + + + :param count: + :type count: int, optional + + :param value: + :type value: str, optional + """ + if count is not unset: + kwargs["count"] = count + if value is not unset: + kwargs["value"] = value + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/facet_info_response_data_type.py b/src/datadog_api_client/v2/model/facet_info_response_data_type.py new file mode 100644 index 0000000000..33edcb7d79 --- /dev/null +++ b/src/datadog_api_client/v2/model/facet_info_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 FacetInfoResponseDataType(ModelSimple): + """ + Users facet info resource type. + + :param value: If omitted defaults to "users_facet_info". Must be one of ["users_facet_info"]. + :type value: str + """ + + allowed_values = { + "users_facet_info", + } + USERS_FACET_INFO: ClassVar["FacetInfoResponseDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +FacetInfoResponseDataType.USERS_FACET_INFO = FacetInfoResponseDataType("users_facet_info") diff --git a/src/datadog_api_client/v2/model/get_mapping_response.py b/src/datadog_api_client/v2/model/get_mapping_response.py new file mode 100644 index 0000000000..8a09dcccb1 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_mapping_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_mapping_response_data import GetMappingResponseData + + +class GetMappingResponse(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_mapping_response_data import GetMappingResponseData + + return { + "data": (GetMappingResponseData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[GetMappingResponseData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: GetMappingResponseData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_mapping_response_data.py b/src/datadog_api_client/v2/model/get_mapping_response_data.py new file mode 100644 index 0000000000..7b6ec73641 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_mapping_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_mapping_response_data_attributes import GetMappingResponseDataAttributes + from datadog_api_client.v2.model.get_mapping_response_data_type import GetMappingResponseDataType + + +class GetMappingResponseData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_mapping_response_data_attributes import GetMappingResponseDataAttributes + from datadog_api_client.v2.model.get_mapping_response_data_type import GetMappingResponseDataType + + return { + "attributes": (GetMappingResponseDataAttributes,), + "id": (str,), + "type": (GetMappingResponseDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: GetMappingResponseDataType, + attributes: Union[GetMappingResponseDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: GetMappingResponseDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: Get mappings response resource type. + :type type: GetMappingResponseDataType + """ + 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_mapping_response_data_attributes.py b/src/datadog_api_client/v2/model/get_mapping_response_data_attributes.py new file mode 100644 index 0000000000..9d192025d4 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_mapping_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_mapping_response_data_attributes_attributes_items import ( + GetMappingResponseDataAttributesAttributesItems, + ) + + +class GetMappingResponseDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.get_mapping_response_data_attributes_attributes_items import ( + GetMappingResponseDataAttributesAttributesItems, + ) + + return { + "attributes": ([GetMappingResponseDataAttributesAttributesItems],), + } + + attribute_map = { + "attributes": "attributes", + } + + def __init__( + self_, attributes: Union[List[GetMappingResponseDataAttributesAttributesItems], UnsetType] = unset, **kwargs + ): + """ + + + :param attributes: + :type attributes: [GetMappingResponseDataAttributesAttributesItems], optional + """ + if attributes is not unset: + kwargs["attributes"] = attributes + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_mapping_response_data_attributes_attributes_items.py b/src/datadog_api_client/v2/model/get_mapping_response_data_attributes_attributes_items.py new file mode 100644 index 0000000000..15520bf671 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_mapping_response_data_attributes_attributes_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 List, Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class GetMappingResponseDataAttributesAttributesItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "attribute": (str,), + "description": (str,), + "display_name": (str,), + "groups": ([str],), + "is_custom": (bool,), + "type": (str,), + } + + attribute_map = { + "attribute": "attribute", + "description": "description", + "display_name": "display_name", + "groups": "groups", + "is_custom": "is_custom", + "type": "type", + } + + def __init__( + self_, + attribute: Union[str, UnsetType] = unset, + description: Union[str, UnsetType] = unset, + display_name: Union[str, UnsetType] = unset, + groups: Union[List[str], UnsetType] = unset, + is_custom: Union[bool, UnsetType] = unset, + type: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attribute: + :type attribute: str, optional + + :param description: + :type description: str, optional + + :param display_name: + :type display_name: str, optional + + :param groups: + :type groups: [str], optional + + :param is_custom: + :type is_custom: bool, optional + + :param type: + :type type: str, optional + """ + if attribute is not unset: + kwargs["attribute"] = attribute + if description is not unset: + kwargs["description"] = description + if display_name is not unset: + kwargs["display_name"] = display_name + if groups is not unset: + kwargs["groups"] = groups + if is_custom is not unset: + kwargs["is_custom"] = is_custom + if type is not unset: + kwargs["type"] = type + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/get_mapping_response_data_type.py b/src/datadog_api_client/v2/model/get_mapping_response_data_type.py new file mode 100644 index 0000000000..58f2b1c889 --- /dev/null +++ b/src/datadog_api_client/v2/model/get_mapping_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 GetMappingResponseDataType(ModelSimple): + """ + Get mappings response resource type. + + :param value: If omitted defaults to "get_mappings_response". Must be one of ["get_mappings_response"]. + :type value: str + """ + + allowed_values = { + "get_mappings_response", + } + GET_MAPPINGS_RESPONSE: ClassVar["GetMappingResponseDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +GetMappingResponseDataType.GET_MAPPINGS_RESPONSE = GetMappingResponseDataType("get_mappings_response") diff --git a/src/datadog_api_client/v2/model/list_connections_response.py b/src/datadog_api_client/v2/model/list_connections_response.py new file mode 100644 index 0000000000..dad8070b22 --- /dev/null +++ b/src/datadog_api_client/v2/model/list_connections_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.list_connections_response_data import ListConnectionsResponseData + + +class ListConnectionsResponse(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.list_connections_response_data import ListConnectionsResponseData + + return { + "data": (ListConnectionsResponseData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[ListConnectionsResponseData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: ListConnectionsResponseData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/list_connections_response_data.py b/src/datadog_api_client/v2/model/list_connections_response_data.py new file mode 100644 index 0000000000..2d648236ca --- /dev/null +++ b/src/datadog_api_client/v2/model/list_connections_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.list_connections_response_data_attributes import ( + ListConnectionsResponseDataAttributes, + ) + from datadog_api_client.v2.model.list_connections_response_data_type import ListConnectionsResponseDataType + + +class ListConnectionsResponseData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.list_connections_response_data_attributes import ( + ListConnectionsResponseDataAttributes, + ) + from datadog_api_client.v2.model.list_connections_response_data_type import ListConnectionsResponseDataType + + return { + "attributes": (ListConnectionsResponseDataAttributes,), + "id": (str,), + "type": (ListConnectionsResponseDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: ListConnectionsResponseDataType, + attributes: Union[ListConnectionsResponseDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: ListConnectionsResponseDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: List connections response resource type. + :type type: ListConnectionsResponseDataType + """ + 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/list_connections_response_data_attributes.py b/src/datadog_api_client/v2/model/list_connections_response_data_attributes.py new file mode 100644 index 0000000000..e3ccbb2391 --- /dev/null +++ b/src/datadog_api_client/v2/model/list_connections_response_data_attributes.py @@ -0,0 +1,50 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import 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.list_connections_response_data_attributes_connections_items import ( + ListConnectionsResponseDataAttributesConnectionsItems, + ) + + +class ListConnectionsResponseDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.list_connections_response_data_attributes_connections_items import ( + ListConnectionsResponseDataAttributesConnectionsItems, + ) + + return { + "connections": ([ListConnectionsResponseDataAttributesConnectionsItems],), + } + + attribute_map = { + "connections": "connections", + } + + def __init__( + self_, + connections: Union[List[ListConnectionsResponseDataAttributesConnectionsItems], UnsetType] = unset, + **kwargs, + ): + """ + + + :param connections: + :type connections: [ListConnectionsResponseDataAttributesConnectionsItems], optional + """ + if connections is not unset: + kwargs["connections"] = connections + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/list_connections_response_data_attributes_connections_items.py b/src/datadog_api_client/v2/model/list_connections_response_data_attributes_connections_items.py new file mode 100644 index 0000000000..f75e2f8146 --- /dev/null +++ b/src/datadog_api_client/v2/model/list_connections_response_data_attributes_connections_items.py @@ -0,0 +1,121 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import Dict, List, Union, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + datetime, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.create_connection_request_data_attributes_fields_items import ( + CreateConnectionRequestDataAttributesFieldsItems, + ) + from datadog_api_client.v2.model.list_connections_response_data_attributes_connections_items_join import ( + ListConnectionsResponseDataAttributesConnectionsItemsJoin, + ) + + +class ListConnectionsResponseDataAttributesConnectionsItems(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.create_connection_request_data_attributes_fields_items import ( + CreateConnectionRequestDataAttributesFieldsItems, + ) + from datadog_api_client.v2.model.list_connections_response_data_attributes_connections_items_join import ( + ListConnectionsResponseDataAttributesConnectionsItemsJoin, + ) + + return { + "created_at": (datetime,), + "created_by": (str,), + "fields": ([CreateConnectionRequestDataAttributesFieldsItems],), + "id": (str,), + "join": (ListConnectionsResponseDataAttributesConnectionsItemsJoin,), + "metadata": ({str: (str,)},), + "type": (str,), + "updated_at": (datetime,), + "updated_by": (str,), + } + + attribute_map = { + "created_at": "created_at", + "created_by": "created_by", + "fields": "fields", + "id": "id", + "join": "join", + "metadata": "metadata", + "type": "type", + "updated_at": "updated_at", + "updated_by": "updated_by", + } + + def __init__( + self_, + created_at: Union[datetime, UnsetType] = unset, + created_by: Union[str, UnsetType] = unset, + fields: Union[List[CreateConnectionRequestDataAttributesFieldsItems], UnsetType] = unset, + id: Union[str, UnsetType] = unset, + join: Union[ListConnectionsResponseDataAttributesConnectionsItemsJoin, UnsetType] = unset, + metadata: Union[Dict[str, str], UnsetType] = unset, + type: Union[str, UnsetType] = unset, + updated_at: Union[datetime, UnsetType] = unset, + updated_by: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param created_at: + :type created_at: datetime, optional + + :param created_by: + :type created_by: str, optional + + :param fields: + :type fields: [CreateConnectionRequestDataAttributesFieldsItems], optional + + :param id: + :type id: str, optional + + :param join: + :type join: ListConnectionsResponseDataAttributesConnectionsItemsJoin, optional + + :param metadata: + :type metadata: {str: (str,)}, optional + + :param type: + :type type: str, optional + + :param updated_at: + :type updated_at: datetime, optional + + :param updated_by: + :type updated_by: str, optional + """ + if created_at is not unset: + kwargs["created_at"] = created_at + if created_by is not unset: + kwargs["created_by"] = created_by + if fields is not unset: + kwargs["fields"] = fields + if id is not unset: + kwargs["id"] = id + if join is not unset: + kwargs["join"] = join + if metadata is not unset: + kwargs["metadata"] = metadata + if type is not unset: + kwargs["type"] = type + if updated_at is not unset: + kwargs["updated_at"] = updated_at + if updated_by is not unset: + kwargs["updated_by"] = updated_by + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/list_connections_response_data_attributes_connections_items_join.py b/src/datadog_api_client/v2/model/list_connections_response_data_attributes_connections_items_join.py new file mode 100644 index 0000000000..015a133e4b --- /dev/null +++ b/src/datadog_api_client/v2/model/list_connections_response_data_attributes_connections_items_join.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 ListConnectionsResponseDataAttributesConnectionsItemsJoin(ModelNormal): + @cached_property + def openapi_types(_): + return { + "attribute": (str,), + "type": (str,), + } + + attribute_map = { + "attribute": "attribute", + "type": "type", + } + + def __init__(self_, attribute: Union[str, UnsetType] = unset, type: Union[str, UnsetType] = unset, **kwargs): + """ + + + :param attribute: + :type attribute: str, optional + + :param type: + :type type: str, optional + """ + if attribute is not unset: + kwargs["attribute"] = attribute + if type is not unset: + kwargs["type"] = type + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/list_connections_response_data_type.py b/src/datadog_api_client/v2/model/list_connections_response_data_type.py new file mode 100644 index 0000000000..ee0cf682ae --- /dev/null +++ b/src/datadog_api_client/v2/model/list_connections_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 ListConnectionsResponseDataType(ModelSimple): + """ + List connections response resource type. + + :param value: If omitted defaults to "list_connections_response". Must be one of ["list_connections_response"]. + :type value: str + """ + + allowed_values = { + "list_connections_response", + } + LIST_CONNECTIONS_RESPONSE: ClassVar["ListConnectionsResponseDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +ListConnectionsResponseDataType.LIST_CONNECTIONS_RESPONSE = ListConnectionsResponseDataType("list_connections_response") diff --git a/src/datadog_api_client/v2/model/query_account_request.py b/src/datadog_api_client/v2/model/query_account_request.py new file mode 100644 index 0000000000..584e285973 --- /dev/null +++ b/src/datadog_api_client/v2/model/query_account_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.query_account_request_data import QueryAccountRequestData + + +class QueryAccountRequest(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.query_account_request_data import QueryAccountRequestData + + return { + "data": (QueryAccountRequestData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[QueryAccountRequestData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: QueryAccountRequestData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/query_account_request_data.py b/src/datadog_api_client/v2/model/query_account_request_data.py new file mode 100644 index 0000000000..fdab7735c2 --- /dev/null +++ b/src/datadog_api_client/v2/model/query_account_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.query_account_request_data_attributes import QueryAccountRequestDataAttributes + from datadog_api_client.v2.model.query_account_request_data_type import QueryAccountRequestDataType + + +class QueryAccountRequestData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.query_account_request_data_attributes import QueryAccountRequestDataAttributes + from datadog_api_client.v2.model.query_account_request_data_type import QueryAccountRequestDataType + + return { + "attributes": (QueryAccountRequestDataAttributes,), + "id": (str,), + "type": (QueryAccountRequestDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: QueryAccountRequestDataType, + attributes: Union[QueryAccountRequestDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: QueryAccountRequestDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: Query account request resource type. + :type type: QueryAccountRequestDataType + """ + 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/query_account_request_data_attributes.py b/src/datadog_api_client/v2/model/query_account_request_data_attributes.py new file mode 100644 index 0000000000..62e0e7e072 --- /dev/null +++ b/src/datadog_api_client/v2/model/query_account_request_data_attributes.py @@ -0,0 +1,82 @@ +# 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.query_account_request_data_attributes_sort import ( + QueryAccountRequestDataAttributesSort, + ) + + +class QueryAccountRequestDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.query_account_request_data_attributes_sort import ( + QueryAccountRequestDataAttributesSort, + ) + + return { + "limit": (int,), + "query": (str,), + "select_columns": ([str],), + "sort": (QueryAccountRequestDataAttributesSort,), + "wildcard_search_term": (str,), + } + + attribute_map = { + "limit": "limit", + "query": "query", + "select_columns": "select_columns", + "sort": "sort", + "wildcard_search_term": "wildcard_search_term", + } + + def __init__( + self_, + limit: Union[int, UnsetType] = unset, + query: Union[str, UnsetType] = unset, + select_columns: Union[List[str], UnsetType] = unset, + sort: Union[QueryAccountRequestDataAttributesSort, UnsetType] = unset, + wildcard_search_term: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param limit: + :type limit: int, optional + + :param query: + :type query: str, optional + + :param select_columns: + :type select_columns: [str], optional + + :param sort: + :type sort: QueryAccountRequestDataAttributesSort, optional + + :param wildcard_search_term: + :type wildcard_search_term: str, optional + """ + if limit is not unset: + kwargs["limit"] = limit + if query is not unset: + kwargs["query"] = query + if select_columns is not unset: + kwargs["select_columns"] = select_columns + if sort is not unset: + kwargs["sort"] = sort + if wildcard_search_term is not unset: + kwargs["wildcard_search_term"] = wildcard_search_term + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/query_account_request_data_attributes_sort.py b/src/datadog_api_client/v2/model/query_account_request_data_attributes_sort.py new file mode 100644 index 0000000000..1b4f7b0185 --- /dev/null +++ b/src/datadog_api_client/v2/model/query_account_request_data_attributes_sort.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 QueryAccountRequestDataAttributesSort(ModelNormal): + @cached_property + def openapi_types(_): + return { + "field": (str,), + "order": (str,), + } + + attribute_map = { + "field": "field", + "order": "order", + } + + def __init__(self_, field: Union[str, UnsetType] = unset, order: Union[str, UnsetType] = unset, **kwargs): + """ + + + :param field: + :type field: str, optional + + :param order: + :type order: str, optional + """ + if field is not unset: + kwargs["field"] = field + if order is not unset: + kwargs["order"] = order + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/query_account_request_data_type.py b/src/datadog_api_client/v2/model/query_account_request_data_type.py new file mode 100644 index 0000000000..08631a8475 --- /dev/null +++ b/src/datadog_api_client/v2/model/query_account_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 QueryAccountRequestDataType(ModelSimple): + """ + Query account request resource type. + + :param value: If omitted defaults to "query_account_request". Must be one of ["query_account_request"]. + :type value: str + """ + + allowed_values = { + "query_account_request", + } + QUERY_ACCOUNT_REQUEST: ClassVar["QueryAccountRequestDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +QueryAccountRequestDataType.QUERY_ACCOUNT_REQUEST = QueryAccountRequestDataType("query_account_request") diff --git a/src/datadog_api_client/v2/model/query_event_filtered_users_request.py b/src/datadog_api_client/v2/model/query_event_filtered_users_request.py new file mode 100644 index 0000000000..07d8dd69f8 --- /dev/null +++ b/src/datadog_api_client/v2/model/query_event_filtered_users_request.py @@ -0,0 +1,44 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from 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.query_event_filtered_users_request_data import QueryEventFilteredUsersRequestData + + +class QueryEventFilteredUsersRequest(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.query_event_filtered_users_request_data import ( + QueryEventFilteredUsersRequestData, + ) + + return { + "data": (QueryEventFilteredUsersRequestData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[QueryEventFilteredUsersRequestData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: QueryEventFilteredUsersRequestData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/query_event_filtered_users_request_data.py b/src/datadog_api_client/v2/model/query_event_filtered_users_request_data.py new file mode 100644 index 0000000000..5398416e21 --- /dev/null +++ b/src/datadog_api_client/v2/model/query_event_filtered_users_request_data.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, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.query_event_filtered_users_request_data_attributes import ( + QueryEventFilteredUsersRequestDataAttributes, + ) + from datadog_api_client.v2.model.query_event_filtered_users_request_data_type import ( + QueryEventFilteredUsersRequestDataType, + ) + + +class QueryEventFilteredUsersRequestData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.query_event_filtered_users_request_data_attributes import ( + QueryEventFilteredUsersRequestDataAttributes, + ) + from datadog_api_client.v2.model.query_event_filtered_users_request_data_type import ( + QueryEventFilteredUsersRequestDataType, + ) + + return { + "attributes": (QueryEventFilteredUsersRequestDataAttributes,), + "id": (str,), + "type": (QueryEventFilteredUsersRequestDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: QueryEventFilteredUsersRequestDataType, + attributes: Union[QueryEventFilteredUsersRequestDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: QueryEventFilteredUsersRequestDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: Query event filtered users request resource type. + :type type: QueryEventFilteredUsersRequestDataType + """ + 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/query_event_filtered_users_request_data_attributes.py b/src/datadog_api_client/v2/model/query_event_filtered_users_request_data_attributes.py new file mode 100644 index 0000000000..8de65aa343 --- /dev/null +++ b/src/datadog_api_client/v2/model/query_event_filtered_users_request_data_attributes.py @@ -0,0 +1,82 @@ +# 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.query_event_filtered_users_request_data_attributes_event_query import ( + QueryEventFilteredUsersRequestDataAttributesEventQuery, + ) + + +class QueryEventFilteredUsersRequestDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.query_event_filtered_users_request_data_attributes_event_query import ( + QueryEventFilteredUsersRequestDataAttributesEventQuery, + ) + + return { + "event_query": (QueryEventFilteredUsersRequestDataAttributesEventQuery,), + "include_row_count": (bool,), + "limit": (int,), + "query": (str,), + "select_columns": ([str],), + } + + attribute_map = { + "event_query": "event_query", + "include_row_count": "include_row_count", + "limit": "limit", + "query": "query", + "select_columns": "select_columns", + } + + def __init__( + self_, + event_query: Union[QueryEventFilteredUsersRequestDataAttributesEventQuery, UnsetType] = unset, + include_row_count: Union[bool, UnsetType] = unset, + limit: Union[int, UnsetType] = unset, + query: Union[str, UnsetType] = unset, + select_columns: Union[List[str], UnsetType] = unset, + **kwargs, + ): + """ + + + :param event_query: + :type event_query: QueryEventFilteredUsersRequestDataAttributesEventQuery, optional + + :param include_row_count: + :type include_row_count: bool, optional + + :param limit: + :type limit: int, optional + + :param query: + :type query: str, optional + + :param select_columns: + :type select_columns: [str], optional + """ + if event_query is not unset: + kwargs["event_query"] = event_query + if include_row_count is not unset: + kwargs["include_row_count"] = include_row_count + if limit is not unset: + kwargs["limit"] = limit + if query is not unset: + kwargs["query"] = query + if select_columns is not unset: + kwargs["select_columns"] = select_columns + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/query_event_filtered_users_request_data_attributes_event_query.py b/src/datadog_api_client/v2/model/query_event_filtered_users_request_data_attributes_event_query.py new file mode 100644 index 0000000000..a707cbc526 --- /dev/null +++ b/src/datadog_api_client/v2/model/query_event_filtered_users_request_data_attributes_event_query.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 Union, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.query_event_filtered_users_request_data_attributes_event_query_time_frame import ( + QueryEventFilteredUsersRequestDataAttributesEventQueryTimeFrame, + ) + + +class QueryEventFilteredUsersRequestDataAttributesEventQuery(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.query_event_filtered_users_request_data_attributes_event_query_time_frame import ( + QueryEventFilteredUsersRequestDataAttributesEventQueryTimeFrame, + ) + + return { + "query": (str,), + "time_frame": (QueryEventFilteredUsersRequestDataAttributesEventQueryTimeFrame,), + } + + attribute_map = { + "query": "query", + "time_frame": "time_frame", + } + + def __init__( + self_, + query: Union[str, UnsetType] = unset, + time_frame: Union[QueryEventFilteredUsersRequestDataAttributesEventQueryTimeFrame, UnsetType] = unset, + **kwargs, + ): + """ + + + :param query: + :type query: str, optional + + :param time_frame: + :type time_frame: QueryEventFilteredUsersRequestDataAttributesEventQueryTimeFrame, optional + """ + if query is not unset: + kwargs["query"] = query + if time_frame is not unset: + kwargs["time_frame"] = time_frame + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/query_event_filtered_users_request_data_attributes_event_query_time_frame.py b/src/datadog_api_client/v2/model/query_event_filtered_users_request_data_attributes_event_query_time_frame.py new file mode 100644 index 0000000000..83d64cef92 --- /dev/null +++ b/src/datadog_api_client/v2/model/query_event_filtered_users_request_data_attributes_event_query_time_frame.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 QueryEventFilteredUsersRequestDataAttributesEventQueryTimeFrame(ModelNormal): + @cached_property + def openapi_types(_): + return { + "end": (int,), + "start": (int,), + } + + attribute_map = { + "end": "end", + "start": "start", + } + + def __init__(self_, end: Union[int, UnsetType] = unset, start: Union[int, UnsetType] = unset, **kwargs): + """ + + + :param end: + :type end: int, optional + + :param start: + :type start: int, optional + """ + if end is not unset: + kwargs["end"] = end + if start is not unset: + kwargs["start"] = start + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/query_event_filtered_users_request_data_type.py b/src/datadog_api_client/v2/model/query_event_filtered_users_request_data_type.py new file mode 100644 index 0000000000..19b7a119d6 --- /dev/null +++ b/src/datadog_api_client/v2/model/query_event_filtered_users_request_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 QueryEventFilteredUsersRequestDataType(ModelSimple): + """ + Query event filtered users request resource type. + + :param value: If omitted defaults to "query_event_filtered_users_request". Must be one of ["query_event_filtered_users_request"]. + :type value: str + """ + + allowed_values = { + "query_event_filtered_users_request", + } + QUERY_EVENT_FILTERED_USERS_REQUEST: ClassVar["QueryEventFilteredUsersRequestDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +QueryEventFilteredUsersRequestDataType.QUERY_EVENT_FILTERED_USERS_REQUEST = QueryEventFilteredUsersRequestDataType( + "query_event_filtered_users_request" +) diff --git a/src/datadog_api_client/v2/model/query_response.py b/src/datadog_api_client/v2/model/query_response.py new file mode 100644 index 0000000000..d9e2a68409 --- /dev/null +++ b/src/datadog_api_client/v2/model/query_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.query_response_data import QueryResponseData + + +class QueryResponse(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.query_response_data import QueryResponseData + + return { + "data": (QueryResponseData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[QueryResponseData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: QueryResponseData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/query_response_data.py b/src/datadog_api_client/v2/model/query_response_data.py new file mode 100644 index 0000000000..15af73293b --- /dev/null +++ b/src/datadog_api_client/v2/model/query_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.query_response_data_attributes import QueryResponseDataAttributes + from datadog_api_client.v2.model.query_response_data_type import QueryResponseDataType + + +class QueryResponseData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.query_response_data_attributes import QueryResponseDataAttributes + from datadog_api_client.v2.model.query_response_data_type import QueryResponseDataType + + return { + "attributes": (QueryResponseDataAttributes,), + "id": (str,), + "type": (QueryResponseDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: QueryResponseDataType, + attributes: Union[QueryResponseDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: QueryResponseDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: Query response resource type. + :type type: QueryResponseDataType + """ + 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/query_response_data_attributes.py b/src/datadog_api_client/v2/model/query_response_data_attributes.py new file mode 100644 index 0000000000..76116c520a --- /dev/null +++ b/src/datadog_api_client/v2/model/query_response_data_attributes.py @@ -0,0 +1,47 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import Any, List, Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + date, + datetime, + none_type, + unset, + UnsetType, + UUID, +) + + +class QueryResponseDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + return { + "hits": ([bool, date, datetime, dict, float, int, list, str, UUID, none_type],), + "total": (int,), + } + + attribute_map = { + "hits": "hits", + "total": "total", + } + + def __init__(self_, hits: Union[List[Any], UnsetType] = unset, total: Union[int, UnsetType] = unset, **kwargs): + """ + + + :param hits: + :type hits: [bool, date, datetime, dict, float, int, list, str, UUID, none_type], optional + + :param total: + :type total: int, optional + """ + if hits is not unset: + kwargs["hits"] = hits + if total is not unset: + kwargs["total"] = total + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/query_response_data_type.py b/src/datadog_api_client/v2/model/query_response_data_type.py new file mode 100644 index 0000000000..d8e43dd0c3 --- /dev/null +++ b/src/datadog_api_client/v2/model/query_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 QueryResponseDataType(ModelSimple): + """ + Query response resource type. + + :param value: If omitted defaults to "query_response". Must be one of ["query_response"]. + :type value: str + """ + + allowed_values = { + "query_response", + } + QUERY_RESPONSE: ClassVar["QueryResponseDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +QueryResponseDataType.QUERY_RESPONSE = QueryResponseDataType("query_response") diff --git a/src/datadog_api_client/v2/model/query_users_request.py b/src/datadog_api_client/v2/model/query_users_request.py new file mode 100644 index 0000000000..f579f8a6d9 --- /dev/null +++ b/src/datadog_api_client/v2/model/query_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.query_users_request_data import QueryUsersRequestData + + +class QueryUsersRequest(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.query_users_request_data import QueryUsersRequestData + + return { + "data": (QueryUsersRequestData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[QueryUsersRequestData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: QueryUsersRequestData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/query_users_request_data.py b/src/datadog_api_client/v2/model/query_users_request_data.py new file mode 100644 index 0000000000..49cb426cf1 --- /dev/null +++ b/src/datadog_api_client/v2/model/query_users_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.query_users_request_data_attributes import QueryUsersRequestDataAttributes + from datadog_api_client.v2.model.query_users_request_data_type import QueryUsersRequestDataType + + +class QueryUsersRequestData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.query_users_request_data_attributes import QueryUsersRequestDataAttributes + from datadog_api_client.v2.model.query_users_request_data_type import QueryUsersRequestDataType + + return { + "attributes": (QueryUsersRequestDataAttributes,), + "id": (str,), + "type": (QueryUsersRequestDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + type: QueryUsersRequestDataType, + attributes: Union[QueryUsersRequestDataAttributes, UnsetType] = unset, + id: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: QueryUsersRequestDataAttributes, optional + + :param id: + :type id: str, optional + + :param type: Query users request resource type. + :type type: QueryUsersRequestDataType + """ + 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/query_users_request_data_attributes.py b/src/datadog_api_client/v2/model/query_users_request_data_attributes.py new file mode 100644 index 0000000000..4af164f201 --- /dev/null +++ b/src/datadog_api_client/v2/model/query_users_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 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.query_users_request_data_attributes_sort import QueryUsersRequestDataAttributesSort + + +class QueryUsersRequestDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.query_users_request_data_attributes_sort import ( + QueryUsersRequestDataAttributesSort, + ) + + return { + "limit": (int,), + "query": (str,), + "select_columns": ([str],), + "sort": (QueryUsersRequestDataAttributesSort,), + "wildcard_search_term": (str,), + } + + attribute_map = { + "limit": "limit", + "query": "query", + "select_columns": "select_columns", + "sort": "sort", + "wildcard_search_term": "wildcard_search_term", + } + + def __init__( + self_, + limit: Union[int, UnsetType] = unset, + query: Union[str, UnsetType] = unset, + select_columns: Union[List[str], UnsetType] = unset, + sort: Union[QueryUsersRequestDataAttributesSort, UnsetType] = unset, + wildcard_search_term: Union[str, UnsetType] = unset, + **kwargs, + ): + """ + + + :param limit: + :type limit: int, optional + + :param query: + :type query: str, optional + + :param select_columns: + :type select_columns: [str], optional + + :param sort: + :type sort: QueryUsersRequestDataAttributesSort, optional + + :param wildcard_search_term: + :type wildcard_search_term: str, optional + """ + if limit is not unset: + kwargs["limit"] = limit + if query is not unset: + kwargs["query"] = query + if select_columns is not unset: + kwargs["select_columns"] = select_columns + if sort is not unset: + kwargs["sort"] = sort + if wildcard_search_term is not unset: + kwargs["wildcard_search_term"] = wildcard_search_term + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/query_users_request_data_attributes_sort.py b/src/datadog_api_client/v2/model/query_users_request_data_attributes_sort.py new file mode 100644 index 0000000000..5f8c27acbe --- /dev/null +++ b/src/datadog_api_client/v2/model/query_users_request_data_attributes_sort.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 QueryUsersRequestDataAttributesSort(ModelNormal): + @cached_property + def openapi_types(_): + return { + "field": (str,), + "order": (str,), + } + + attribute_map = { + "field": "field", + "order": "order", + } + + def __init__(self_, field: Union[str, UnsetType] = unset, order: Union[str, UnsetType] = unset, **kwargs): + """ + + + :param field: + :type field: str, optional + + :param order: + :type order: str, optional + """ + if field is not unset: + kwargs["field"] = field + if order is not unset: + kwargs["order"] = order + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/query_users_request_data_type.py b/src/datadog_api_client/v2/model/query_users_request_data_type.py new file mode 100644 index 0000000000..bf21201b4e --- /dev/null +++ b/src/datadog_api_client/v2/model/query_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 QueryUsersRequestDataType(ModelSimple): + """ + Query users request resource type. + + :param value: If omitted defaults to "query_users_request". Must be one of ["query_users_request"]. + :type value: str + """ + + allowed_values = { + "query_users_request", + } + QUERY_USERS_REQUEST: ClassVar["QueryUsersRequestDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +QueryUsersRequestDataType.QUERY_USERS_REQUEST = QueryUsersRequestDataType("query_users_request") diff --git a/src/datadog_api_client/v2/model/update_connection_request.py b/src/datadog_api_client/v2/model/update_connection_request.py new file mode 100644 index 0000000000..b948aa8011 --- /dev/null +++ b/src/datadog_api_client/v2/model/update_connection_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.update_connection_request_data import UpdateConnectionRequestData + + +class UpdateConnectionRequest(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.update_connection_request_data import UpdateConnectionRequestData + + return { + "data": (UpdateConnectionRequestData,), + } + + attribute_map = { + "data": "data", + } + + def __init__(self_, data: Union[UpdateConnectionRequestData, UnsetType] = unset, **kwargs): + """ + + + :param data: + :type data: UpdateConnectionRequestData, optional + """ + if data is not unset: + kwargs["data"] = data + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/update_connection_request_data.py b/src/datadog_api_client/v2/model/update_connection_request_data.py new file mode 100644 index 0000000000..381d878fb2 --- /dev/null +++ b/src/datadog_api_client/v2/model/update_connection_request_data.py @@ -0,0 +1,67 @@ +# 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.update_connection_request_data_attributes import ( + UpdateConnectionRequestDataAttributes, + ) + from datadog_api_client.v2.model.update_connection_request_data_type import UpdateConnectionRequestDataType + + +class UpdateConnectionRequestData(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.update_connection_request_data_attributes import ( + UpdateConnectionRequestDataAttributes, + ) + from datadog_api_client.v2.model.update_connection_request_data_type import UpdateConnectionRequestDataType + + return { + "attributes": (UpdateConnectionRequestDataAttributes,), + "id": (str,), + "type": (UpdateConnectionRequestDataType,), + } + + attribute_map = { + "attributes": "attributes", + "id": "id", + "type": "type", + } + + def __init__( + self_, + id: str, + type: UpdateConnectionRequestDataType, + attributes: Union[UpdateConnectionRequestDataAttributes, UnsetType] = unset, + **kwargs, + ): + """ + + + :param attributes: + :type attributes: UpdateConnectionRequestDataAttributes, optional + + :param id: + :type id: str + + :param type: Connection id resource type. + :type type: UpdateConnectionRequestDataType + """ + if attributes is not unset: + kwargs["attributes"] = attributes + super().__init__(kwargs) + + self_.id = id + self_.type = type diff --git a/src/datadog_api_client/v2/model/update_connection_request_data_attributes.py b/src/datadog_api_client/v2/model/update_connection_request_data_attributes.py new file mode 100644 index 0000000000..c16da63b31 --- /dev/null +++ b/src/datadog_api_client/v2/model/update_connection_request_data_attributes.py @@ -0,0 +1,72 @@ +# Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2019-Present Datadog, Inc. +from __future__ import annotations + +from typing import List, Union, TYPE_CHECKING + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +if TYPE_CHECKING: + from datadog_api_client.v2.model.create_connection_request_data_attributes_fields_items import ( + CreateConnectionRequestDataAttributesFieldsItems, + ) + from datadog_api_client.v2.model.update_connection_request_data_attributes_fields_to_update_items import ( + UpdateConnectionRequestDataAttributesFieldsToUpdateItems, + ) + + +class UpdateConnectionRequestDataAttributes(ModelNormal): + @cached_property + def openapi_types(_): + from datadog_api_client.v2.model.create_connection_request_data_attributes_fields_items import ( + CreateConnectionRequestDataAttributesFieldsItems, + ) + from datadog_api_client.v2.model.update_connection_request_data_attributes_fields_to_update_items import ( + UpdateConnectionRequestDataAttributesFieldsToUpdateItems, + ) + + return { + "fields_to_add": ([CreateConnectionRequestDataAttributesFieldsItems],), + "fields_to_delete": ([str],), + "fields_to_update": ([UpdateConnectionRequestDataAttributesFieldsToUpdateItems],), + } + + attribute_map = { + "fields_to_add": "fields_to_add", + "fields_to_delete": "fields_to_delete", + "fields_to_update": "fields_to_update", + } + + def __init__( + self_, + fields_to_add: Union[List[CreateConnectionRequestDataAttributesFieldsItems], UnsetType] = unset, + fields_to_delete: Union[List[str], UnsetType] = unset, + fields_to_update: Union[List[UpdateConnectionRequestDataAttributesFieldsToUpdateItems], UnsetType] = unset, + **kwargs, + ): + """ + + + :param fields_to_add: + :type fields_to_add: [CreateConnectionRequestDataAttributesFieldsItems], optional + + :param fields_to_delete: + :type fields_to_delete: [str], optional + + :param fields_to_update: + :type fields_to_update: [UpdateConnectionRequestDataAttributesFieldsToUpdateItems], optional + """ + if fields_to_add is not unset: + kwargs["fields_to_add"] = fields_to_add + if fields_to_delete is not unset: + kwargs["fields_to_delete"] = fields_to_delete + if fields_to_update is not unset: + kwargs["fields_to_update"] = fields_to_update + super().__init__(kwargs) diff --git a/src/datadog_api_client/v2/model/update_connection_request_data_attributes_fields_to_update_items.py b/src/datadog_api_client/v2/model/update_connection_request_data_attributes_fields_to_update_items.py new file mode 100644 index 0000000000..9e997e267c --- /dev/null +++ b/src/datadog_api_client/v2/model/update_connection_request_data_attributes_fields_to_update_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 List, Union + +from datadog_api_client.model_utils import ( + ModelNormal, + cached_property, + unset, + UnsetType, +) + + +class UpdateConnectionRequestDataAttributesFieldsToUpdateItems(ModelNormal): + @cached_property + def openapi_types(_): + return { + "field_id": (str,), + "updated_description": (str,), + "updated_display_name": (str,), + "updated_field_id": (str,), + "updated_groups": ([str],), + } + + attribute_map = { + "field_id": "field_id", + "updated_description": "updated_description", + "updated_display_name": "updated_display_name", + "updated_field_id": "updated_field_id", + "updated_groups": "updated_groups", + } + + def __init__( + self_, + field_id: str, + updated_description: Union[str, UnsetType] = unset, + updated_display_name: Union[str, UnsetType] = unset, + updated_field_id: Union[str, UnsetType] = unset, + updated_groups: Union[List[str], UnsetType] = unset, + **kwargs, + ): + """ + + + :param field_id: + :type field_id: str + + :param updated_description: + :type updated_description: str, optional + + :param updated_display_name: + :type updated_display_name: str, optional + + :param updated_field_id: + :type updated_field_id: str, optional + + :param updated_groups: + :type updated_groups: [str], optional + """ + if updated_description is not unset: + kwargs["updated_description"] = updated_description + if updated_display_name is not unset: + kwargs["updated_display_name"] = updated_display_name + if updated_field_id is not unset: + kwargs["updated_field_id"] = updated_field_id + if updated_groups is not unset: + kwargs["updated_groups"] = updated_groups + super().__init__(kwargs) + + self_.field_id = field_id diff --git a/src/datadog_api_client/v2/model/update_connection_request_data_type.py b/src/datadog_api_client/v2/model/update_connection_request_data_type.py new file mode 100644 index 0000000000..d43d38b3da --- /dev/null +++ b/src/datadog_api_client/v2/model/update_connection_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 UpdateConnectionRequestDataType(ModelSimple): + """ + Connection id resource type. + + :param value: If omitted defaults to "connection_id". Must be one of ["connection_id"]. + :type value: str + """ + + allowed_values = { + "connection_id", + } + CONNECTION_ID: ClassVar["UpdateConnectionRequestDataType"] + + @cached_property + def openapi_types(_): + return { + "value": (str,), + } + + +UpdateConnectionRequestDataType.CONNECTION_ID = UpdateConnectionRequestDataType("connection_id") diff --git a/src/datadog_api_client/v2/models/__init__.py b/src/datadog_api_client/v2/models/__init__.py index c9785208a8..f1dee35b8f 100644 --- a/src/datadog_api_client/v2/models/__init__.py +++ b/src/datadog_api_client/v2/models/__init__.py @@ -937,6 +937,12 @@ ) from datadog_api_client.v2.model.create_apps_datastore_response import CreateAppsDatastoreResponse from datadog_api_client.v2.model.create_apps_datastore_response_data import CreateAppsDatastoreResponseData +from datadog_api_client.v2.model.create_connection_request import CreateConnectionRequest +from datadog_api_client.v2.model.create_connection_request_data import CreateConnectionRequestData +from datadog_api_client.v2.model.create_connection_request_data_attributes import CreateConnectionRequestDataAttributes +from datadog_api_client.v2.model.create_connection_request_data_attributes_fields_items import ( + CreateConnectionRequestDataAttributesFieldsItems, +) from datadog_api_client.v2.model.create_custom_framework_request import CreateCustomFrameworkRequest from datadog_api_client.v2.model.create_custom_framework_response import CreateCustomFrameworkResponse from datadog_api_client.v2.model.create_data_deletion_request_body import CreateDataDeletionRequestBody @@ -1608,6 +1614,25 @@ from datadog_api_client.v2.model.events_sort_type import EventsSortType from datadog_api_client.v2.model.events_timeseries_query import EventsTimeseriesQuery from datadog_api_client.v2.model.events_warning import EventsWarning +from datadog_api_client.v2.model.facet_info_request import FacetInfoRequest +from datadog_api_client.v2.model.facet_info_request_data import FacetInfoRequestData +from datadog_api_client.v2.model.facet_info_request_data_attributes import FacetInfoRequestDataAttributes +from datadog_api_client.v2.model.facet_info_request_data_attributes_search import FacetInfoRequestDataAttributesSearch +from datadog_api_client.v2.model.facet_info_request_data_attributes_term_search import ( + FacetInfoRequestDataAttributesTermSearch, +) +from datadog_api_client.v2.model.facet_info_request_data_type import FacetInfoRequestDataType +from datadog_api_client.v2.model.facet_info_response import FacetInfoResponse +from datadog_api_client.v2.model.facet_info_response_data import FacetInfoResponseData +from datadog_api_client.v2.model.facet_info_response_data_attributes import FacetInfoResponseDataAttributes +from datadog_api_client.v2.model.facet_info_response_data_attributes_result import FacetInfoResponseDataAttributesResult +from datadog_api_client.v2.model.facet_info_response_data_attributes_result_range import ( + FacetInfoResponseDataAttributesResultRange, +) +from datadog_api_client.v2.model.facet_info_response_data_attributes_result_values_items import ( + FacetInfoResponseDataAttributesResultValuesItems, +) +from datadog_api_client.v2.model.facet_info_response_data_type import FacetInfoResponseDataType from datadog_api_client.v2.model.fastly_api_key import FastlyAPIKey from datadog_api_client.v2.model.fastly_api_key_type import FastlyAPIKeyType from datadog_api_client.v2.model.fastly_api_key_update import FastlyAPIKeyUpdate @@ -1768,6 +1793,13 @@ from datadog_api_client.v2.model.get_interfaces_data import GetInterfacesData from datadog_api_client.v2.model.get_interfaces_response import GetInterfacesResponse from datadog_api_client.v2.model.get_issue_include_query_parameter_item import GetIssueIncludeQueryParameterItem +from datadog_api_client.v2.model.get_mapping_response import GetMappingResponse +from datadog_api_client.v2.model.get_mapping_response_data import GetMappingResponseData +from datadog_api_client.v2.model.get_mapping_response_data_attributes import GetMappingResponseDataAttributes +from datadog_api_client.v2.model.get_mapping_response_data_attributes_attributes_items import ( + GetMappingResponseDataAttributesAttributesItems, +) +from datadog_api_client.v2.model.get_mapping_response_data_type import GetMappingResponseDataType from datadog_api_client.v2.model.get_multiple_rulesets_request import GetMultipleRulesetsRequest from datadog_api_client.v2.model.get_multiple_rulesets_request_data import GetMultipleRulesetsRequestData from datadog_api_client.v2.model.get_multiple_rulesets_request_data_attributes import ( @@ -2235,6 +2267,16 @@ from datadog_api_client.v2.model.list_apps_response_meta import ListAppsResponseMeta from datadog_api_client.v2.model.list_apps_response_meta_page import ListAppsResponseMetaPage from datadog_api_client.v2.model.list_assets_sbo_ms_response import ListAssetsSBOMsResponse +from datadog_api_client.v2.model.list_connections_response import ListConnectionsResponse +from datadog_api_client.v2.model.list_connections_response_data import ListConnectionsResponseData +from datadog_api_client.v2.model.list_connections_response_data_attributes import ListConnectionsResponseDataAttributes +from datadog_api_client.v2.model.list_connections_response_data_attributes_connections_items import ( + ListConnectionsResponseDataAttributesConnectionsItems, +) +from datadog_api_client.v2.model.list_connections_response_data_attributes_connections_items_join import ( + ListConnectionsResponseDataAttributesConnectionsItemsJoin, +) +from datadog_api_client.v2.model.list_connections_response_data_type import ListConnectionsResponseDataType from datadog_api_client.v2.model.list_devices_response import ListDevicesResponse from datadog_api_client.v2.model.list_devices_response_metadata import ListDevicesResponseMetadata from datadog_api_client.v2.model.list_devices_response_metadata_page import ListDevicesResponseMetadataPage @@ -3411,8 +3453,36 @@ from datadog_api_client.v2.model.put_apps_datastore_item_response_data import PutAppsDatastoreItemResponseData from datadog_api_client.v2.model.put_incident_notification_rule_request import PutIncidentNotificationRuleRequest from datadog_api_client.v2.model.query import Query +from datadog_api_client.v2.model.query_account_request import QueryAccountRequest +from datadog_api_client.v2.model.query_account_request_data import QueryAccountRequestData +from datadog_api_client.v2.model.query_account_request_data_attributes import QueryAccountRequestDataAttributes +from datadog_api_client.v2.model.query_account_request_data_attributes_sort import QueryAccountRequestDataAttributesSort +from datadog_api_client.v2.model.query_account_request_data_type import QueryAccountRequestDataType +from datadog_api_client.v2.model.query_event_filtered_users_request import QueryEventFilteredUsersRequest +from datadog_api_client.v2.model.query_event_filtered_users_request_data import QueryEventFilteredUsersRequestData +from datadog_api_client.v2.model.query_event_filtered_users_request_data_attributes import ( + QueryEventFilteredUsersRequestDataAttributes, +) +from datadog_api_client.v2.model.query_event_filtered_users_request_data_attributes_event_query import ( + QueryEventFilteredUsersRequestDataAttributesEventQuery, +) +from datadog_api_client.v2.model.query_event_filtered_users_request_data_attributes_event_query_time_frame import ( + QueryEventFilteredUsersRequestDataAttributesEventQueryTimeFrame, +) +from datadog_api_client.v2.model.query_event_filtered_users_request_data_type import ( + QueryEventFilteredUsersRequestDataType, +) from datadog_api_client.v2.model.query_formula import QueryFormula +from datadog_api_client.v2.model.query_response import QueryResponse +from datadog_api_client.v2.model.query_response_data import QueryResponseData +from datadog_api_client.v2.model.query_response_data_attributes import QueryResponseDataAttributes +from datadog_api_client.v2.model.query_response_data_type import QueryResponseDataType from datadog_api_client.v2.model.query_sort_order import QuerySortOrder +from datadog_api_client.v2.model.query_users_request import QueryUsersRequest +from datadog_api_client.v2.model.query_users_request_data import QueryUsersRequestData +from datadog_api_client.v2.model.query_users_request_data_attributes import QueryUsersRequestDataAttributes +from datadog_api_client.v2.model.query_users_request_data_attributes_sort import QueryUsersRequestDataAttributesSort +from datadog_api_client.v2.model.query_users_request_data_type import QueryUsersRequestDataType from datadog_api_client.v2.model.rum_aggregate_bucket_value import RUMAggregateBucketValue from datadog_api_client.v2.model.rum_aggregate_bucket_value_timeseries import RUMAggregateBucketValueTimeseries from datadog_api_client.v2.model.rum_aggregate_bucket_value_timeseries_point import ( @@ -4597,6 +4667,13 @@ from datadog_api_client.v2.model.update_apps_datastore_request_data_attributes import ( UpdateAppsDatastoreRequestDataAttributes, ) +from datadog_api_client.v2.model.update_connection_request import UpdateConnectionRequest +from datadog_api_client.v2.model.update_connection_request_data import UpdateConnectionRequestData +from datadog_api_client.v2.model.update_connection_request_data_attributes import UpdateConnectionRequestDataAttributes +from datadog_api_client.v2.model.update_connection_request_data_attributes_fields_to_update_items import ( + UpdateConnectionRequestDataAttributesFieldsToUpdateItems, +) +from datadog_api_client.v2.model.update_connection_request_data_type import UpdateConnectionRequestDataType from datadog_api_client.v2.model.update_custom_framework_request import UpdateCustomFrameworkRequest from datadog_api_client.v2.model.update_custom_framework_response import UpdateCustomFrameworkResponse from datadog_api_client.v2.model.update_open_api_response import UpdateOpenAPIResponse @@ -5482,6 +5559,10 @@ "CreateAppsDatastoreRequestDataAttributesOrgAccess", "CreateAppsDatastoreResponse", "CreateAppsDatastoreResponseData", + "CreateConnectionRequest", + "CreateConnectionRequestData", + "CreateConnectionRequestDataAttributes", + "CreateConnectionRequestDataAttributesFieldsItems", "CreateCustomFrameworkRequest", "CreateCustomFrameworkResponse", "CreateDataDeletionRequestBody", @@ -5947,6 +6028,19 @@ "EventsSortType", "EventsTimeseriesQuery", "EventsWarning", + "FacetInfoRequest", + "FacetInfoRequestData", + "FacetInfoRequestDataAttributes", + "FacetInfoRequestDataAttributesSearch", + "FacetInfoRequestDataAttributesTermSearch", + "FacetInfoRequestDataType", + "FacetInfoResponse", + "FacetInfoResponseData", + "FacetInfoResponseDataAttributes", + "FacetInfoResponseDataAttributesResult", + "FacetInfoResponseDataAttributesResultRange", + "FacetInfoResponseDataAttributesResultValuesItems", + "FacetInfoResponseDataType", "FastlyAPIKey", "FastlyAPIKeyType", "FastlyAPIKeyUpdate", @@ -6101,6 +6195,11 @@ "GetInterfacesData", "GetInterfacesResponse", "GetIssueIncludeQueryParameterItem", + "GetMappingResponse", + "GetMappingResponseData", + "GetMappingResponseDataAttributes", + "GetMappingResponseDataAttributesAttributesItems", + "GetMappingResponseDataType", "GetMultipleRulesetsRequest", "GetMultipleRulesetsRequestData", "GetMultipleRulesetsRequestDataAttributes", @@ -6476,6 +6575,12 @@ "ListAppsResponseMeta", "ListAppsResponseMetaPage", "ListAssetsSBOMsResponse", + "ListConnectionsResponse", + "ListConnectionsResponseData", + "ListConnectionsResponseDataAttributes", + "ListConnectionsResponseDataAttributesConnectionsItems", + "ListConnectionsResponseDataAttributesConnectionsItemsJoin", + "ListConnectionsResponseDataType", "ListDevicesResponse", "ListDevicesResponseMetadata", "ListDevicesResponseMetadataPage", @@ -7178,8 +7283,28 @@ "PutAppsDatastoreItemResponseData", "PutIncidentNotificationRuleRequest", "Query", + "QueryAccountRequest", + "QueryAccountRequestData", + "QueryAccountRequestDataAttributes", + "QueryAccountRequestDataAttributesSort", + "QueryAccountRequestDataType", + "QueryEventFilteredUsersRequest", + "QueryEventFilteredUsersRequestData", + "QueryEventFilteredUsersRequestDataAttributes", + "QueryEventFilteredUsersRequestDataAttributesEventQuery", + "QueryEventFilteredUsersRequestDataAttributesEventQueryTimeFrame", + "QueryEventFilteredUsersRequestDataType", "QueryFormula", + "QueryResponse", + "QueryResponseData", + "QueryResponseDataAttributes", + "QueryResponseDataType", "QuerySortOrder", + "QueryUsersRequest", + "QueryUsersRequestData", + "QueryUsersRequestDataAttributes", + "QueryUsersRequestDataAttributesSort", + "QueryUsersRequestDataType", "RUMAggregateBucketValue", "RUMAggregateBucketValueTimeseries", "RUMAggregateBucketValueTimeseriesPoint", @@ -8078,6 +8203,11 @@ "UpdateAppsDatastoreRequest", "UpdateAppsDatastoreRequestData", "UpdateAppsDatastoreRequestDataAttributes", + "UpdateConnectionRequest", + "UpdateConnectionRequestData", + "UpdateConnectionRequestDataAttributes", + "UpdateConnectionRequestDataAttributesFieldsToUpdateItems", + "UpdateConnectionRequestDataType", "UpdateCustomFrameworkRequest", "UpdateCustomFrameworkResponse", "UpdateOpenAPIResponse", diff --git a/tests/v2/features/rum_audience_management.feature b/tests/v2/features/rum_audience_management.feature new file mode 100644 index 0000000000..ffc3653193 --- /dev/null +++ b/tests/v2/features/rum_audience_management.feature @@ -0,0 +1,91 @@ +@endpoint(rum-audience-management) @endpoint(rum-audience-management-v2) +Feature: Rum Audience Management + Auto-generated tag Rum Audience Management + + Background: + Given a valid "apiKeyAuth" key in the system + And a valid "appKeyAuth" key in the system + And an instance of "RumAudienceManagement" API + + @generated @skip @team:DataDog/audience-management-backend + Scenario: Create connection returns "Connection created successfully" response + Given operation "CreateConnection" enabled + And new "CreateConnection" request + And request contains "entity" parameter from "REPLACE.ME" + And body with value {"data": {"attributes": {"fields": [{"description": "Customer subscription tier from `CRM`", "display_name": "Customer Tier", "id": "customer_tier", "source_name": "subscription_tier", "type": "string"}, {"description": "Customer lifetime value in `USD`", "display_name": "Lifetime Value", "id": "lifetime_value", "source_name": "ltv", "type": "number"}], "join_attribute": "user_email", "join_type": "email", "type": "ref_table"}, "id": "crm-integration", "type": "connection_id"}} + When the request is sent + Then the response status is 201 Connection created successfully + + @generated @skip @team:DataDog/audience-management-backend + Scenario: Delete connection returns "Connection deleted successfully" response + Given operation "DeleteConnection" enabled + And new "DeleteConnection" request + And request contains "id" parameter from "REPLACE.ME" + And request contains "entity" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 204 Connection deleted successfully + + @generated @skip @team:DataDog/audience-management-backend + Scenario: Get account facet info returns "Successful response with facet information" response + Given operation "GetAccountFacetInfo" enabled + And new "GetAccountFacetInfo" request + And body with value {"data": {"attributes": {"facet_id": "first_browser_name", "limit": 10, "search": {"query": "user_org_id:5001 AND first_country_code:US"}, "term_search": {"value": "Chrome"}}, "id": "facet_info_request", "type": "users_facet_info_request"}} + When the request is sent + Then the response status is 200 Successful response with facet information + + @generated @skip @team:DataDog/audience-management-backend + Scenario: Get mapping returns "Successful response with entity mapping configuration" response + Given operation "GetMapping" enabled + And new "GetMapping" request + And request contains "entity" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 200 Successful response with entity mapping configuration + + @generated @skip @team:DataDog/audience-management-backend + Scenario: Get user facet info returns "Successful response with facet information" response + Given operation "GetUserFacetInfo" enabled + And new "GetUserFacetInfo" request + And body with value {"data": {"attributes": {"facet_id": "first_browser_name", "limit": 10, "search": {"query": "user_org_id:5001 AND first_country_code:US"}, "term_search": {"value": "Chrome"}}, "id": "facet_info_request", "type": "users_facet_info_request"}} + When the request is sent + Then the response status is 200 Successful response with facet information + + @generated @skip @team:DataDog/audience-management-backend + Scenario: List connections returns "Successful response with list of connections" response + Given operation "ListConnections" enabled + And new "ListConnections" request + And request contains "entity" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 200 Successful response with list of connections + + @generated @skip @team:DataDog/audience-management-backend + Scenario: Query accounts returns "Successful response with account data" response + Given operation "QueryAccounts" enabled + And new "QueryAccounts" request + And body with value {"data": {"attributes": {"limit": 20, "query": "plan_type:enterprise AND user_count:>100 AND subscription_status:active", "select_columns": ["account_id", "account_name", "user_count", "plan_type", "subscription_status", "created_at", "mrr", "industry"], "sort": {"field": "user_count", "order": "DESC"}, "wildcard_search_term": "tech"}, "id": "query_account_request", "type": "query_account_request"}} + When the request is sent + Then the response status is 200 Successful response with account data + + @generated @skip @team:DataDog/audience-management-backend + Scenario: Query event filtered users returns "Successful response with filtered user data" response + Given operation "QueryEventFilteredUsers" enabled + And new "QueryEventFilteredUsers" request + And body with value {"data": {"attributes": {"event_query": {"query": "@type:view AND @view.loading_time:>3000 AND @application.name:ecommerce-platform", "time_frame": {"end": 1761309676, "start": 1760100076}}, "include_row_count": true, "limit": 25, "query": "user_org_id:5001 AND first_country_code:US AND first_browser_name:Chrome", "select_columns": ["user_id", "user_email", "first_country_code", "first_browser_name", "events_count", "session_count", "error_count", "avg_loading_time"]}, "id": "query_event_filtered_users_request", "type": "query_event_filtered_users_request"}} + When the request is sent + Then the response status is 200 Successful response with filtered user data + + @generated @skip @team:DataDog/audience-management-backend + Scenario: Query users returns "Successful response with user data" response + Given operation "QueryUsers" enabled + And new "QueryUsers" request + And body with value {"data": {"attributes": {"limit": 25, "query": "user_email:*@techcorp.com AND first_country_code:US AND first_browser_name:Chrome", "select_columns": ["user_id", "user_email", "user_name", "user_org_id", "first_country_code", "first_browser_name", "first_device_type", "last_seen"], "sort": {"field": "first_seen", "order": "DESC"}, "wildcard_search_term": "john"}, "id": "query_users_request", "type": "query_users_request"}} + When the request is sent + Then the response status is 200 Successful response with user data + + @generated @skip @team:DataDog/audience-management-backend + Scenario: Update connection returns "Connection updated successfully" response + Given operation "UpdateConnection" enabled + And new "UpdateConnection" request + And request contains "entity" parameter from "REPLACE.ME" + And body with value {"data": {"attributes": {"fields_to_add": [{"description": "Net Promoter Score from customer surveys", "display_name": "NPS Score", "groups": ["Satisfaction", "Metrics"], "id": "nps_score", "source_name": "net_promoter_score", "type": "number"}], "fields_to_delete": ["old_revenue_field"], "fields_to_update": [{"field_id": "lifetime_value", "updated_display_name": "Customer Lifetime Value (`USD`)", "updated_groups": ["Financial", "Metrics"]}]}, "id": "crm-integration", "type": "connection_id"}} + When the request is sent + Then the response status is 200 Connection updated successfully diff --git a/tests/v2/features/undo.json b/tests/v2/features/undo.json index 1865379ddb..77d6db57a8 100644 --- a/tests/v2/features/undo.json +++ b/tests/v2/features/undo.json @@ -2813,6 +2813,87 @@ "type": "safe" } }, + "GetAccountFacetInfo": { + "tag": "Rum Audience Management", + "undo": { + "operationId": "TODO", + "parameters": [], + "type": "unsafe" + } + }, + "QueryAccounts": { + "tag": "Rum Audience Management", + "undo": { + "operationId": "TODO", + "parameters": [], + "type": "unsafe" + } + }, + "QueryEventFilteredUsers": { + "tag": "Rum Audience Management", + "undo": { + "operationId": "TODO", + "parameters": [], + "type": "unsafe" + } + }, + "GetUserFacetInfo": { + "tag": "Rum Audience Management", + "undo": { + "operationId": "TODO", + "parameters": [], + "type": "unsafe" + } + }, + "QueryUsers": { + "tag": "Rum Audience Management", + "undo": { + "operationId": "TODO", + "parameters": [], + "type": "unsafe" + } + }, + "GetMapping": { + "tag": "Rum Audience Management", + "undo": { + "type": "safe" + } + }, + "CreateConnection": { + "tag": "Rum Audience Management", + "undo": { + "operationId": "DeleteConnection", + "parameters": [ + { + "name": "id", + "source": "" + }, + { + "name": "entity", + "source": "" + } + ], + "type": "unsafe" + } + }, + "UpdateConnection": { + "tag": "Rum Audience Management", + "undo": { + "type": "idempotent" + } + }, + "DeleteConnection": { + "tag": "Rum Audience Management", + "undo": { + "type": "idempotent" + } + }, + "ListConnections": { + "tag": "Rum Audience Management", + "undo": { + "type": "safe" + } + }, "QueryScalarData": { "tag": "Metrics", "undo": {