Expand my Community achievements bar.

Join us for the next Community Q&A Coffee Break on Tuesday April 23, 2024 with Eric Matisoff, Principal Evangelist, Analytics & Data Science, who will join us to discuss all the big news and announcements from Summit 2024!
SOLVED

Download Report with filter condition

Avatar

Level 1

Hi,

 

I have been looking to fetch data from one of the report suite id.

 

There are two ways - 

a) Using API - report.queue : In this approach, we are able to submit the request for the report but we have to fetch report based on a filter condition on one of the column.

Is this something acheivable via API?

 

b) Using Datawarehouse to setup a scheduled report.

The same issue exists here, as we are unable to pass filter to this report. Also, will Adobe retire this functionality by dec 2023.

Reference - https://experienceleague.adobe.com/docs/analytics/analyze/reports-analytics/scheduling.html?lang=en

 

Any help on the issue will be appreciated.

 

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

There are 2 Methods I guess:

Using API: Yes, you can apply filters to your API request using the Adobe Analytics API. You can use the segmentId parameter in the request to apply a pre-built segment or create an inline segment to filter your data. An example of an inline segment in a request looks like this:


JSON CODE

{
"reportDescription": {
"reportSuiteID": "your_report_suite_id",
"dateFrom": "YYYY-MM-DD",
"dateTo": "YYYY-MM-DD",
"metrics": [
{
"id": "your_metric_id"
}
],
"elements": [
{
"id": "your_element_id"
}
],
"segments": [
{
"element": "your_element_id",
"selected": ["value_to_filter"]
}
]
}
}

Replace the placeholders with your specific values. This example shows an inline segment that filters the report based on a specific value of an element (column).


Using Data Warehouse: While you can apply filters in Data Warehouse, its filtering capabilities are limited compared to the API or Analysis Workspace. The scheduled report functionality, as mentioned in the reference, is set to be retired by Dec 2023. However, Adobe Analytics will continue to support and improve the Analysis Workspace, which offers advanced filtering options and the ability to schedule reports.

Given the situation, I recommend using the API for fetching data with filter conditions, as it provides more flexibility and control over your data requests. If you encounter any issues or need further assistance, feel free to reach out to Adobe Customer Support or consult the Adobe Analytics community.

View solution in original post

4 Replies

Avatar

Correct answer by
Community Advisor

There are 2 Methods I guess:

Using API: Yes, you can apply filters to your API request using the Adobe Analytics API. You can use the segmentId parameter in the request to apply a pre-built segment or create an inline segment to filter your data. An example of an inline segment in a request looks like this:


JSON CODE

{
"reportDescription": {
"reportSuiteID": "your_report_suite_id",
"dateFrom": "YYYY-MM-DD",
"dateTo": "YYYY-MM-DD",
"metrics": [
{
"id": "your_metric_id"
}
],
"elements": [
{
"id": "your_element_id"
}
],
"segments": [
{
"element": "your_element_id",
"selected": ["value_to_filter"]
}
]
}
}

Replace the placeholders with your specific values. This example shows an inline segment that filters the report based on a specific value of an element (column).


Using Data Warehouse: While you can apply filters in Data Warehouse, its filtering capabilities are limited compared to the API or Analysis Workspace. The scheduled report functionality, as mentioned in the reference, is set to be retired by Dec 2023. However, Adobe Analytics will continue to support and improve the Analysis Workspace, which offers advanced filtering options and the ability to schedule reports.

Given the situation, I recommend using the API for fetching data with filter conditions, as it provides more flexibility and control over your data requests. If you encounter any issues or need further assistance, feel free to reach out to Adobe Customer Support or consult the Adobe Analytics community.

Avatar

Level 1

Thanks @Hemang35  for the response.

 

I have passed the segements in the api request but since my source is set to warehouse, i am getting below error.

error_description': 'Inline segments not supported in warehouse requests',

 

Also, i have tried passing the segment_id which i was able to fetch from UI by enabling debugger.

The request got submitted but when i queried for the report using "method":"Report.Get.

Error : 

{"error":"warehouse_request_failed","error_description":"Warehouse request failed","error_uri":null}

 Request :

"elements": [
{
"id": "test",
"name": "test col"
}
],
"segments": [
{
"id": "sample_id"
}
],

 

Also, i changed the source to standard but this gives below error -
error_description': 'The maximum number of elements supported is 4',

 

Are there any other options, which i can use. Since, i want more than 4 elements in my report.

Avatar

Community Advisor

It should be noted that Workspaces are build using API 2.0... so yes, anything you can do in your Workspace, you can do with the API.

 

Here is a little known trick... 

 

In your workspace, you can enable "debugging"

Jennifer_Dungan_0-1681931356600.png

 

 

Once enabled, you will see a new icon on your freeform tables:

Jennifer_Dungan_1-1681931435700.png

 

 

Clicking on it will bring up a menu:

Jennifer_Dungan_2-1681931494474.png

 

 

Then selecting one of those, will show you timestamps of data pulls.. Select it

Jennifer_Dungan_3-1681931571595.png

 

 

A page will open with Information about the API calls used to make your table... in XML, cURL, and JSON

 

 

This can help you in how to build out your own API calls

Avatar

Community Advisor

I should also add.. Data Warehouse pulls can only be filtered at a holistic level, you can't filter columns... this is because the Data Warehouse is essentially flattened data.

 

But I don't believe that Data Warehouse is scheduled to be sunset...  Reports and Scheduled Reports, yes... but Data Warehouse isn't a report.... it's a way of extracting full processed data 

 

 

From Workspaces, you can also download up to 50,000 rows of data by right clicking on your table and selecting "Download Items as CSV (dimension)", but if you have breakdowns, these won't be included.