Get Campaign Report


The Get Campaign Report API lets you get campaign metrics.

To get a campaign report, you specify the id of the report needed. If the campaign has not completed yet, you will receive an error message indicating that status.

Base URL

Here is an example base URL from the account in the India region:


Refer Region for more details.

HTTP Method



Refer Headers for more details.

Body Parameter

The body is uploaded as a JSON payload.

ParameterDescriptionTypeExample Value
idCleverTap campaign id of the campaign whose metrics you want to view. You can find this id in your CleverTap dashboard under the Push sectionint1457432766

Below is an example payload.

    "id": 1457432766

Example Request

Here is an example cURL request to the Get Campaign Report API showing the headers needed to authenticate the request from the account in the India region:

curl -X POST -d '{ "id": 1457432766}' "" \
-H "X-CleverTap-Account-Id: ACCOUNT_ID" \
-H "X-CleverTap-Passcode: PASSCODE" \
-H "Content-Type: application/json"
require 'net/http'
require 'uri'
require 'json'

uri = URI.parse("")
request =
request.content_type = "application/json"
request["X-Clevertap-Account-Id"] = "ACCOUNT_ID"
request["X-Clevertap-Passcode"] = "PASSCODE"
request.body = JSON.dump({
  "id" => 1457432766

req_options = {
  use_ssl: uri.scheme == "https",

response = Net::HTTP.start(uri.hostname, uri.port, req_options) do |http|
import requests

headers = {
    'X-CleverTap-Account-Id': 'ACCOUNT_ID',
    'X-CleverTap-Passcode': 'PASSCODE',
    'Content-Type': 'application/json',

data = '{ "id": 1457432766}'

response ='', headers=headers, data=data)
$headers = array(
    'X-CleverTap-Account-Id' => 'ACCOUNT_ID',
    'X-CleverTap-Passcode' => 'PASSCODE',
    'Content-Type' => 'application/json'
$data = '{ "id": 1457432766}';
$response = Requests::post('', $headers, $data);
var request = require('request');

var headers = {
    'X-CleverTap-Account-Id': 'ACCOUNT_ID',
    'X-CleverTap-Passcode': 'PASSCODE',
    'Content-Type': 'application/json'

var dataString = '{ "id": 1457432766}';

var options = {
    url: '',
    method: 'POST',
    headers: headers,
    body: dataString

function callback(error, response, body) {
    if (!error && response.statusCode == 200) {

request(options, callback);

Example Response

    "result": {
        "clicked": 28,
        "sent": 82
    "status": "success"


If the campaign has not been completed yet, you will receive the error response below.

    "error": "This target hasn't been completed",
    "status": "fail"

For more information on request limit, refer to API Request Limit. To understand the common queries and concerns related to CleverTap APIs, refer to API FAQs.