Help Center

| Submit or View Help Requests | Developer Docs |

View desktop instructions
View mobile app instructions
Enable Event Notification Postbacks for Brands

Event Notification Postbacks are standard HTTP notifications that notify you when an action, click, or other event occurs. Event Postbacks can be configured to feed event data into your internal reporting systems, giving an up-to-date view of your events.

View Event Notification Postbacks

  1. From the left navigation menu, select ellipsis-v-solid.svg [Menu] → Settings.

  2. In the left menu, scroll down and select Event Notifications.

Enable Event Postbacks

The instructions below will help you configure the following five types of Event Postbacks:

  • Action Lifecycle Events will issue an HTTP request to a specified URL (and any included parameters) when an action is tracked, modified, or reversed.

  • Tracking Value Request Events will issue an HTTP request to a specified URL (and any included parameters) when tracking requests are created.

  • Action Clearing Events will issue an HTTP request to a specified URL (and any included parameters) when actions are cleared.

  • Action Inquiry Events will issue an HTTP request to a specified URL (and any included parameters) when action inquiries are created or resolved.

  • Job Completion Events will issue an HTTP request to a specified URL (and any additional parameters) when a job has been completed for a Report Export or Click Export.

  1. From the Event Notification Postbacks screen, hover over the  heading you want to enable and select pencil-alt-solid.svg [Edit] on the right side.

  2. Add the URL that impact.com should use for Event Postbacks, along with any optional parameters in the URL. Refer to the section below for a full list of these parameters and an example URL (for the GET method).

  3. Select the HTTP Method: GET is the recommended option, as optional parameters can be passed directly into the URL. Select POSTif instead, your system requires impact.com to submit the data in a request body.

    • If you use the POST method, select the Body Format from the radio dials.

  4. Select Save to complete the process.

Note: Step 3 does not apply to Action Inquiry Events—the query strings are selected using checkboxes instead.

Event Postback example

This example includes the following parameters:

  • {CampaignId}

  • {MediaPartnerId}

  • {ActionId}

  • {Status}

  • {LockingDate}

  • {Payout}

  • {Amount}

