Audience features
Last updated
Last updated
An audience feature is a pre-created OTQL query fragment. Your users can leverage the audience features you create to run complex queries without OTQL knowledge. Each audience feature will turn into a user-friendly selector in the UI.
Audience features you create are available in the navigator, in Audience > Builders > Standard.
Let's take the following query as an example:
It is technically an OTQL query based on your schema in which you registered parameters. In this case, it represents a business feature that may be used regularly by your users: selecting user points that perform a transaction in a particular date range and for specific products.
Users will see this selector in the builder instead of an OTQL query.
This audience feature will automatically be combined with other audience features, which the user can select to create segments.
Users will have access to the standard segment builder if at least one audience feature is set up. But you need multiple ones to create value for users.
Good knowledge of the schema and the queries that are usually created in your datamart is important for the success of this feature.
Here is a sample process to follow to enable audience features and create value for your users:
Know your schema. What is it optimized for? Which queries are regularly created? What are your actual segments and what are their queries? You should be able to create a list of useful audience features with these pieces of information.
Set up audience features, in the UI and/or by script.
Monitor usage and update audience features regularly!
You can store audience features in folders. Any audience feature without a folder will be assigned to the root folder. Here are some examples.
GET
https://api.mediarithmics.com/v1/datamarts/{datamart_id}/audience_feature_folders
Name | Type | Description |
---|---|---|
datamart_id | integer | The ID of the datamart |
GET
https://api.mediarithmics.com/v1/datamarts/{datamart_id}/audience_feature_folders/{audience_feature_folders_id}
Name | Type | Description |
---|---|---|
audience_feature_folders_id | integer | The ID of the folder |
datamart_id | integer | The ID of the datamart |
POST
https://api.mediarithmics.com/v1/datamarts/{datamart_id}/audience_feature_folders
Name | Type | Description |
---|---|---|
datamart_id* | integer | The ID of the datamart |
Name | Type | Description |
---|---|---|
children_ids | array | IDs of folder's children |
audience_features_ids | array | IDs of audience features attached to the folder |
parent_id | string | The ID of the folder's parent |
datamart_id | string | The ID of the datamart |
name* | string | The name of the folder |
PUT
https://api.mediarithmics.com/v1/datamarts/{datamart_id}/audience_feature_folders/{audience_feature_folders}
Name | Type | Description |
---|---|---|
datamart_id* | integer | The ID of the datamart |
audience_feature_folders_id* | integer | The ID of the audience feature folder |
Name | Type | Description |
---|---|---|
children_ids | array | IDs of folders's children |
audience_features_ids | array | IDs of audience features attached to the folder |
parent_id | string | The ID of the folder's parent |
datamart_id | string | The ID of the datamart |
name* | string | The name of the folder |
GET
https://api.mediarithmics.com/v1/datamarts/{datamart_id}/audience_features
Name | Type | Description |
---|---|---|
datamart_id | integer | The ID of the datamart |
GET
https://api.mediarithmics.com/v1/datamarts/{datamart_id}/audience_features/{audience_feature_id}
Name | Type | Description |
---|---|---|
audience_feature_id | integer | The ID of the audience feature |
datamart_id | integer | The ID of the datamart |
POST
https://api.mediarithmics.com/v1/datamarts/{datamart_id}/audience_features
Name | Type | Description |
---|---|---|
datamart_id | integer | The ID of the datamart |
Name | Type | Description |
---|---|---|
object_tree_expression | string | The WHERE statement of the query associated to the audience feature |
description | string | The description of your audience feature |
datamart_id | string | The ID of the datamart |
addressable_object | string | The SELECT statement of the query associated to the audience feature. It must always set at UserPoint. |
name | string | The name of the audience feature |
folder_id | string | The ID of folder where the audience feature is stored |
PUT
https://api.mediarithmics.com/v1/datamarts/{datamart_id}/audience_features/{audience_feature_id}
Name | Type | Description |
---|---|---|
audience_feature_id | integer | The ID of the audience feature to edit |
datamart_id | integer | The ID of the datamart |
Name | Type | Description |
---|---|---|
object_tree_expression | string | The WHERE statement of the query associated to the audience feature |
description | string | The description of your audience feature |
datamart_id | string | The ID of the datamart |
addressable_object | string | The SELECT statement of the query associated to the audience feature. It must always set at UserPoint. |
name | string | The name of the audience feature |
folder_id | string | The ID of folder where the audience feature is stored |
Create query parameters using the $parameter_name
syntax. Example:
The field in the audience feature will have the name you enter after the $
. Spaces in field name are not authorized. The type of selector in the audience feature is automatically chosen based on the field type
If you want to be able to select several values in a field, use keyword in
instead of the classic ==
.
You can create parameters for frequency requests with the @ScoreSum
directive: