Note : This endpoint is in preview and is subject to change.
If you have any feedback, contact Datadog support .
POST https://api.ap1.datadoghq.com/api/v2/product-analytics/analytics/list https://api.ap2.datadoghq.com/api/v2/product-analytics/analytics/list https://api.datadoghq.eu/api/v2/product-analytics/analytics/list https://api.ddog-gov.com/api/v2/product-analytics/analytics/list https://api.us2.ddog-gov.com/api/v2/product-analytics/analytics/list https://api.uk1.datadoghq.com/api/v2/product-analytics/analytics/list https://api.datadoghq.com/api/v2/product-analytics/analytics/list https://api.us3.datadoghq.com/api/v2/product-analytics/analytics/list https://api.us5.datadoghq.com/api/v2/product-analytics/analytics/list
개요 List the individual event records matching an analytics query.
Use columns to choose the attributes returned on each row, sort to order the rows,
and limit to cap how many are returned.
This endpoint requires the rum_apps_read permission.
요청 Body Data (required)
Expand All
Data object for an analytics list request.
Attributes for an analytics list request.
Start time in epoch milliseconds. Must be less than to.
The analytics list query definition. It selects the events to return with query, then
chooses the columns on each event row, the sort applied to those rows, and a row limit.
Unlike the scalar and timeseries queries, a list query returns raw event rows rather than
aggregates, so it takes no compute or group-by rule.
Audience filter definitions for targeting specific user segments.
Account audience queries.
Name of this query, referenced in the formula.
Search query for filtering accounts.
Boolean formula combining audience queries by name.
Segment audience queries.
Name of this query, referenced in the formula.
UUID of the segment to filter by.
Name of this query, referenced in the formula.
Search query for filtering users.
Attribute columns to include in each event row.
Maximum number of event rows to return.
A query definition discriminated by the data_source field.
Use product_analytics for standard event queries, or
product_analytics_occurrence for occurrence-filtered queries.
<data_source=product_analytics>
A standard Product Analytics event query.
The data source identifier.
Allowed enum values: product_analytics
Search parameters for an event query.
The search query using Datadog search syntax.
<data_source=product_analytics_occurrence>
A Product Analytics occurrence-filtered query.
The data source identifier for occurrence queries.
Allowed enum values: product_analytics_occurrence
Search parameters for an occurrence query.
Filter for occurrence-based queries.
Comparison operator (=, >=, <=, >, <).
The occurrence count threshold as a string.
The search query using Datadog search syntax.
The sort applied to the returned event rows.
Name of the facet to sort the rows by.
The direction rows are sorted in.
Allowed enum values: asc,desc
End time in epoch milliseconds.
The resource type for analytics list requests.
Allowed enum values: formula_analytics_extended_list_request
{
"data" : {
"attributes" : {
"from" : 1771232048460 ,
"query" : {
"audience_filters" : {
"accounts" : [
{
"name" : "" ,
"query" : "string"
}
],
"formula" : "u" ,
"segments" : [
{
"name" : "" ,
"segment_id" : "00000000-0000-0000-0000-000000000000"
}
],
"users" : [
{
"name" : "u" ,
"query" : "*"
}
]
},
"columns" : [],
"limit" : 100 ,
"query" : {
"data_source" : "product_analytics" ,
"search" : {
"query" : "@type:view"
}
},
"sort" : {
"facet" : "string" ,
"order" : "string"
}
},
"to" : 1771836848262
},
"type" : "formula_analytics_extended_list_request"
}
} 응답 OK
Response for an analytics list query, containing individual event records.
Expand All
Data object for an analytics list response.
Attributes of an analytics list response, containing the matching event rows.
The event rows, each holding the values of the requested columns.
Total number of records matching the query, before the row limit is applied.
Unique identifier for this response data object.
The resource type identifier for an analytics list response.
Allowed enum values: list_response
Metadata for a Product Analytics query response.
Unique identifier of the query.
The execution status of a Product Analytics query.
Allowed enum values: done,running,timeout
{
"data" : {
"attributes" : {
"records" : [],
"total_count" : "integer"
},
"id" : "00000000-0000-0000-0000-000000000000" ,
"type" : "list_response"
},
"meta" : {
"request_id" : "string" ,
"status" : "string"
}
} Bad Request
{
"errors" : [
"Bad Request"
]
} Not Authorized
{
"errors" : [
"Bad Request"
]
} Too many requests
{
"errors" : [
"Bad Request"
]
} 코드 예시 복사
## default
#
# Curl command curl -X POST "https://api.ap1.datadoghq.com "https://api.ap2.datadoghq.com "https://api.datadoghq.eu "https://api.ddog-gov.com "https://api.us2.ddog-gov.com "https://api.uk1.datadoghq.com "https://api.datadoghq.com "https://api.us3.datadoghq.com "https://api.us5.datadoghq.com /api/v2/product-analytics/analytics/list " \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "DD-API-KEY: ${DD_API_KEY} " \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY} " \
-d @- << EOF
{
"data": {
"attributes": {
"from": 1771232048460,
"query": {
"columns": [
"@view.name"
],
"limit": 100,
"query": {
"data_source": "product_analytics",
"search": {
"query": "@type:view"
}
}
},
"to": 1771836848262
},
"type": "formula_analytics_extended_list_request"
}
}
EOF
"""
List analytics events returns "OK" response
"""
from datadog_api_client import ApiClient , Configuration
from datadog_api_client.v2.api.product_analytics_api import ProductAnalyticsApi
from datadog_api_client.v2.model.product_analytics_analytics_list_query import ProductAnalyticsAnalyticsListQuery
from datadog_api_client.v2.model.product_analytics_analytics_list_request import ProductAnalyticsAnalyticsListRequest
from datadog_api_client.v2.model.product_analytics_analytics_list_request_attributes import (
ProductAnalyticsAnalyticsListRequestAttributes ,
)
from datadog_api_client.v2.model.product_analytics_analytics_list_request_data import (
ProductAnalyticsAnalyticsListRequestData ,
)
from datadog_api_client.v2.model.product_analytics_analytics_list_request_type import (
ProductAnalyticsAnalyticsListRequestType ,
)
from datadog_api_client.v2.model.product_analytics_event_query import ProductAnalyticsEventQuery
from datadog_api_client.v2.model.product_analytics_event_query_data_source import ProductAnalyticsEventQueryDataSource
from datadog_api_client.v2.model.product_analytics_event_search import ProductAnalyticsEventSearch
body = ProductAnalyticsAnalyticsListRequest (
data = ProductAnalyticsAnalyticsListRequestData (
attributes = ProductAnalyticsAnalyticsListRequestAttributes (
_from = 1771232048460 ,
query = ProductAnalyticsAnalyticsListQuery (
columns = [
"@view.name" ,
],
limit = 100 ,
query = ProductAnalyticsEventQuery (
data_source = ProductAnalyticsEventQueryDataSource . PRODUCT_ANALYTICS ,
search = ProductAnalyticsEventSearch (
query = "@type:view" ,
),
),
),
to = 1771836848262 ,
),
type = ProductAnalyticsAnalyticsListRequestType . FORMULA_ANALYTICS_EXTENDED_LIST_REQUEST ,
),
)
configuration = Configuration ()
configuration . unstable_operations [ "query_product_analytics_list" ] = True
with ApiClient ( configuration ) as api_client :
api_instance = ProductAnalyticsApi ( api_client )
response = api_instance . query_product_analytics_list ( body = body )
print ( response )
Instructions First install the library and its dependencies and then save the example to example.py and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" python3 "example.py"
# List analytics events returns "OK" response
require "datadog_api_client"
DatadogAPIClient . configure do | config |
config . unstable_operations [ "v2.query_product_analytics_list" . to_sym ] = true
end
api_instance = DatadogAPIClient :: V2 :: ProductAnalyticsAPI . new
body = DatadogAPIClient :: V2 :: ProductAnalyticsAnalyticsListRequest . new ({
data : DatadogAPIClient :: V2 :: ProductAnalyticsAnalyticsListRequestData . new ({
attributes : DatadogAPIClient :: V2 :: ProductAnalyticsAnalyticsListRequestAttributes . new ({
from : 1771232048460 ,
query : DatadogAPIClient :: V2 :: ProductAnalyticsAnalyticsListQuery . new ({
columns : [
"@view.name" ,
] ,
limit : 100 ,
query : DatadogAPIClient :: V2 :: ProductAnalyticsEventQuery . new ({
data_source : DatadogAPIClient :: V2 :: ProductAnalyticsEventQueryDataSource :: PRODUCT_ANALYTICS ,
search : DatadogAPIClient :: V2 :: ProductAnalyticsEventSearch . new ({
query : "@type:view" ,
}),
}),
}),
to : 1771836848262 ,
}),
type : DatadogAPIClient :: V2 :: ProductAnalyticsAnalyticsListRequestType :: FORMULA_ANALYTICS_EXTENDED_LIST_REQUEST ,
}),
})
p api_instance . query_product_analytics_list ( body )
Instructions First install the library and its dependencies and then save the example to example.rb and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" rb "example.rb"
// List analytics events returns "OK" response
package main
import (
"context"
"encoding/json"
"fmt"
"os"
"github.com/DataDog/datadog-api-client-go/v2/api/datadog"
"github.com/DataDog/datadog-api-client-go/v2/api/datadogV2"
)
func main () {
body := datadogV2 . ProductAnalyticsAnalyticsListRequest {
Data : datadogV2 . ProductAnalyticsAnalyticsListRequestData {
Attributes : datadogV2 . ProductAnalyticsAnalyticsListRequestAttributes {
From : 1771232048460 ,
Query : datadogV2 . ProductAnalyticsAnalyticsListQuery {
Columns : [] string {
"@view.name" ,
},
Limit : datadog . PtrInt64 ( 100 ),
Query : datadogV2 . ProductAnalyticsBaseQuery {
ProductAnalyticsEventQuery : & datadogV2 . ProductAnalyticsEventQuery {
DataSource : datadogV2 . PRODUCTANALYTICSEVENTQUERYDATASOURCE_PRODUCT_ANALYTICS ,
Search : datadogV2 . ProductAnalyticsEventSearch {
Query : datadog . PtrString ( "@type:view" ),
},
}},
},
To : 1771836848262 ,
},
Type : datadogV2 . PRODUCTANALYTICSANALYTICSLISTREQUESTTYPE_FORMULA_ANALYTICS_EXTENDED_LIST_REQUEST ,
},
}
ctx := datadog . NewDefaultContext ( context . Background ())
configuration := datadog . NewConfiguration ()
configuration . SetUnstableOperationEnabled ( "v2.QueryProductAnalyticsList" , true )
apiClient := datadog . NewAPIClient ( configuration )
api := datadogV2 . NewProductAnalyticsApi ( apiClient )
resp , r , err := api . QueryProductAnalyticsList ( ctx , body )
if err != nil {
fmt . Fprintf ( os . Stderr , "Error when calling `ProductAnalyticsApi.QueryProductAnalyticsList`: %v\n" , err )
fmt . Fprintf ( os . Stderr , "Full HTTP response: %v\n" , r )
}
responseContent , _ := json . MarshalIndent ( resp , "" , " " )
fmt . Fprintf ( os . Stdout , "Response from `ProductAnalyticsApi.QueryProductAnalyticsList`:\n%s\n" , responseContent )
}
Instructions First install the library and its dependencies and then save the example to main.go and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" go run "main.go"
// List analytics events returns "OK" response
import com.datadog.api.client.ApiClient ;
import com.datadog.api.client.ApiException ;
import com.datadog.api.client.v2.api.ProductAnalyticsApi ;
import com.datadog.api.client.v2.model.ProductAnalyticsAnalyticsListQuery ;
import com.datadog.api.client.v2.model.ProductAnalyticsAnalyticsListRequest ;
import com.datadog.api.client.v2.model.ProductAnalyticsAnalyticsListRequestAttributes ;
import com.datadog.api.client.v2.model.ProductAnalyticsAnalyticsListRequestData ;
import com.datadog.api.client.v2.model.ProductAnalyticsAnalyticsListRequestType ;
import com.datadog.api.client.v2.model.ProductAnalyticsAnalyticsListResponse ;
import com.datadog.api.client.v2.model.ProductAnalyticsBaseQuery ;
import com.datadog.api.client.v2.model.ProductAnalyticsEventQuery ;
import com.datadog.api.client.v2.model.ProductAnalyticsEventQueryDataSource ;
import com.datadog.api.client.v2.model.ProductAnalyticsEventSearch ;
import java.util.Collections ;
public class Example {
public static void main ( String [] args ) {
ApiClient defaultClient = ApiClient . getDefaultApiClient ();
defaultClient . setUnstableOperationEnabled ( "v2.queryProductAnalyticsList" , true );
ProductAnalyticsApi apiInstance = new ProductAnalyticsApi ( defaultClient );
ProductAnalyticsAnalyticsListRequest body =
new ProductAnalyticsAnalyticsListRequest ()
. data (
new ProductAnalyticsAnalyticsListRequestData ()
. attributes (
new ProductAnalyticsAnalyticsListRequestAttributes ()
. from ( 1771232048460L )
. query (
new ProductAnalyticsAnalyticsListQuery ()
. columns ( Collections . singletonList ( "@view.name" ))
. limit ( 100L )
. query (
new ProductAnalyticsBaseQuery (
new ProductAnalyticsEventQuery ()
. dataSource (
ProductAnalyticsEventQueryDataSource
. PRODUCT_ANALYTICS )
. search (
new ProductAnalyticsEventSearch ()
. query ( "@type:view" )))))
. to ( 1771836848262L ))
. type (
ProductAnalyticsAnalyticsListRequestType
. FORMULA_ANALYTICS_EXTENDED_LIST_REQUEST ));
try {
ProductAnalyticsAnalyticsListResponse result = apiInstance . queryProductAnalyticsList ( body );
System . out . println ( result );
} catch ( ApiException e ) {
System . err . println ( "Exception when calling ProductAnalyticsApi#queryProductAnalyticsList" );
System . err . println ( "Status code: " + e . getCode ());
System . err . println ( "Reason: " + e . getResponseBody ());
System . err . println ( "Response headers: " + e . getResponseHeaders ());
e . printStackTrace ();
}
}
}
Instructions First install the library and its dependencies and then save the example to Example.java and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" java "Example.java"
// List analytics events returns "OK" response
use datadog_api_client ::datadog ;
use datadog_api_client ::datadogV2 ::api_product_analytics ::ProductAnalyticsAPI ;
use datadog_api_client ::datadogV2 ::model ::ProductAnalyticsAnalyticsListQuery ;
use datadog_api_client ::datadogV2 ::model ::ProductAnalyticsAnalyticsListRequest ;
use datadog_api_client ::datadogV2 ::model ::ProductAnalyticsAnalyticsListRequestAttributes ;
use datadog_api_client ::datadogV2 ::model ::ProductAnalyticsAnalyticsListRequestData ;
use datadog_api_client ::datadogV2 ::model ::ProductAnalyticsAnalyticsListRequestType ;
use datadog_api_client ::datadogV2 ::model ::ProductAnalyticsBaseQuery ;
use datadog_api_client ::datadogV2 ::model ::ProductAnalyticsEventQuery ;
use datadog_api_client ::datadogV2 ::model ::ProductAnalyticsEventQueryDataSource ;
use datadog_api_client ::datadogV2 ::model ::ProductAnalyticsEventSearch ;
#[tokio::main]
async fn main () {
let body =
ProductAnalyticsAnalyticsListRequest ::new ( ProductAnalyticsAnalyticsListRequestData ::new (
ProductAnalyticsAnalyticsListRequestAttributes ::new (
1771232048460 ,
ProductAnalyticsAnalyticsListQuery ::new (
ProductAnalyticsBaseQuery ::ProductAnalyticsEventQuery ( Box ::new (
ProductAnalyticsEventQuery ::new (
ProductAnalyticsEventQueryDataSource ::PRODUCT_ANALYTICS ,
ProductAnalyticsEventSearch ::new (). query ( "@type:view" . to_string ()),
),
)),
)
. columns ( vec! [ "@view.name" . to_string ()])
. limit ( 100 ),
1771836848262 ,
),
ProductAnalyticsAnalyticsListRequestType ::FORMULA_ANALYTICS_EXTENDED_LIST_REQUEST ,
));
let mut configuration = datadog ::Configuration ::new ();
configuration . set_unstable_operation_enabled ( "v2.QueryProductAnalyticsList" , true );
let api = ProductAnalyticsAPI ::with_config ( configuration );
let resp = api . query_product_analytics_list ( body ). await ;
if let Ok ( value ) = resp {
println! ( " {:#?} " , value );
} else {
println! ( " {:#?} " , resp . unwrap_err ());
}
}
Instructions First install the library and its dependencies and then save the example to src/main.rs and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" cargo run
/**
* List analytics events returns "OK" response
*/
import { client , v2 } from "@datadog/datadog-api-client" ;
const configuration = client . createConfiguration ();
configuration . unstableOperations [ "v2.queryProductAnalyticsList" ] = true ;
const apiInstance = new v2 . ProductAnalyticsApi ( configuration );
const params : v2.ProductAnalyticsApiQueryProductAnalyticsListRequest = {
body : {
data : {
attributes : {
from : 1771232048460 ,
query : {
columns : [ "@view.name" ],
limit : 100 ,
query : {
dataSource : "product_analytics" ,
search : {
query : "@type:view" ,
},
},
},
to : 1771836848262 ,
},
type : "formula_analytics_extended_list_request" ,
},
},
};
apiInstance
. queryProductAnalyticsList ( params )
. then (( data : v2.ProductAnalyticsAnalyticsListResponse ) => {
console . log (
"API called successfully. Returned data: " + JSON . stringify ( data )
);
})
. catch (( error : any ) => console . error ( error ));
Instructions First install the library and its dependencies and then save the example to example.ts and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com uk1.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<API-KEY>" DD_APP_KEY = "<APP-KEY>" tsc "example.ts"