[https://www.someadvertiser.com?myCampaignId=]{}{CAMPAIGNID}&theMpId={MEDIAPARTNERID}&theActionId={ACTIONID}&status={STATUS}&lockingDate={LOCKINGDATE}&mpPayout={PAYOUT}&saleAmt={AMOUNT}

Notice the properties defined within curly brackets. The actual request will be for the URL (assuming corresponding parameter values):


https://www.myadvertiser.com?myCampaignId=1000&theMpId=900&theActionId=12323&status=PENDING&lockingDate=2015-01-01&mpPayout=50.00&saleAmt=100.00
Optional parameters for Event Postbacks

Query String

Description

{CampaignId}

Campaign ID

{ActionTrackerId}

Event Type ID

{MediaPartnerId}

Partner ID

{CampaignName}

Campaign Name

{ActionTrackerName}

Event Type Name

{MediaPartnerName}

Partner Name

{ActionId}

Action ID

{Status}

Action Status

{StatusDetail}

More details about the action status, for example the reason for an action modification

{AdId}

Ad ID

{Payout}

Action payout to the Partner, in the Partner currency.

{DeltaPayout}

The change of the Payout Amount

{IntendedPayout}

The intended Payout Amount for an overlimit action

{Amount}

Action amount, in the advertiser's currency. Only applicable for sale actions.

{DeltaAmount}

Corrected Amount from previous action.

{IntendedAmount}

The intended Sale Amount for an overlimit action

{Currency}

Currency for the action

{OriginalCurrency}

Original (i.e. cart) currency for the action

{OriginalAmount}

Original (i.e. cart) amount for the action

{EventDate}

The date of when the conversion took place

{CreationDate}

The date the action is created in the system

{LockingDate}

Date, in advertiser timezone, when the action will be locked.

{ClearedDate}

Date, in advertiser timezone, when the action will be cleared.

{ReferringDomain}

Domain where the referral took place (if online)

{LandingPageUrl}

Url of landing page (if online)

{RefCustomerArea}

Customer Area, derived from IP address

{RefCustomerCity}

Customer City, derived from IP address

{RefCustomerRegion}

Customer Region, derived from IP address

{RefCustomerCountry}

Customer Country Code, derived from IP address

{SharedId}

A value that a Partner can include in the click URL which becomes available to your advertisers

{PromoCode}

Promo code

{CustomerStatus}

Customer status

{Oid}

Order ID

{Note}

A note supplied with the reported action

{CustomerPostCode}

Customer Post Code

{CustomerCity}

Customer City, supplied with the reported action

{CustomerCountry}

Customer Country Code, supplied with the reported action

{CustomerRegion}

Customer Region, supplied with the reported action

{CustomerId}

Customer ID

{CustomerEmail}

Hashed Customer Email, supplied with the reported action

{IpAddress}

IP Address of the device

{CallerId}

Phone number of the caller

{Text1-10}

Supplied with the reported action

E.g., {Text2}, {Text4}, {Text5}, {Text7}

{Date1-10}

Supplied with the reported action

E.g., {Date3}, {Date4}, {Date5}, {Date8}

{Money1}

Supplied with the reported action

{Money2}

Supplied with the reported action

{Money3}

Supplied with the reported action

{Numeric1-10}

Supplied with the reported action

E.g., {Numeric1}, {Numeric4}, {Numeric6}

{appPackage}

Mobile app package

{appName}

Mobile app name

{appVersion}

Mobile app version

{deviceOs}

Device operating system

{deviceOsVersion}

Device operating system version

{deviceManuf}

Device manufacturer

{deviceModel}

Device model

{macAddress}

MAC Address in upper case

{macAddressLower}

MAC Address in lower case

{macAddressAlpha}

MAC Address without colons

{macAddressAlphaLower}

MAC Address without colons lower case

{macAddressSha1}

MAC Address hashed using SHA1

{macAddressSha1Lower}

MAC Address lower case and hashed using SHA1

{macAddressMd5}

MAC Address hashed using MD5

{macAddressMd5Lower}

MAC Address lower case and hashed using MD5

{iosIfa}

iOS advertising identifier

{iosIfaSha1}

iOS advertising identifier hashed using SHA1

{iosIfaMd5}

iOS advertising identifier hashed using MD5

{iosIfaNoHyphens}

iOS advertising identifier without hyphens

{iosAdTracking}

iOS Ad Tracking setting

{androidId}

Android ID

{androidIdSha1}

Android ID hashed using SHA1

{androidIdMd5}

Android ID hashed using MD5

{odin1}

SHA-1 hash of the MAC address of a phone?s wifi adapter

{openUdid}

OpenUDID of device

{deviceId}

Device ID

{deviceIp}

Device IP

Item-level parameters

If you collect item-level data for actions, you can also have this data included in your Action Lifecycle Event notifications.

"join" is a function that takes 3-5 arguments:

  • Argument 1: The collection.

  • Argument 2: A symbol to bind to each value in the collection.

  • Argument 3: The expression to compute for each member of the collection.

  • Argument 4: The optional separator between each expression (default is comma).

  • Argument 5: an optional lead-in, which will be present only if there is data in the collection.

Examples assuming 3 items with SKUs GH23, UT66, and RW87 respectively.

"items" is a collection of item data. Each item has "cat", "sku", "qty", "amt", "rbt", "name"...

Expression

Result

{join(items, i, "sku{i}={i.sku}", "&", "?")}

?sku1=GH23&sku2=UT66&sku3=RW87

{join(items, i, "cat{i}={i.cat}", "&", "?")}

?cat1=Watches&cat2=Shoes&cat3=Hats

{join(items, i, "qty{i}={i.qty}", "&", "?")}

?qty1=3&qty2=4&qty3=11

{join(items, i, "amt{i}={i.amt}", "&", "?")}

?amt1=2.92&amt2=99.32&amt3=4.99

{join(items, i, "cartamt{i}={i.cartamt}", "&", "?")}

?cartamt1=50.01&cartamt2=23.89&cartamt3=34.00

{join(items, i, "rbt{i}={i.rbt}", "&", "?")}

?rbt1=1.00&rbt2=5.00&rbt3=1.50

{join(items, i, "name{i}={i.name}", "&", "?")}

?name1=1.00&name2=5.00&name3=1.50

{join(items, i, "promo{i}={i.promo}", "&", "?")}

?promo1=HAPPY&promo2=H10DAY&promo3=NOW30

{join(items, i, "price{i}={i.price}", "&", "?")}

?price1=1.70&price2=2.00&price3=0.00

{join(items, i, "brand{i}={i.brand}", "&", "?")}

?brand1=lulu&brand2=NB&brand3=impact

{join(items, i, "discount{i}={i.disc}", "&", "?")}

?discount1=2.00&discount2=0.50&discount3=10.00

{join(items, i, "itemlist{i}={i.itemlist}", "&", "?")}

?itemlist1=accessories&itemlist2=apparel&itemlist3=games

Did you find it helpful? Yes No

Send feedback
Sorry we couldn't be helpful. Help us improve this article with your feedback.