Skip to main content

Notification schemas (1.0.0)

Download OpenAPI specification:Download

Use Application notifications and loyalty notifications to notify the system of your choice of certain changes that happened in Talon.One.

Campaign notifications

Represents the notifications about campaign-related changes.

Campaign created Webhook

Request Body schema: application/json

The notification indicating a campaign was created.

campaign
required
string
Enum: "expired" "scheduled" "running" "draft" "disabled"

A campaign state described exactly as in the Campaign Manager.

required
object

The campaign position within the evaluation tree.

ruleset
string

The current ruleset.

Request samples

Content type
application/json
{
  • "campaign": "running",
  • "ruleset": {
    },
  • "evaluationPosition": {
    }
}

Campaign state changed Webhook

Request Body schema: application/json

The notification indicating the state of a campaign changed.

required
object

The campaign whose state changed.

newState
required
string

The campaign's new state. Can be one of the following: ['running', 'disabled', 'scheduled', 'expired', 'draft', 'archived']

oldState
required
string

The campaign's old state. Can be one of the following: ['running', 'disabled', 'scheduled', 'expired', 'draft', 'archived']

ruleset
string

The current ruleset.

Request samples

Content type
application/json
{
  • "campaign": {
    },
  • "ruleset": {
    },
  • "oldState": "string",
  • "newState": "string"
}

Campaign rules changed Webhook

Request Body schema: application/json

The notification indicating the rules of a campaign changed.

required
object

The current version of the campaign.

ruleset
required
string

The current ruleset.

oldRuleset
string

The old ruleset, if the ruleset was changed.

Request samples

Content type
application/json
{
  • "campaign": {
    },
  • "oldRuleset": {
    },
  • "ruleset": {
    }
}

Campaign edited Webhook

Request Body schema: application/json

The notification indicating a campaign was edited.

required
object

The current version of the campaign.

required
object

The campaign before it was edited.

ruleset
string

The current ruleset.

Request samples

Content type
application/json
{
  • "campaign": {
    },
  • "oldCampaign": {
    },
  • "ruleset": {
    }
}

Campaign deleted Webhook

Request Body schema: application/json

The notification indicating a campaign was deleted.

required
object

The current version of the campaign.

deletedAt
required
string <date-time>

Time when the campaign was deleted.

Request samples

Content type
application/json
{
  • "campaign": {
    },
  • "deletedAt": "2022-11-10T23:00:00Z"
}

Campaign evaluation tree changed Webhook

Request Body schema: application/json

The notification indicating the evaluation tree of an Application changed.

required
object

The new campaign evaluation tree.

applicationId
integer

The ID of the Application whose campaign evaluation tree changed.

object

The previous campaign evaluation tree.

Request samples

Content type
application/json
{
  • "applicationId": 78,
  • "oldEvaluationTree": {
    },
  • "evaluationTree": {
    }
}

Coupon notifications

Represents the notifications about coupon-related changes.

Coupon created Webhook

Request Body schema: application/json

The notification indicating that one of the following coupon-related changes occurred:

TypeOfChange
required
string
Enum: "campaign_manager" "management_api" "rule_engine"

The notification source, that is, it indicates whether the coupons were changed via one of the following routes:

Operation
required
string
Enum: "CouponCreated" "CouponUpdated" "CouponDeleted" "AsyncCouponsCreated" "CouponsDeleted" "CouponsUpdated"

The change (creation, update, or deletion) made to the coupons.

EmployeeName
required
string

The name of the employee who made the coupon-related changes.

Note: This can be blank when the notication source is the Rule Engine.

Array of objects

The array of coupons codes. If 1000 or fewer coupons are requested, all coupon data is sent. If 1001 or more coupons are requested, only BatchID is sent.

totalResultSize
number

The number of changed coupons.

BatchID
string

The ID of the batch to which the coupon belongs.

Note: The Batch ID is generated when coupons are created.

Request samples

Content type
application/json
Example
{
  • "TypeOfChange": "campaign_manager",
  • "Operation": "CouponCreated",
  • "EmployeeName": "Franziska Schneider",
  • "totalResultSize": 2,
  • "data": [
    ]
}

Coupon updated or deleted Webhook

Request Body schema: application/json

