Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Last Updated:

Lastupdatedate

Livesearch
placeholderSearch the Vibes Developer Wiki
typepage



Overview

A callback entity is a registration to receive callback events to an external URL. It is identified by a CallbackID, which uniquely identifies the record. Additionally, each callback is unique for a given event type and active date range.


Panel
borderColor#2B9CD7

Topics in this Section

Page Tree
root@self
startDepth2




Callback Entity

The following is the JSON representation of a callback entity within the APIs.

Code Block
{
   "callback_id":"Hzh39LP3",
   "event_type":"person_added",
   "destination":{
      "url":"http://destination.url",
      "method":"POST",
      "content_type":"application/json"
   },
   "start_date":"2017-01-01T00:00Z",
   "end_date":"2017-02-01T00:00Z",
   "url":"/companies/:company_idkey/mobiledb/config/callbacks/:callback_id",
   "created_at":"2017-04-15T14:30Z",
   "updated_at":"2017-05-18T19:30Z"
}

Elements

Data Element

Type

Max Char Length

Description

Required

Default

callback_id

String

8

Vibes unique identifier for each callback record.

Required

 


event_type

String

100

Event type to trigger this callback.

Required

 


destination.url

String

50

External URL to submit the callback data.

Required

 


destination.method

String

4

Method to submit the data to the destination URL.
POST and PUT are valid methods.

Optional

POST

destination.content_type

String

16

Content type to set when submitting the data to the destination URL.

Valid content types:

  • Application/JSON
  • Text/JSON
  • Application/XML
  • Text/XML

Optional

Application/JSON

start_date

Timestamp

20

Date this callback starts. It should be in the ISO 8601 format - for example: 2017-04-05T14:30Z.

Optional

Now

end_date

Timestamp

20

Date this callback ends. It should be in the ISO 8601 format - for example: 2017-04-05T14:30Z.

Optional

No end date

url

String

50

Unique resource URL for the callback.

N/A

 


created_at

Timestamp

20

Date this callback was created. It should be in the ISO 8601 format - for example: 2017-04-05T14:30Z.

N/A

 


updated_at

Timestamp

20

Date this callback was last updated. It should be in the ISO 8601 format - for example: 2017-04-05T14:30Z.

N/A

 


list_idString20Vibes unique identifier for a Subscription List.Required 
campaign_idString20Vibes unique identifier for an Acquisition Campaign.Required 

Person Event Types

The person_added callback event is triggered when a new Person record is added into the Mobile Database.

The person_updated callback event is triggered when an existing Person record has been modified in the Mobile Database.

Subscription Event Types

The subscription_added callback event is triggered when a Person has been added to a Subscription List.

The subscription_removed callback event is triggered when a Person has been removed from a Subscription List.

Code Block
{
  ...
  "event_type": "subscription_added",
  "subscription_added": {
    "list_id": "l1234"
  },
  ...
}


Code Block
{
  ...
  "event_type": "subscription_removed",
  "subscription_removed": {
    "list_id": "l1234"
  },
  ...
}

Acquisition Campaign Event Types

The ack_participant_added callback event is triggered when a new Participant has been added to the Acquisition Campaign.

The ack_participant_changed callback event is triggered when a Participant has confirmed or declined the opt-in.

Code Block
{
  ...
  "event_type": "ack_participant_added",
  "ack_participant_added": {
    "campaign_id": "c1234"
  },
  ...
}


Code Block
{
  ...
  "event_type": "ack_participant_changed",
  "ack_participant_changed": {
    "campaign_id": "c1234"
  },
  ...
}

Subscription List Event Types

The subscription_list_added callback event is triggered when a new Subscription List has been created in the Mobile Database.

The subscription_list_updated callback event is triggered whenever a Subscription List has been modified in the Mobile Database.

Push Device Event Types

The device_added callback event is triggered when a new push device has been registered by the Vibes Push SDK, or when a device has been moved from one Person to another.

The device_removed callback event is triggered when a new push device has been unregistered by the Vibes Push SDK, or when a device has been move from one Person to another.  

The device_updated callback is triggered when the push token is added or removed from the push device. This can be used to understand who in your audience is addressable via push messages. To reduce callback frequency, it is not triggered when other elements of the device are updated; those elements can be pulled periodically, if required. 

Code Block
{
  ...
  "event_type": "device_added",
  "device_added": {
    "app_id": "ca516f39-a28a-4325-b513-f0e00f75cape'"
  },
  ...
}
Code Block
{
  ...
  "event_type": "device_removed",
  "device_removed": {
    "app_id": "ca516f39-a28a-4325-b513-f0e00f75cape'"
  },
  ...
}

 

Code Block
{
  ...
  "event_type": "device_updated",
  "device_updated": {
    "app_id": "ca516f39-a28a-4325-b513-f0e00f75cape'"
  },
  ...
}

Wallet Event Types

The wallet_item_install callback event is triggered when an Apple Wallet or Google Pay pass has been installed for a given campaign. 

The wallet_item_remove callback event is triggered when an Apple Wallet or Google Pay pass has been removed for a given campaign. 

Callback Body

Code Block
{
        ...
        "event_type": "wallet_item_install",
        "wallet_item_install": {
             "campaign_token": ":smartlink_token"
        },
		...
}

The wallet_item_remove callback event is triggered when an Apple Wallet or Google Pay pass has been removed for a given campaign. 

Code Block
{
        ...
        "event_type": "wallet_item_remove",
        "wallet_item_install": {
            "campaign_token": ":smartlink_token"
        },
		...
}

The supported event_types are wallet_item_install and wallet_item_remove.