Reporting

Operations for reporting

Entity

POST /advertisers/reporting/entity

Access a custom reporting based on one or up to 10 column types. Column selection is mandatory for this endpoint and allowed values are listed below. Filters, settings and metric filters can be used to narrow down the search.

This endpoint allows grouping by categories and subcategories. For example, to get a report that details performance for every affiliate, select column affiliate. To get a more precise understanding of affiliate performance by offer, select columns offer and affiliate. This will generate reporting for every offer-affiliate combination. Can be used in combination with filters.

This endpoint outputs these 3 distinct objects :

Table : This object is the reporting itself split in desired categories (limit to 10,000 rows)
Performance : Breaks the result into timestamp division. Useful to print a graph of the performance relative to time.
Summary : Aggregates the result of each metric into one value for the time period.

Please note that the table portion is limited to 10,000 rows. If you hit the limit, response will include “incomplete_results”: true in the payload.

Requested intervals are limited to a maximum duration of one year. For example, requests with "from": "2022-01-01", "to": "2023-12-31" are considered invalid and will return an error.

Columns

Column Description
unix_timestamp Group by unix timestamp
offer Group by offer id
affiliate Group by affiliate id
creative Group by creative id
coupon_code Group by coupon code
country Group by country
country_code Group by country code
carrier Group by carrier
platform Group by platform
os_version Group by OS version
isp Group by isp
device_type Group by device type
device_make Group by device brand (make)
model Group by device model
browser Group by browser
language Group by language
sub1 Group by sub1
sub2 Group by sub2
sub3 Group by sub3
sub4 Group by sub4
sub5 Group by sub5
adv1 Group by adv1
adv2 Group by adv2
adv3 Group by adv3
adv4 Group by adv4
adv5 Group by adv5
event_name Group by event name
region Group by region
city Group by city
dma Group by dma
connection_type Group by connection type
source_id Group by source id
hour Group by hour
date Group by date
week Group by week
month Group by month
year Group by year
offer_url Group by offer url
app_identifier Group by app identifier
bundle_id Group by bundle id

cURL
curl --request POST 'https://api.eflow.team/v1/advertisers/reporting/entity' \
--header 'X-Eflow-API-Key: <INSERT API KEY>'
--data '<INSERT PAYLOAD>'

Request

{
  "from": "2020-10-01",
  "to": "2020-10-02",
  "timezone_id": 67,
  "currency_id": "USD",
  "query": {
    "filters": [
      {
        "resource_type": "offer",
        "filter_id_value": "1"
      }
    ],
    "metric_filters": [
      {
        "metric_type": "impression",
        "operator": "less_than",
        "metric_value": 0
      }
    ],
    "exclusions": [
      {
        "resource_type": "offer",
        "filter_id_value": "3"
      }
    ]
  },
  "columns": [
    {
      "column": "offer"
    }
  ]
}

Conversion

POST /v1/advertisers/reporting/conversions

Requested intervals are limited to a maximum duration of one year. For example, requests with “from”: “2022-01-01”, “to”: “2023-12-31” are considered invalid and will return an error.

cURL
curl --request POST 'https://api.eflow.team/v1/advertisers/reporting/conversions' \
--header 'X-Eflow-API-Key: <INSERT API KEY>'
--data '<INSERT PAYLOAD>'
Request
{
  "show_conversions": true,
  "show_events": true,
  "show_only_vt": false,
  "show_only_ct": false,
  "from": "2022-10-10",
  "to": "2022-10-11",
  "timezone_id": 90,
  "currency_id": "USD",
  "query": {
    "filters": [
      {
        "resource_type": "offer",
        "filter_id_value": "3"
      }
    ],
    "search_terms": [ ]
  }
}

Response

{
  "conversions": [
    {
      "conversion_id": "362f1f1eeba14c749db6acf5113bf0fb",
      "conversion_unix_timestamp": 1702308435,
      "cost_type": "RPA",
      "cost": 1,
      "session_user_ip": "217.66.156.135",
      "conversion_user_ip": "217.66.156.135",
      "country": "Russia",
      "region": "Sankt-peterburg",
      "city": "St Petersburg",
      "dma": 0,
      "carrier": "MTS Russia",
      "platform": "macOS",
      "os_version": "10.15",
      "device_type": "PC",
      "brand": "Apple",
      "browser": "Chrome",
      "language": "en",
      "http_user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36",
      "is_event": false,
      "transaction_id": "33463db068c9455eb8ef3f9727c2f7c8",
      "click_unix_timestamp": 1702308421,
      "event": "",
      "currency_id": "USD",
      "isp": "",
      "adv1": "facebook",
      "adv2": "",
      "adv3": "",
      "adv4": "",
      "adv5": "",
      "order_id": "",
      "sale_amount": 0,
      "relationship": {
        "offer": {
          "network_offer_id": 1,
          "network_id": 1,
          "name": "Example Offer",
          "offer_status": "active"
        },
        "events_count": 0,
        "affiliate_id": 0,
        "affiliate": {
          "network_affiliate_id": 0,
          "network_id": 1,
          "name": "N/A",
          "account_status": "inactive"
        },
        "sub1": "media",
        "sub2": "",
        "sub3": "",
        "sub4": "",
        "sub5": "",
        "source_id": "",
        "offer_url": null
      },
      "coupon_code": "SUMMER"
    }
  ],
  "paging": {
    "page": 1,
    "page_size": 1,
    "total_count": 1
  }
}