The notification indicating that one of the following coupon-related changes occurred:

  • Coupon updated (via the Campaign Manager or Update coupon endpoint).
  • Coupon deleted (via the Campaign Manager or Delete coupon endpoint).
  • Coupon updated (as a result of the updateAttribute API effect, triggered by the Rule Engine).
TypeOfChange
required
string
Enum: "campaign_manager" "management_api" "rule_engine"

The notification source, that is, it indicates whether the coupons were changed via one of the following routes:

Operation
required
string
Enum: "CouponCreated" "CouponUpdated" "CouponDeleted" "AsyncCouponsCreated" "CouponsDeleted" "CouponsUpdated"

The change (creation, update, or deletion) made to the coupons.

EmployeeName
required
string

The name of the employee who made the coupon-related changes.

Note: This can be blank when the notication source is the Rule Engine.

required
Array of objects

The array of coupons codes.

totalResultSize
required
number

The number of changed coupons.

Request samples

Content type
application/json
{
  • "TypeOfChange": "campaign_manager",
  • "Operation": "CouponCreated",
  • "EmployeeName": "Franziska Schneider",
  • "data": [
    ],
  • "totalResultSize": 2
}

Coupons created asynchronously Webhook

Request Body schema: application/json

The notification indicating that up to 5 million coupons were created asynchronously via the Create coupons asynchronously endpoint.

In this case, instead of individual notifications for specific coupon changes (such as creation, update, or deletion), a single notification about the completion of the batch processing of coupons with details about the batch is sent.

Tip: To retrieve information about the generated coupons, after receiving the notification, use the Export coupons endpoint along with the batchid, which indicates the batch to which the coupons belong.

TypeOfChange
required
string
Enum: "campaign_manager" "management_api" "rule_engine"

The notification source, that is, it indicates whether the coupons were changed via one of the following routes:

Operation
required
string
Enum: "CouponCreated" "CouponUpdated" "CouponDeleted" "AsyncCouponsCreated" "CouponsDeleted" "CouponsUpdated"

The change (creation, update, or deletion) made to the coupons.

EmployeeName
required
string

The name of the employee who made the coupon-related changes.

Note: This can be blank when the notication source is the Rule Engine.

BatchID
required
string

The ID of the batch to which the coupon belongs.

Note: The Batch ID is generated when coupons are created.

Request samples

Content type
application/json
{
  • "TypeOfChange": "campaign_manager",
  • "Operation": "AsyncCouponsCreated",
  • "EmployeeName": "Franziska Schneider",
  • "BatchID": "nqylhnni"
}

Coupons updated Webhook

Request Body schema: application/json

The notification indicating that coupons were updated via the Update coupons endpoint.

Tip: To retrieve information about the generated coupons, after receiving the notification, use the Export coupons endpoint along with the batchid, which indicates the batch to which the coupons belong.

TypeOfChange
required
string
Enum: "campaign_manager" "management_api" "rule_engine"

The notification source, that is, it indicates whether the coupons were changed via one of the following routes:

Operation
required
string
Enum: "CouponCreated" "CouponUpdated" "CouponDeleted" "AsyncCouponsCreated" "CouponsDeleted" "CouponsUpdated"

The change (creation, update, or deletion) made to the coupons.

EmployeeName
required
string

The name of the employee who made the coupon-related changes.

Note: This can be blank when the notication source is the Rule Engine.

BatchID
required
string

The ID of the batch to which the coupon belongs.

Note: The Batch ID is generated when coupons are created. The Batch ID may be empty, for example, if all coupons in the campaign were updated.

ApplicationID
required
number >= 1

The ID of the Application to which the coupon belongs.

CampaignID
required
number >= 1

The ID of the campaign to which the coupon belongs.

Request samples

Content type
application/json
{
  • "TypeOfChange": "campaign_manager",
  • "Operation": "CouponsUpdated",
  • "EmployeeName": "Franziska Schneider",
  • "BatchID": "nqylhnni",
  • "ApplicationID": 5,
  • "CampaignID": 3
}

Coupons deleted Webhook

Request Body schema: application/json

The notification indicating that coupons were deleted via the Delete coupons endpoint.

Tip: To retrieve information about the generated coupons, after receiving the notification, use the Export coupons endpoint along with the batchid, which indicates the batch to which the coupons belong.

TypeOfChange
required
string
Enum: "campaign_manager" "management_api" "rule_engine"

