Skip to content

Get A Triggered Campaign

Getting Started

Introduction

This API endpoint returns a Triggered campaign by id. The response includes the list of notifications in the Triggered campaign.

Request URL

https://api.pushengage.com/apiv1/triggers/{trigger_id}

Request Method

GET

Path Parameters

Parameter Name Type Description
trigger_id Number The unique identifier of the Triggered campaign.

Query Parameters

Parameter Name Type Description
analytics_start_at String optional
The UTC start date for the analytics data in the YYYY-MM-DD (ISO 8601) format.
analytics_end_at String optional
The UTC end date for the analytics data in the the YYYY-MM-DD (ISO 8601) format.

Response Object

The response object returned by the API endpoint contains the details about the Triggered campaign.

Property Name Type Description
success Boolean Indicates whether the API call was successful or not.
data Triggered Campaign The Triggered campaign object.

Triggered Campaign

Property Name Type Description
trigger_id Number The unique identifier for the campaign.
campaign_name String The name of the campaign.
campaign_type String Valid values: generic, browse, trigger, price_drop, inventory
Type of the Triggered campaign.
status String Valid values: draft, active, pause, deleted
The status of the Triggered campaign.
site_id Number The unique identifier of the site associated with the campaign.
created_at_utc String The UTC timestamp when the campaign was created in ISO 8601 format.
updated_at_utc String The UTC timestamp when the campaign was last updated in ISO 8601 format.
daily_trigger_limit Number This specifies the maximum number of notifications that can be sent to a user in a day.
weekly_trigger_limit Number This specifies the maximum number of notifications that can be sent to a subscriber in a week, which includes the last seven days.
rules Object The object includes the settings for the start and stop event names of the Triggered campaign.
rules.start_event_name String This is the name of the event that triggers the start of the campaign when it is fired by a user.
rules.stop_event_name String This is the name of the event that triggers the stop of the campaign when it is fired by a user.
options Object optional
An object that contains extra options for a triggered campaign.
options.result_name String optional
A string that specifies the name of the goal that the campaign will track.
options.campaign Object optional
An object that contains options related to the campaign settings.
options.campaign.expiry String Default: 2592000 (30 days)
A number that specifies the time duration in seconds until the campaign expires. Applicable only when campaign type is price_drop or inventory
options.campaign.price_drop_threshold Object optional
An object that contains options related to the price drop threshold. Required only when campaign type is set to price_drop.
options.campaign.price_drop_threshold.type String Valid values: absolute, percentage
A string that specifies the type of threshold.
options.campaign.price_drop_threshold.value Object A number that specifies the value of the threshold.
analytics Object An object containing analytics information for the Triggered campaign.
analytics.views Number The number of views for the notifications in the campaign.
analytics.clicks Number The number of clicks on the notifications in the campaign.
analytics.sentcount Number The number of notifications sent in the campaign.
analytics.unsubscribed Number The number of unsubscribes for the campaign.
analytics.ctr Number The click-through rate for the campaign.
analytics.result Array An array of result/goal analytics object associated with the campaign.
analytics.result.*.name String The name of the goal.
analytics.result.*.count Number The count of the goal.
analytics.result.*.value Number The value of the goal.
notifications Triggered Notification[] An array of notifications in the Triggered campaign.
utm_params Object optional
An object containing UTM parameters for the Triggered campaign.
utm_params.utm_source String The UTM source parameter value included in the URL of the notifications for the campaign.
utm_params.utm_medium String The UTM medium parameter value included in the URL of the notifications for the campaign.
utm_params.utm_campaign String The UTM campaign parameter value included in the URL of the notifications for the campaign.
utm_params.utm_term String optional
The UTM term parameter value included in the URL of the notifications for the campaign.
utm_params.utm_content String optional
The UTM content parameter value included in the URL of the notifications for the campaign.

Triggered Notification

