Funnel.io

Funnel.io configuration

Welcome to the tutorial on how to configure costs with the Funnel.io API. The following steps explain how to:

  • Configure a Funnel.io account with your platform partners

  • Connect the Funnel.io API to MixCommander

  • Check your costs import into the MixCommander interface

To set this up, make sure that you have all the required elements listed below:

  • Your partner Ad platforms Login & Passwords (more information can be required depending on the partner e.g. For Criteo you will also need the Criteo API Key) to connect Funnel.io with the ad platform.

  • Access to a Funnel.io account to set it up and obtain the API Key, Account ID and Project ID

  • Access to the MixCommander platform to perform quality assessments.

A) Creating a Funnel.io Account

A Funnel account needs to be created by a Funnel.io staff member.

→ If you are a client of ours, please reach out to your Consultant or contact our support department (support@commandersact.com).

→If you are part of Commanders Act staff, please contact annie@funnel.io to create a new account and provide:

  • The Commanders Act client’s name

  • The name of the agency in charge of the client (if this is indeed the case)

Once the Account is created, you will have to go through a two-step configuration process:

  • STEP 1: Connecting your advertising accounts to the Funnel.io Website

  • STEP 2: Configuring the correct Source/campaign combination within the Funnel.io Website

B) Step 1: Connecting your Advertising Accounts to the Funnel.io Website

Select “Configuration” in the top navigation bar, and go to “Ad accounts” in the left navigation bar:

Hit “+ Advertising accounts” to open up the ad platform selection popup

Find the advertising platform you want to connect and follow the instructions. How to connect may vary depending on how Funnel integrates with each platform.

If you can’t find the advertising platform you’re looking for you can add it. Scroll down to the bottom of the popup and hit “Add it”:

Each advertising account you add will show up on the Ad accounts view. You can see their respective status, remove them as well as reconnect them if necessary.

C) Step 2: Configuring the Correct Source/Campaign Combination within the Funnel.io Website

Click on Websites > Your Website to configure.

Follow the setup wizard.

1- Skip Google Analytics link account

2- Import your advertising account (check the account that you have configured above)

3- Set up your currency

4 – Set up the Channel

How do I configure a Channel correctly so it matches data in MixCommander?

A correct channel configuration is necessary to ensure that data coming from a specific ad platform is associated to the corresponding traffic sources registered in MixCommander. When this is done you will notice how costs and channels/sources correlate properly.

A Channel in Funnel correspond to traffic source in MixCommander.

So how do you do this?

Editing a Channel:

To change the definition of a Channel, hit “Edit” next to it in the Website Settings view:

You will now be able to change what data this channel should capture and rename it with a unique label matching channels and sources present in MixCommander.

Select the campaign associated to the following rules:

Global report: Traffic & Conversions

CONGRATULATIONS! Your data has been configured!

Mapping Funnel.io and MixCommander

The FUNNEL API provides information on two levels (channel and campaign); they have to match Mix’s three levels (channel, source and campaign):

Channel/Source Level

A channel’s name, when configured in Funnel.io, has to be UNIQUE and be a match to only ONE CHN/SRC combination in Mix

Example 1: If in your Mix trafficking you have a unique source name per channel, you can name your Funnel.io channel the same as your source.

Example 2: If in your Mix trafficking several channels share the same source name, you have to name every Funnel.io channel differently.

NB: Please share the entire mapping table with your MixCommander consultant.

Campaign Level

Costs are displayed in MixComander on the campaign level in the Global Report All Channels – by campaign. To do so, you will need to populate the “cmp” parameter in your redirection tracking with the exact campaign name in your ad platform.

Example for a click on a Bing link:

http://client.commander1.com/v3/?tcs=123&chn=SEM&src=bing&cmp=IT%20Search_it%20Brand&…

The list of campaign names is available in Funnel.io

Connecting the Funnel.io API

API structure

With the Funnel API you can reunite all ad platform and Google Analytics data in your Funnel Account broken down by day, Channel and campaign. Calls to the API are issued through REST/JSON HTTP requests.

The URL’s format is:

https://api.funnel.io/<path>?param1=value&param2=value

The path can contain argument parts as detailed per endpoint below. Unless otherwise noted, you need to supply your apiToken or the Account ID as parameters.