The notification source, that is, it indicates whether the coupons were changed via one of the following routes:

Operation
required
string
Enum: "CouponCreated" "CouponUpdated" "CouponDeleted" "AsyncCouponsCreated" "CouponsDeleted" "CouponsUpdated"

The change (creation, update, or deletion) made to the coupons.

EmployeeName
required
string

The name of the employee who made the coupon-related changes.

Note: This can be blank when the notication source is the Rule Engine.

BatchID
required
string

The ID of the batch to which the coupon belongs.

Note: The Batch ID is generated when coupons are created. The Batch ID may be empty, for example, if all coupons in the campaign were updated.

ApplicationID
required
number >= 1

The ID of the Application to which the coupon belongs.

CampaignID
required
number >= 1

The ID of the campaign to which the coupon belongs.

TotalResultSize
required
number >= 1

The number of deleted coupons.

Request samples

Content type
application/json
{
  • "TypeOfChange": "campaign_manager",
  • "Operation": "CouponsDeleted",
  • "EmployeeName": "Franziska Schneider",
  • "BatchID": "nqylhnni",
  • "ApplicationID": 5,
  • "CampaignID": 3,
  • "TotalResultSize": 200
}

Strikethrough pricing notifications

Represents the notifications about strikethrough pricing updates.

Strikethrough pricing updated Webhook

Request Body schema: application/json

The notification listing the changes in the pricing of your cart item catalog.

applicationId
required
integer

The ID of the Application that catalog items labels belongs to.

currentBatch
required
integer

The batch number of the notification. Notifications may be sent in different batches.

totalBatches
required
integer

The total number of batches for the notification.

required
object

Information about the event that triggered the strikethrough labeling.

required
Array of objects

The items that had their price updated.

Request samples

Content type
application/json
{
  • "applicationId": 322,
  • "currentBatch": 1,
  • "totalBatches": 10,
  • "trigger": {
    },
  • "changedItems": [
    ]
}

Loyalty notifications

Represents the notifications about changes to loyalty points in profile-based loyalty programs.

Expiring points Webhook

Request Body schema: application/json

The notification reminding users that their active loyalty points will expire soon.

TotalResultSize
required
number >= 1

The number of expiring points notifications.

required
Array of objects

The array of expiring points.

Request samples

Content type
application/json
{
  • "TotalResultSize": 1,
  • "Data": [
    ]
}

Added or deducted points Webhook

Request Body schema: application/json

The notification informing users when loyalty points are added or deducted.

ProfileIntegrationID
required
string

The integration ID of the customer profile to whom points were added or deducted.

LoyaltyProgramID
required
integer >= 1

The ID of the loyalty program.

SubledgerID
required
string

The ID of the subledger within the loyalty program where these points were added.

Amount
required
number

The amount of added or deducted loyalty points.

Reason
required
string

The reason for the points addition or deduction.

TypeOfChange
required
string
Enum: "campaign_manager" "rule_engine" "management_api"

The notification source, that is, it indicates whether the points were added or deducted via one of the following routes:

EmployeeName
required
string

The name of the employee who added or deducted points.

UserID
required
integer >= 1

The ID of the employee who added or deducted points.

Operation
required
string
Enum: "addition" "deduction"

The action (addition or deduction) made with loyalty points.

StartDate
required
string <date-time>

The start date for loyalty points.

ExpiryDate
required
string <date-time>

The expiration date for loyalty points.

Request samples

Content type
application/json
{
  • "ProfileIntegrationID": "URNGV8294NV",
  • "LoyaltyProgramID": 5,
  • "SubledgerID": "sub-123",
  • "Amount": 10.99,
  • "Reason": "Compensation",
  • "TypeOfChange": "campaign_manager",
  • "EmployeeName": "Franziska Schneider",
  • "UserID": 25,
  • "Operation": "addition",
  • "StartDate": "2023-01-24T14:15:22Z",
  • "ExpiryDate": "2024-01-24T14:15:22Z"
}

Pending points Webhook

Request Body schema: application/json

The notification informing users that their pending points will become active soon.

TotalResultSize
required
number [ 1 .. 1000 ]

The number of pending becoming active points notifications.

required
Array of objects <= 1000 characters

The array of pending becoming active points.

Request samples

Content type
application/json
{
  • "TotalResultSize": 1,
  • "Data": [
    ]
}