View Campaigns Delivery report

View Campaigns Delivery report

GET https://api.ocamba.com/v1/hood/reports/campaigns/delivery
Campaigns Delivery report enables analysis of critical parameters and essential information

Tip

Sortable fields are: run_date, container_id, container_name, campaign_id, campaign_name, deal_id, deal_name, ssp_partner_id, ssp_partner_name, dsp_partner_id, dsp_partner_name, channel_type, message_id, message_name, ab_test_id, ab_test_name, total_user, total_profile, sent, delivered, unsubscribed, failed, impression, total_click, churn, opened, open_rate, click_rate, delivery_rate, undelivered, avg_delivery_time, provider_error, provider_error_rate, soft_bounced, hard_bounced, bounce_rate.

Filterable fields are: run_date, container_id, container_name, campaign_id, campaign_name, deal_id, deal_name, ssp_partner_id, ssp_partner_name, dsp_partner_id, dsp_partner_name, channel_type, message_id, message_name, ab_test_id, ab_test_name, total_user, total_profile, sent, delivered, unsubscribed, failed, impression, total_click, churn, opened, open_rate, click_rate, delivery_rate, undelivered, avg_delivery_time, provider_error, provider_error_rate, soft_bounced, hard_bounced, bounce_rate.

API provided filling empty entry points in between first and last date/hour. You should set with_fill parameter to true, but just in case the date dimension is requested only. It is in relation with resolution. You should pass day or hour, which defines what type of breakdown you request, default setup displays daily breakdown.

To get data by the time in your local time zone, you should set tz query parameter to the specific time zone. See the list of valid time zones here -> https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List.

For easier search, Reports API gives you the possibility of using one of the following labels: today, yesterday, last-7-days, last-30-days, last-24-hours, this-month, last-month, current-hour, last-hour, last-48-hours, last-2-days, month-to-date, month-to-yesterday, quarter-to-date.

The metrics available for reporting vary depending on the channel type. Each channel has its own set of metrics that are tracked to monitor performance. Below is a breakdown of the metrics by channel type:

  • push: total_user, total_profile, sent, delivered, unsubscribed, failed, total_click, churn, click_rate
  • adex: total_user, total_profile, sent, delivered, failed, impression, total_click
  • sms: total_user, total_profile, sent, delivered, failed, total_click
  • email: total_user, total_profile, sent, delivered, failed, opened, open_rate, soft_bounced, hard_bounced, bounce_rate
    • email custom provider: total_user, total_profile, sent
      When querying the Campaigns Delivery Report, ensure you specify the appropriate channel to retrieve the corresponding metrics.
Note

When filtering stat_date, use one of the following formats:

  • Single format: YYYY-mm-dd;

    Displaying stats for this specific day
  • Range format: rf:YYYY-mm-dd,YYYY-mm-dd;
    Requires usage of the range operators:
    • r - range - The value must be in a specified open range, where both endpoints are excluded.
    • rf - range full - The value must be in a specified closed range, where both endpoints are included.
    • rl - range left - The value must be in a specified half-open range, where only left or start point is included.
    • rr - range right - The value must be in a specified half-open range, where only right or end point is included.

      Displaying stats in this specific range.
  • Hour range format: rl: YYYY-mm-dd hh:00:00,YYYY-mm-dd hh:00:00
    If you exclude this parameter, the default setup displays “today” stats.

Rate limits:

  • Burst: 10/s
  • Steady: 150/m

Query parameters

parameters

Response schemas

curl -X GET \
 "https://api.ocamba.com/v1/hood/reports/campaigns/delivery" \
  -H "Authorization: Bearer {TOKEN}"
const url = 'https://api.ocamba.com/v1/hood/reports/campaigns/delivery';
const options = {
  method: 'GET',
  headers: {
    Authorization: `Bearer {TOKEN}`
  }
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
$ch = curl_init("https://api.ocamba.com/v1/hood/reports/campaigns/delivery");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_HTTPHEADER, [
  "Authorization: Bearer {TOKEN}"
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);

Responses

200 OK

[
    {
      {
        "container_name": "Example container",
        "campaign_id": "1000123",
        "campaign_name": "Campaign - Example",
        "run_date": "2024-11-14T12:45:00Z",
        "deal_id": "100011",
        "deal_name": "deal cycle",
        "ssp_partner_id": "1234567",
        "ssp_partner_name": "Ocamba",
        "dsp_partner_id": "1000499",
        "dsp_partner_name": "partner cycle",
        "channel_type": "email",
        "total_profile": 1,
        "sent": 0,
        "delivered": 0,
        "failed": 1,
        "soft_bounced": 1,
        "hard_bounced": 0,
        "total_click": 0,
        "churn": 0
      },
      {
        "container_name": "Example container",
        "campaign_id": "1000123",
        "campaign_name": "Campaign - Example",
        "run_date": "2024-11-14T12:05:00Z",
        "deal_id": "1000557",
        "deal_name": "deal cycle",
        "ssp_partner_id": "1234567",
        "ssp_partner_name": "Ocamba",
        "dsp_partner_id": "1000499",
        "dsp_partner_name": "partner cycle",
        "channel_type": "adex_push",
        "total_profile": 1,
        "sent": 15,
        "delivered": 5,
        "failed": 3,
        "soft_bounced": 2,
        "hard_bounced": 1
        "total_click": 4,
        "churn": 0
      }
    }
]

400 Bad Request

{
  "code": 400,
  "title": "Bad request.",
  "message": "The request is not valid.",
  "trace_id": "99a84211-f73d-4ff8-acdf-eb3e06bb9d62"
}

500 Internal Server Error

{
  "code": 500,
  "title": "Internal server error.",
  "trace_id": "99a84211-f73d-4ff8-acdf-eb3e06bb9d62"
}
Responses