Methods:

  • HEAD

  • OPTIONS

  • GET

Required arguments:

  • project_id

  • account_id

  • group_by

  • apiToken

https://api.funnel.io/api/account/v1/$ACCOUNT_ID/project/$PROJECT_ID ?group_by=$GROUP_BY &start_day=$START_DAY&end_day=$END_DAY &apiToken=$API_TOKEN

API keys

1) $API_TOKEN

Get API Key into Funnel: Configuration>>Details

2) $ACCOUNT_ID

You can find this in the browser URL when logged in to Funnel. Go to one of your Websites and then to Channels under Analysis and look for the Account ID in the browser URL. The Account ID is located in the following part of the URL: …/account/{$ACCOUNT_ID}/project/…

3) $PROJECT_ID

Project is synonymous with “Website” in the Funnel user interface and you will have one Project ID per Website. You can find this in the browser URL when logged in to Funnel. Go to one of your Websites and then to Channels under Analysis and look for the account id in the browser URL. The Project ID is located in the following part of the URL: …/project/{$PROJECT_ID}/…

4) $GROUP_BY

Currently supports two different groupings, “day” or “campaign_day”.

Day: values will be grouped by Channel and day.

Campaign_day: values will be grouped by Channel, campaign and day. This is the option to use if you want the most granular data.

5) $START_DAY

The first date in the range of dates to include in the result, on the format “YYYY-MM-DD”, eg 2015-10-01

6) $END_DAY

The last date in the range of dates to include in the result, on the format “YYYY-MM-DD”, eg 2015-10-01

7) RESPONSE

The response from the API is a JSON that has some metadata and then an array with JSON objects per Channel, day and optionally campaign, where each object has name/value pairs for each metric field.

The Channel metadata in the “channels” array contains timestamps (in UTC).

  • lastRead the last successful sync from the source to Funnel

  • maxDate the latest date with metrics for this source

  • minDate the earliest date with metrics for this source

The “sources” object that is not in the “channels” array reflects the state of the Google Analytics data.

Note that monetary values are encoded as 1000 * the base unit of currency. E.g 12.34 USD will be encoded as 12340.

The JSON’s format is:

{ “accountName”: “ACCOUNT NAME”, “channels”: [ { “name”: “CHANNEL A” “sources”: { “lastRead”: “2016-01-21T08:21:17”, “maxDate”: “2016-01-22T00:00:00”, “minDate”: “2013-01-01T00:00:00”, } }, { “name”: “CHANNEL B”, “sources”: { “lastRead”: “2016-01-21T08:21:17”, “maxDate”: “2016-01-22T00:00:00”, “minDate”: “2013-01-01T00:00:00”, } } ], “channelsReviewed”: true, “currency”: “USD”, “id”: “PROJECT_ID”, “name”: “PROJECT_NAME”, “per_day”: [ { “channel”: “CHANNEL A”, “campaign”: “Campaign x”, “common-cost”: 153430, “day”: “2015-10-01”, “ga-sessions”: 375 }, { “channel”: “CHANNEL B”, “campaign”: “Campaign y”, “common-cost”: 5078710, “day”: “2015-10-01”, “ga-sessions”: 5514 }, { “channel”: “CHANNEL A”, “campaign”: “Campaign x”, “common-cost”: 2051030, “day”: “2015-10-02”, “ga-sessions”: 2136 }, { “channel”: “CHANNEL B”, “campaign”: “Campaign y”, “common-cost”: null, “day”: “2015-10-02”, “ga-sessions”: 503 } ], “sources”: { “lastRead”: “2015-11-17T00:21:14”, “maxDate”: “2015-11-02T00:00:00”, “minDate”: “2015-12-01T00:00:00” } }

Note: you can download the JSONVIEW chrome plugin to format data

Quality Assessment

Note: The cost Funnel API is updated several times a day. In order to obtain the most recent costs, we verify the API every four hours. If you notice discrepancies, they may be due to synchronization delays. If the problem persists, please contact our support department.

→ Cost summaries are accessible by clicking the Websistes tab in funnel.io. Click Analysis/Channels and select the desired period. You can export files to excel.

→ Costs will be available in MixCommander’s global report, follow this path: Traffic & Conversions >> All channels and All channels – by Campaign

Last updated