Funnel API

The Data Studio > Funnel page in the navigator uses an API that you can leverage to analyze funnel conversions in your own tools. For more information on the feature, see Funnel.

Retrieve dimensions values autocomplete

POST https://api.mediarithmics.com/v1/datamarts/:datamartId/user_activities_analytics

Use this call to get suggestions or autocomplete values for a dimension

Query Parameters

Request Body

{
    "status": "ok",
    "data": {
        "report_view": {
            "items_per_page": 100,
            "total_items": 7,
            "columns_headers": [
                "type"
            ],
            "rows": [
                [
                    "DISPLAY_AD"
                ],
                [
                    "EMAIL"
                ],
                [
                    "SITE_VISIT"
                ],
                [
                    "USER_SCENARIO_NODE_ENTER"
                ],
                [
                    "USER_SCENARIO_NODE_EXIT"
                ],
                [
                    "USER_SCENARIO_START"
                ],
                [
                    "USER_SCENARIO_STOP"
                ]
            ]
        }
    }
}

Here is a sample body payload

{
  "date_ranges": [
    {
      "start_date": "2021-04-22T00:00:00",
      "end_date": "2021-04-29T23:59:59"
    }
  ],
  "dimensions": [
    {
      "name": "TYPE"
    }
  ],
  "dimension_filter_clauses": {
    "operator": "OR", // OR or AND
    "filters": [
      {
        "dimension_name": "TYPE",
        "operator": "LIKE", // LIKE, EXACT or IN_LIST
        "expressions": [
          ""
        ]
      }
    ]
  },
  "metrics": []
}

Submit a funnel for results

POST https://api.mediarithmics.com/v1/datamarts/:datamartId/user_analytics_funnel

Path Parameters

Request Body

{
    "status": "ok",
    "data": {
        "global": {
            "total": 879879879,
            "steps": [
                {
                    "name": "Step 1",
                    "count": 546546546,
                    "interaction_duration": 0
                },
                {
                    "name": "Step 2",
                    "count": 897987984651,
                    "amount": 1213213.27,
                    "conversion": 11221,
                    "interaction_duration": 515151
                }
            ]
        },
        "grouped_by": []
    }
}

Here is a sample payload:

{
  "for": [
    {
      "name": "Step 1",
      "filter_clause": {
        "operator": "OR",
        "filters": [
          {
            "dimension_name": "TYPE",
            "not": false,
            "operator": "EXACT",
            "expressions": [
              "DISPLAY_AD"
            ]
          }
        ]
      }
    },
    {
      "name": "Step 2",
      "filter_clause": {
        "operator": "AND",
        "filters": [
          {
            "dimension_name": "EVENT_TYPE",
            "not": false,
            "operator": "EXACT",
            "expressions": [
              "$transaction_confirmed"
            ]
          },
          {
            "dimension_name": "CHANNEL_ID",
            "not": false,
            "operator": "IN_LIST",
            "expressions": [
              "8888",
              "6666"
            ]
          }
        ]
      }
    }
  ],
  "in": {
    "type": "DATES",
    "start_date": "2021-04-23",
    "end_date": "2021-05-01"
  },
  "limit": 5
}

Dimensions

You can build queries with the following dimensions:

  • Activity Date DATE_TIME

  • Activity Type TYPE

  • Ad Group Id ORIGIN_SUB_CAMPAIGN_ID

  • Brand BRAND

  • Channel Id CHANNEL_ID

  • Campaign Id ORIGIN_CAMPAIGN_ID

  • Category 1 CATEGORY1

  • Category 2 CATEGORY2

  • Category 3 CATEGORY3

  • Category 4 CATEGORY4

  • Creative Id ORIGIN_CREATIVE_ID

  • Device Brand DEVICE_BRAND

  • Device Browser DEVICE_BROWSER_FAMILY

  • Device Carrier DEVICE_CARRIER

  • Device Form Factor DEVICE_FORM_FACTOR

  • Device Model DEVICE_MODEL

  • Device OS DEVICE_OS_FAMILY

  • Has conversion HAS_CONVERSION

  • Has clicked HAS_CLICKED

  • Has bounced HAS_BOUNCED

  • Event type EVENT_TYPE

  • Is in segment SEGMENT_ID

  • Campaign Id CAMPAIGN_ID

  • Goal Id GOAL_ID

  • Product Id PRODUCT_ID

Dimensions filters clause

This object represents a group of filters to apply in a request.

It has:

  • An operator field to apply either an AND or an OR between the filters

  • A filters array for the list filters to apply. For more information, see Dimensions filters.

"filter_clause": {
  "operator": "OR", // OR or AND
  "filters": [
    ...
  ]
}

Dimensions filter

This object represents a filter in a filters clause.

It has;

  • A dimensions_name field to select the dimension it applies on. For more information, see Dimensions.

  • A not boolean field to apply boolean logic

  • An operator field to select one of the following queries:

    • EXACT will force the dimension to match the first expression set

    • LIKE will allow the dimension to only contain the first expression set

    • IN_LIST will allow the dimension to be one of the expressions set

  • A list of expressions representing the keywords to search for.

Examples

 // TYPE should be DISPLAY_AD
 {
    "dimension_name": "TYPE",
    "not": false,
    "operator": "EXACT",
    "expressions": [
      "DISPLAY_AD"
    ]
  }

// TYPE should contain SITE
// SITE_VISIT activities will be used
 {
    "dimension_name": "TYPE",
    "not": false,
    "operator": "LIKE",
    "expressions": [
      "SITE"
    ]
  }

// TYPE should not contain SITE
{
  "dimension_name": "TYPE",
  "not": true,
  "operator": "LIKE",
  "expressions": [
    "SITE"
  ]
}

// CHANNEL_ID should be either 8888 or 6666
{
  "dimension_name": "CHANNEL_ID",
  "not": false,
  "operator": "IN_LIST",
  "expressions": [
    "8888",
    "6666"
  ]
}

Last updated