Conversion Report Export

POST /v1/affiliates/reporting/conversions/export

The export endpoint lets you export in CSV or JSON format.

Please note that when using the JSON format, the results will be newlined delimited JSON.

You must add the format properly to the payloads the format can be either :

  • csv
  • json

Requested intervals are limited to a maximum duration of one year. For example, requests with "from": "2022-01-01", "to": "2023-12-31" are considered invalid and will return an error.

cURL
curl --request POST 'https://api.eflow.team/v1/advertisers/reporting/conversions/export' \
--header 'X-Eflow-API-Key: <INSERT API KEY>' \
--header 'Content-Type: application/json' \
--data '<INSERT PAYLOAD>'

Example : Export conversions and events on offer 16 in JSON format

{
    "from": "2023-01-30",
    "to": "2023-02-06",
    "timezone_id": 80,
    "show_conversions": true,
    "show_events": true,
    "query":{
        "filters": [
            {
                "filter_id_value": "16",
                "resource_type": "offer"
            }
        ],
        "search_terms": []
    },
    "format": "json"

}


Conversion By ID

GET /v1/advertisers/reporting/conversions/:conversionId

Path Parameters

Parameter Description
conversionId The ID of the conversion

cURL
curl --request GET 'https://api.eflow.team/v1/advertisers/reporting/conversions/<INSERT CONVERSION ID>' \
--header 'X-Eflow-API-Key: <INSERT API KEY>'
Response
{
  "conversion_id": "362f1f1eeba14c749db6acf5113bf0fb",
  "conversion_unix_timestamp": 1702308435,
  "cost_type": "RPA",
  "cost": 1,
  "session_user_ip": "217.66.156.135",
  "conversion_user_ip": "217.66.156.135",
  "country": "Russia",
  "region": "Sankt-peterburg",
  "city": "St Petersburg",
  "dma": 0,
  "carrier": "MTS Russia",
  "platform": "macOS",
  "os_version": "10.15",
  "device_type": "PC",
  "brand": "Apple",
  "browser": "Chrome",
  "language": "en",
  "http_user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36",
  "is_event": false,
  "transaction_id": "33463db068c9455eb8ef3f9727c2f7c8",
  "click_unix_timestamp": 1702308421,
  "event": "",
  "currency_id": "USD",
  "isp": "",
  "adv1": "facebook",
  "adv2": "",
  "adv3": "",
  "adv4": "",
  "adv5": "",
  "order_id": "",
  "sale_amount": 0,
  "relationship": {
    "offer": {
      "network_offer_id": 1,
      "network_id": 1,
      "name": "Clash of Clans Free",
      "offer_status": "active"
    },
    "events_count": 0,
    "affiliate_id": 0,
    "affiliate": {
      "network_affiliate_id": 0,
      "network_id": 1,
      "name": "N/A",
      "account_status": "inactive"
    },
    "sub1": "media",
    "sub2": "",
    "sub3": "",
    "sub4": "",
    "sub5": "",
    "source_id": "",
    "offer_url": null
  },
  "coupon_code": "SUMMER"
}

Dashboard Summary

This endpoint list comparative data for standard metrics. For every metrics, values for current month vs total of last month and today vs total of yesterday are listed.

Performance value is computed by comparing yesterday value at the same moment of the day as now.

You must pass the timezone_id in the body.

POST /v1/advertisers/dashboard/summary

cURL
curl --request POST 'https://api.eflow.team/v1/advertisers/dashboard/summary' \
--header 'X-Eflow-API-Key: <INSERT API KEY>'
--header 'content-type: application/json' \
--data '<INSERT PAYLOAD>'
Example Request
curl --request POST 'https://api.eflow.team/v1/advertisers/dashboard/summary' \
--header 'X-Eflow-API-Key: <INSERT API KEY>'
--header 'content-type: application/json' \
--data '{ "timezone_id" : 80 }'
Response
{
  "click": {
    "current_month": 1094345,
    "last_month": 2330179,
    "today": 34245,
    "trending_percentage": -1.6,
    "yesterday": 46221
  },
  "conversion": {
    "current_month": 20945,
    "last_month": 31160,
    "today": 676,
    "trending_percentage": 2.1,
    "yesterday": 878
  },
  "cost": {
    "current_month": 297842,
    "last_month": 980543,
    "today": 8700.5,
    "trending_percentage": -12.6,
    "yesterday": 12118
  },
  "cvr": {
    "current_month": 1.914,
    "last_month": 1.337,
    "today": 1.974,
    "yesterday": 1.9
  },
  "events": {
    "current_month": 4667,
    "last_month": 13918,
    "today": 142,
    "trending_percentage": 0,
    "yesterday": 194
  },
  "evr": {
    "current_month": 22,
    "last_month": 44,
    "today": 21,
    "trending_percentage": 0,
    "yesterday": 22
  },
  "imp": {
    "current_month": 1,
    "last_month": 0,
    "today": 0,
    "trending_percentage": 0,
    "yesterday": 0
  }
}