Property Name Type Description
id Number The unique id of the notification in the Triggered campaign.
order Number The order of the notification.
title String Title of the notification. The title can include a personalization tag {{...}}.
message String The message to be displayed in the push notification. The message can include a personalization tag {{...}}.
url String The URL that opens upon clicking the received push notification. It can include a personalization tag {{...}}.
image_url String URL of the notification icon image. It can include a personalization tag {{...}}.
big_image_url String URL of the notification large image. It can include a personalization tag {{...}}.
expiry Number The expiry time of on notification in seconds. The notification will be expired if the device does not come back online within this time. The maximum time is 28 days.
require_interaction Number Valid values: 1, 0
Indicates that on devices with sufficiently large screens, the notification should remain active until the user clicks or dismisses it.
actions Array optional
An array of action button to display in the notification.
actions.*.label String The text to be shown to the user on action button. It can include a personalization tag {{...}}.
actions.*.url String The URL that opens upon clicking the action button. It can include a personalization tag {{...}}.
actions.*.image_url String optional
The URL of an icon to display with the action button.
schedule_options Object An object containing the scheduling details of the notification.
schedule_options.type String Valid values: after, rightaway
Specifies when to send this notification after sending the previous notification in the Drip campaign.
schedule_options.value Number The value specifies the time to wait before sending the notification after sending the previous notification in the campaign. It is required when the type is set to after.
schedule_options.unit Number Valid values: minutes, days
The unit of the value is required when the type is set to after. The value will be treated based on its unit. If the unit is minutes, then the value will indicate the number of minutes. If the unit is days, then the value will indicate the number of days.
schedule_options.at String The sending time of the notification in the HH:mm:ss format. It is required when the unit is days.
analytics Object An object containing analytics information for the notification.
analytics.views Number The number of view for the notification.
analytics.clicks Number The number of clicks on the notification.
analytics.sentcount Number The number of notification sent.
analytics.unsubscribed Number The number of unsubscribes for the notification.
analytics.ctr Number The click-through rate for the the notification.
analytics.result Array An array of analytics result/goal object associated with the notification.
analytics.result.*.name String The name of the goal.
analytics.result.*.count Number The count of the goal.
analytics.result.*.value Number The value of the goal.

Example

Request

curl --location -g --request GET 'https://api.pushengage.com/apiv1/triggers/{trigger_id}?analytics_start_at=2023-02-30&analytics_end_at=2023-03-30' \
--header 'api_key: <YOUR_API_KEY>'
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://api.pushengage.com/apiv1/triggers/{trigger_id}?analytics_start_at=2023-02-30&analytics_end_at=2023-03-30',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'GET',
  CURLOPT_HTTPHEADER => array(
    'api_key: <YOUR_API_KEY>'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

?>

Response

{
  "success": true,
  "data": {
    "trigger_id": 30688906,
    "campaign_name": "Triggered Campaign",
    "campaign_type": "trigger",
    "utm_params": {
      "utm_source": "PushEngage",
      "utm_medium": "Push Notification",
      "utm_campaign": "Triggered Campaign",
      "utm_term": "UTM Term",
      "utm_content": "UTM medium"
    },
    "status": "active",
    "site_id": 3289873,
    "created_at_utc": "2023-02-27T06:53:27Z",
    "updated_at_utc": "2023-02-27T06:53:27Z",
    "daily_trigger_limit": 1,
    "weekly_trigger_limit": 7,
    "options": {
      "result_name": "revenue"
    },
    "analytics": {
      "ctr": 10,
      "views": 100,
      "clicks": 10,
      "sentcount": 150,
      "unsubscribed": 10,
      "result": [
        {
          "name": "revenue",
          "count": 10,
          "value": 4000
        }
      ]
    },
    "rules": {
      "start_event_name": "add-to-card",
      "stop_event_name": "checkout"
    },
    "notifications": [
      {
        "id": 239002,
        "order": 0,
        "title": "Item {{product_name}} is waiting in cart",
        "message": "Checkout by paying {{product_price}}",
        "url": "{{checkout_url}}",
        "image_url": "{{product_thumbnail}}",
        "big_image_url": "{{product_image}}",
        "expiry": 86400,
        "require_interaction": 1,
        "actions": [
          {
            "label": "🛒 Checkout",
            "url": "{{checkout_url}}"
          }
        ],
        "schedule_options": {
          "type": "after",
          "value": 1800,
          "unit": "minutes"
        },
        "analytics": {
          "ctr": 10,
          "views": 100,
          "clicks": 10,
          "sentcount": 150,
          "unsubscribed": 10,
          "result": [
            {
              "name": "revenue",
              "count": 10,
              "value": 4000
            }
          ]
        }
      }
    ]
  }
}
{
  "success": false,
  "message": "API KEY Invalid"
}
{
  "success": false,
  "error": {
    "name": "InvalidRequestException",
    "message": "Error Message"
  }
}
{
  "success": false,
  "message": "Error message"
}