Skip to content

Get A Drip Autoresponder

Getting Started

Introduction

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

Request URL

https://api.pushengage.com/apiv1/drips/{drip_id}

Request Method

GET

Path Parameters

Parameter Name Type Description
drip_id Number The unique identifier of the Drip Autoresponder 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 Drip Autoresponder campaign.

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

Drip Autoresponder

Property Name Type Description
drip_id Number The unique identifier for the Drip Autoresponder campaign.
campaign_name String The name of the Drip Autoresponder campaign.
drip_type String Valid values: generic, welcome
Type of the Drip campaign.
status String Valid values: draft, active, pause, deleted
The status of the Drip campaign.
site_id Number The unique identifier of the site associated with the Drip campaign.
created_at_utc String The UTC timestamp when the Drip campaign was created in ISO 8601 format.
updated_at_utc String The UTC timestamp when the Drip campaign was last updated in ISO 8601 format.
audience Audience Defines the target audience for the Drip campaign.
options Object An object containing extra options for the drip campaign.
options.result_name String The name of the goal used for Goal tracking in the Drip campaign.
analytics Object An object containing analytics information for the Drip campaign.
analytics.views Number The number of views for the notifications in the Drip campaign.
analytics.clicks Number The number of clicks on the notifications in the Drip campaign.
analytics.sentcount Number The number of notifications sent in the Drip campaign.
analytics.unsubscribed Number The number of unsubscribes for the Drip campaign.
analytics.ctr Number The click-through rate for the Drip campaign.
analytics.result Array An array of result/goal analytics object associated with the Drip 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 Drip Notification[] An array of notifications in the Drip campaign.
utm_params Object optional
An object containing UTM parameters for the Drip 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.

Audience

Property Name Type Description
filter Object Specifies the filter criteria for selecting the audience.
filter.value Array An Array of audience filter rule group. Each filter rule group contains an array of audience filter rule. An audience matching all of the filter rule in any of the filter rule group is selected for the Drip campaign.
filter.value.*.*.field String Valid values: segments, country, states, city, device, device_type
Specifies the filter rule field to be used for filtering the audience.
filter.value.*.*.op String Valid values: all, in, nin
Specifies the filter rule operation to be performed for filtering the audience.
filter.value.*.*.value Number[] | String[] Specifies the filter rule value to be used for filtering the audience.

Drip Notification

Property Name Type Description
id Number The unique id of the notification in the Drip campaign.
order Number The order of the notification.
title String Title of the notification.
message String The message to be displayed in the push notification.
url String The URL that opens upon clicking the received push notification.
image_url String URL of the notification icon image.
big_image_url String URL of the notification large image.
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 An array of action button to display in the notification.
actions.*.label String The text to be shown to the user on action button.
actions.*.url String The URL that opens upon clicking the action button.
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, dow
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. If the unit is dow, then the value will be 0 for Sunday, 1 for Monday, 2 for Tuesday, 3 for Wednesday, 4 for Thursday, 5 for Friday, and 6 for Saturday.
schedule_options.at String The sending time of the notification in the HH:mm:ss format. It is required when the unit is days or dow.
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 -X GET \
  'https://api.pushengage.com/apiv1/drips/{drip_id}?analytics_start_at=2023-02-30&analytics_end_at=2023-03-30' \
  -H 'api_key: <YOUR_API_KEY>'
<?php
$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://api.pushengage.com/apiv1/drips/{drip_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_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "api_key: <YOUR_API_KEY>"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
?>

Response

{
  "success": true,
  "data": {
    "drip_id": 28909029,
    "campaign_name": "Drip Autoresponder Cmpaign",
    "audience": {
      "filter": {
        "value": [
          [
            {
              "field": "country",
              "op": "in",
              "value": ["India", "Canada", "United States", "Australia"]
            },
            { "field": "segment", "op": "in", "value": [746353, 98786] }
          ]
        ]
      }
    },
    "status": "active",
    "site_id": 3290873,
    "created_at_utc": "2023-02-27T08:56:45Z",
    "updated_at_utc": "2023-02-27T08:56:45Z",
    "drip_type": "generic",
    "utm_params": {
      "utm_source": "PushEngage",
      "utm_medium": "Push Notification",
      "utm_campaign": "Drip Autoresponder",
      "utm_term": "UTM Term",
      "utm_content": "UTM Content"
    },
    "options": {
      "result_name": "revenue"
    },
    "analytics": {
      "ctr": 10,
      "views": 100,
      "clicks": 10,
      "sentcount": 150,
      "unsubscribed": 10,
      "result": [
        {
          "name": "revenue",
          "count": 10,
          "value": 200
        }
      ]
    },
    "notifications": [
      {
        "id": 5397090,
        "order": 0,
        "title": "Notification Title",
        "message": "Notification Message",
        "url": "https://example.com/landing-page/",
        "image_url": "https://example.com/img/notification-icon-image.jpg",
        "big_image_url": "https://example.com/img/notification-large-image.jpg",
        "expiry": 1040520,
        "require_interaction": 1,
        "actions": [
          {
            "label": "Action 1",
            "url": "https://example.com/action-1-landing-page/",
            "image_url": "https://example.com/img/action-1-icon-16x16.jpg"
          },
          {
            "label": "Action 2",
            "url": "https://example.com/action-2-landing-page/"
          }
        ],
        "schedule_options": {
          "type": "after",
          "value": 2,
          "unit": "days",
          "at": "16:30:00"
        },
        "analytics": {
          "ctr": 10,
          "views": 100,
          "clicks": 10,
          "sentcount": 150,
          "unsubscribed": 10,
          "result": [
            {
              "name": "revenue",
              "count": 10,
              "value": 200
            }
          ]
        }
      }
    ]
  }
}
{
  "success": false,
  "message": "API KEY Invalid"
}
{
  "success": false,
  "error": {
    "name": "InvalidRequestException",
    "message": "Error Message"
  }
}
{
  "success": false,
  "message": "Error message"
}