Talon.One Outbound Notifications

Outbound notification (webhook) catalog published by Talon.One as an OpenAPI 3.1 document whose webhooks{} block carries the payload schema of every notification Talon.One POSTs to a customer endpoint: campaign, coupon, loyalty, loyalty-card and strikethrough-pricing notifications.

OpenAPI Specification

talon-one-outbound-notifications-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Notification schemas
  version: ''
  description: |
    Use [Application notifications](/docs/product/applications/application-notifications/overview)
    and [loyalty notifications](/docs/product/loyalty-programs/loyalty-notifications/overview)
    to notify the system of your choice of certain changes that happened in Talon.One.

    > [!note] **Note:**
    > - Required fields are not omitted if they are empty (have `null` value).
    > - The notification schemas may be extended with additional properties in future releases.
    > To maintain forward compatibility, ensure your implementation ignores unknown properties.
servers:
  - url: https://yourbaseurl.talon.one
security: []
tags:
  - name: Campaign notifications
    description: |
      Represents the [notifications](/docs/product/applications/application-notifications/overview)
      about campaign-related changes.

      > [!note] The value of the `NotificationType` property indicates the campaign change:
      > - `CampaignNotification` signifies one of the following events:
      >   - [Campaign created](#tag/Campaign-notifications/operation/campaignCreatedNotification)
      >   - [Campaign state changed](#tag/Campaign-notifications/operation/campaignStateChangedNotification)
      >   - [Campaign rules changed](#tag/Campaign-notifications/operation/campaignRulesetChangedNotification)
      >   - [Campaign edited](#tag/Campaign-notifications/operation/campaignEditedNotification)
      >   - [Campaign collection edited](#tag/Campaign-notifications/operation/campaignCollectionEditedNotification)
      >   - [Campaign deleted](#tag/Campaign-notifications/operation/campaignDeletedNotification)
      > - `CampaignEvaluationTreeChanged` signifies [Campaign evaluation tree changed](#tag/Campaign-notifications/operation/campaignEvaluationTreeChangedNotification).
  - name: Coupon notifications
    description: |
      Represents the [notifications](/docs/product/applications/application-notifications/overview)
      about coupons.
  - name: Loyalty card notifications
    description: Represents the [notifications](/docs/product/loyalty-programs/loyalty-notifications/overview) about changes to loyalty points in card-based loyalty programs.
  - name: Loyalty notifications
    description: |
      Represents the [notifications](/docs/product/loyalty-programs/loyalty-notifications/overview)
      about changes to loyalty points in profile-based loyalty programs.
  - name: Strikethrough pricing notifications
    description: |
      Represents the [notifications](/docs/product/applications/application-notifications/overview)
      about strikethrough pricing updates.
paths: {}
webhooks:
  campaignCreatedNotification:
    post:
      operationId: campaignCreatedNotification
      summary: Campaign created
      tags:
        - Campaign notifications
      parameters:
        - $ref: '#/components/parameters/x-uuid'
      requestBody:
        description: The [notification](/docs/product/applications/application-notifications/overview) indicating a campaign was created.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CampaignCreatedNotification'
            example:
              NotificationType: CampaignNotification
              TotalResultSize: 0
              Data:
                - Event: campaign_state_changed
                  campaign:
                    id: 4
                    created: '2020-06-10T09:05:27.993483Z'
                    applicationId: 322
                    userId: 388
                    name: Summer promotions
                    description: Campaign for all summer 2021 promotions
                    startTime: '2021-07-20T22:00:00Z'
                    endTime: '2021-09-22T22:00:00Z'
                    attributes: {}
                    state: enabled
                    activeRulesetId: 6
                    tags:
                      - summer
                    reevaluateOnReturn: false
                    features:
                      - coupons
                      - referrals
                    couponSettings:
                      validCharacters:
                        - A
                        - B
                        - C
                      couponPattern: SUMMER-####-####
                    referralSettings:
                      validCharacters:
                        - A
                        - B
                        - C
                      couponPattern: SUMMER-####-####
                    limits:
                      - action: createCoupon
                        limit: 1000
                        period: yearly
                        entities:
                          - Coupon
                    campaignGroups:
                      - 1
                      - 3
                    type: advanced
                    linkedStoreIds:
                      - 1
                      - 2
                      - 3
                    budgets:
                      - action: createCoupon
                        limit: 1000
                        counter: 42
                    couponRedemptionCount: 163
                    referralRedemptionCount: 3
                    discountCount: 288
                    discountEffectCount: 343
                    couponCreationCount: 16
                    customEffectCount: 0
                    referralCreationCount: 8
                    addFreeItemEffectCount: 0
                    awardedGiveawaysCount: 9
                    createdLoyaltyPointsCount: 9
                    createdLoyaltyPointsEffectCount: 2
                    redeemedLoyaltyPointsCount: 8
                    redeemedLoyaltyPointsEffectCount: 9
                    callApiEffectCount: 0
                    reservecouponEffectCount: 9
                    lastActivity: '2022-11-10T23:00:00Z'
                    updated: '2022-10-27T15:00:00Z'
                    createdBy: John Doe
                    updatedBy: Jane Doe
                    templateId: 3
                    frontendState: running
                    storesImported: true
                    valueMapsIds:
                      - 100
                      - 215
                    revisionFrontendState: revised
                    activeRevisionId: 6
                    activeRevisionVersionId: 6
                    version: 6
                    currentRevisionId: 6
                    currentRevisionVersionId: 6
                    stageRevision: false
                  ruleset:
                    id: 6
                    created: '2020-06-10T09:05:27.993483Z'
                    userId: 388
                    rules:
                      - id: 7fa800a8-ac8d-4792-85dc-c4650dcc8f23
                        parentId: 7fa800a8-ac8d-4792-85dc-c4650dcc8f23
                        title: Give discount via coupon
                        description: Creates a discount when a coupon is valid
                        bindings:
                          - name: my property
                            type: templateParameter
                            expression:
                              - string1
                              - string2
                            valueType: string
                            minValue: 0
                            maxValue: 19.9
                            attributeId: 100
                            description: This is a template parameter of type `text`.
                        condition:
                          - and
                          - - couponValid
                        effects:
                          - catch
                          - - noop
                          - - setDiscount
                            - 10% off
                            - - '*'
                              - - '.'
                                - Session
                                - Total
                              - - /
                                - 10
                                - 100
                    strikethroughRules:
                      - id: 7fa800a8-ac8d-4792-85dc-c4650dcc8f23
                        parentId: 7fa800a8-ac8d-4792-85dc-c4650dcc8f23
                        title: Give discount via coupon
                        description: Creates a discount when a coupon is valid
                        bindings:
                          - name: my property
                            type: templateParameter
                            expression:
                              - string1
                              - string2
                            valueType: string
                            minValue: 0
                            maxValue: 19.9
                            attributeId: 100
                            description: This is a template parameter of type `number`.
                        condition:
                          - and
                          - - couponValid
                        effects:
                          - catch
                          - - noop
                          - - setDiscount
                            - 10% off
                            - - '*'
                              - - '.'
                                - Session
                                - Total
                              - - /
                                - 10
                                - 100
                    bindings: []
                    rbVersion: v2
                    activate: true
                    campaignId: 320
                    templateId: 3
                    activatedAt: '2019-08-24T14:15:22Z'
                  evaluationPosition:
                    groupId: 2
                    groupName: Summer campaigns
                    position: 2
                  placeholders:
                    - name: my property
                      type: String
                      value:
                        - string2
        required: true
  campaignStateChangedNotification:
    post:
      operationId: campaignStateChangedNotification
      summary: Campaign state changed
      tags:
        - Campaign notifications
      parameters:
        - $ref: '#/components/parameters/x-uuid'
      requestBody:
        description: The [notification](/docs/product/applications/application-notifications/overview) indicating the state of a campaign changed.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CampaignStateChangedNotification'
            example:
              NotificationType: CampaignNotification
              TotalResultSize: 0
              Data:
                - Event: campaign_state_changed
                  campaign:
                    id: 4
                    created: '2020-06-10T09:05:27.993483Z'
                    applicationId: 322
                    userId: 388
                    name: Summer promotions
                    description: Campaign for all summer 2021 promotions
                    startTime: '2021-07-20T22:00:00Z'
                    endTime: '2021-09-22T22:00:00Z'
                    attributes: {}
                    state: enabled
                    activeRulesetId: 6
                    tags:
                      - summer
                    reevaluateOnReturn: false
                    features:
                      - coupons
                      - referrals
                    couponSettings:
                      validCharacters:
                        - A
                        - B
                        - C
                      couponPattern: SUMMER-####-####
                    referralSettings:
                      validCharacters:
                        - A
                        - B
                        - C
                      couponPattern: SUMMER-####-####
                    limits:
                      - action: createCoupon
                        limit: 1000
                        period: yearly
                        entities:
                          - Coupon
                    campaignGroups:
                      - 1
                      - 3
                    type: advanced
                    linkedStoreIds:
                      - 1
                      - 2
                      - 3
                    budgets:
                      - action: createCoupon
                        limit: 1000
                        counter: 42
                    couponRedemptionCount: 163
                    referralRedemptionCount: 3
                    discountCount: 288
                    discountEffectCount: 343
                    couponCreationCount: 16
                    customEffectCount: 0
                    referralCreationCount: 8
                    addFreeItemEffectCount: 0
                    awardedGiveawaysCount: 9
                    createdLoyaltyPointsCount: 9
                    createdLoyaltyPointsEffectCount: 2
                    redeemedLoyaltyPointsCount: 8
                    redeemedLoyaltyPointsEffectCount: 9
                    callApiEffectCount: 0
                    reservecouponEffectCount: 9
                    lastActivity: '2022-11-10T23:00:00Z'
                    updated: '2022-10-27T15:00:00Z'
                    createdBy: John Doe
                    updatedBy: Jane Doe
                    templateId: 3
                    frontendState: running
                    storesImported: true
                    valueMapsIds:
                      - 100
                      - 215
                    revisionFrontendState: revised
                    activeRevisionId: 6
                    activeRevisionVersionId: 6
                    version: 6
                    currentRevisionId: 6
                    currentRevisionVersionId: 6
                    stageRevision: false
                  oldState: disabled
                  newState: running
                  ruleset:
                    id: 6
                    created: '2020-06-10T09:05:27.993483Z'
                    userId: 388
                    rules:
                      - id: 7fa800a8-ac8d-4792-85dc-c4650dcc8f23
                        parentId: 7fa800a8-ac8d-4792-85dc-c4650dcc8f23
                        title: Give discount via coupon
                        description: Creates a discount when a coupon is valid
                        bindings:
                          - name: my property
                            type: templateParameter
                            expression:
                              - string1
                              - string2
                            valueType: string
                            minValue: 0
                            maxValue: 19.9
                            attributeId: 100
                            description: This is a template parameter of type `text`.
                        condition:
                          - and
                          - - couponValid
                        effects:
                          - catch
                          - - noop
                          - - setDiscount
                            - 10% off
                            - - '*'
                              - - '.'
                                - Session
                                - Total
                              - - /
                                - 10
                                - 100
                    strikethroughRules:
                      - id: 7fa800a8-ac8d-4792-85dc-c4650dcc8f23
                        parentId: 7fa800a8-ac8d-4792-85dc-c4650dcc8f23
                        title: Give discount via coupon
                        description: Creates a discount when a coupon is valid
                        bindings:
                          - name: my property
                            type: templateParameter
                            expression:
                              - string1
                              - string2
                            valueType: string
                            minValue: 0
                            maxValue: 19.9
                            attributeId: 100
                            description: This is a template parameter of type `number`.
                        condition:
                          - and
                          - - couponValid
                        effects:
                          - catch
                          - - noop
                          - - setDiscount
                            - 10% off
                            - - '*'
                              - - '.'
                                - Session
                                - Total
                              - - /
                                - 10
                                - 100
                    bindings: []
                    rbVersion: v2
                    activate: true
                    campaignId: 320
                    templateId: 3
                    activatedAt: '2019-08-24T14:15:22Z'
                  placeholders:
                    - name: my property
                      type: String
                      value:
                        - string2
        required: true
  campaignRulesetChangedNotification:
    post:
      operationId: campaignRulesetChangedNotification
      summary: Campaign rules changed
      tags:
        - Campaign notifications
      parameters:
        - $ref: '#/components/parameters/x-uuid'
      requestBody:
        description: The [notification](/docs/product/applications/application-notifications/overview) indicating the rules of a campaign changed.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CampaignRulesetChangedNotification'
            example:
              NotificationType: CampaignNotification
              TotalResultSize: 0
              Data:
                - Event: campaign_state_changed
                  campaign:
                    id: 4
                    created: '2020-06-10T09:05:27.993483Z'
                    applicationId: 322
                    userId: 388
                    name: Summer promotions
                    description: Campaign for all summer 2021 promotions
                    startTime: '2021-07-20T22:00:00Z'
                    endTime: '2021-09-22T22:00:00Z'
                    attributes: {}
                    state: enabled
                    activeRulesetId: 6
                    tags:
                      - summer
                    reevaluateOnReturn: false
                    features:
                      - coupons
                      - referrals
                    couponSettings:
                      validCharacters:
                        - A
                        - B
                        - C
                      couponPattern: SUMMER-####-####
                    referralSettings:
                      validCharacters:
                        - A
                        - B
                        - C
                      couponPattern: SUMMER-####-####
                    limits:
                      - action: createCoupon
                        limit: 1000
                        period: yearly
                        entities:
                          - Coupon
                    campaignGroups:
                      - 1
                      - 3
                    type: advanced
                    linkedStoreIds:
                      - 1
                      - 2
                      - 3
                    budgets:
                      - action: createCoupon
                        limit: 1000
                        counter: 42
                    couponRedemptionCount: 163
                    referralRedemptionCount: 3
                    discountCount: 288
                    discountEffectCount: 343
                    couponCreationCount: 16
                    customEffectCount: 0
                    referralCreationCount: 8
                    addFreeItemEffectCount: 0
                    awardedGiveawaysCount: 9
                    createdLoyaltyPointsCount: 9
                    createdLoyaltyPointsEffectCount: 2
                    redeemedLoyaltyPointsCount: 8
                    redeemedLoyaltyPointsEffectCount: 9
                    callApiEffectCount: 0
                    reservecouponEffectCount: 9
                    lastActivity: '2022-11-10T23:00:00Z'
                    updated: '2022-10-27T15:00:00Z'
                    createdBy: John Doe
                    updatedBy: Jane Doe
                    templateId: 3
                    frontendState: running
                    storesImported: true
                    valueMapsIds:
                      - 100
                      - 215
                    revisionFrontendState: revised
                    activeRevisionId: 6
                    activeRevisionVersionId: 6
                    version: 6
                    currentRevisionId: 6
                    currentRevisionVersionId: 6
                    stageRevision: false
                  oldRuleset:
                    id: 6
                    created: '2020-06-10T09:05:27.993483Z'
                    userId: 388
                    rules:
                      - id: 7fa800a8-ac8d-4792-85dc-c4650dcc8f23
                        parentId: 7fa800a8-ac8d-4792-85dc-c4650dcc8f23
                        title: Give discount via coupon
                        description: Creates a discount when a coupon is valid
                        bindings:
                          - name: my property
                            type: templateParameter
                            expression:
                              - string1
                              - string2
                            valueType: string
                            minValue: 0
                            maxValue: 19.9
                            attributeId: 100
                            description: This is a template parameter of type `text`.
                        condition:
                          - and
                          - - couponValid
                        effects:
                          - catch
                          - - noop
                          - - setDiscount
                            - 10% off
                            - - '*'
                              - - '.'
                                - Session
                                - Total
                              - - /
                                - 10
                                - 100
                    strikethroughRules:
                      - id: 7fa800a8-ac8d-4792-85dc-c4650dcc8f23
                        parentId: 7fa800a8-ac8d-4792-85dc-c4650dcc8f23
                        title: Give discount via coupon
                        description: Creates a discount when a coupon is valid
                        bindings:
                          - name: my property
                            type: templateParameter
                            expression:
                              - string1
                              - string2
                            valueType: string
                            minValue: 0
                            maxValue: 19.9
                            attributeId: 100
                            description: This is a template parameter of type `number`.
                        condition:
                          - and
                          - - couponValid
                        effects:
                          - catch
                          - - noop
                          - - setDiscount
                            - 10% off
                            - - '*'
                              - - '.'
                                - Session
                                - Total
                              - - /
                                - 10
                                - 100
                    bindings: []
                    rbVersion: v2
                    activate: true
                    campaignId: 320
                    templateId: 3
                    activatedAt: '2019-08-24T14:15:22Z'
                  oldPlaceholders:
                    - name: my property
                      type: String
                      value:
                        - string2
                  ruleset:
                    id: 6
                    created: '2020-06-10T09:05:27.993483Z'
                    userId: 388
                    rules:
                      - id: 7fa800a8-ac8d-4792-85dc-c4650dcc8f23
                        parentId: 7fa800a8-ac8d-4792-85dc-c4650dcc8f23
                        title: Give discount via coupon
                        description: Creates a discount when a coupon is valid
                        bindings:
                          - name: my property
                            type: templateParameter
                            expression:
                              - string1
                              - string2
                            valueType: string
                            minValue: 0
                            maxValue: 19.9
                            attributeId: 100
                            description: This is a template parameter of type `text`.
                        condition:
                          - and
                          - - couponValid
                        effects:
                          - catch
                          - - noop
                          - - setDiscount
                            - 10% off
                            - - '*'
                              - - '.'
                                - Session
                                - Total
                              - - /
                                - 10
                                - 100
                    strikethroughRules:
                      - id: 7fa800a8-ac8d-4792-85dc-c4650dcc8f23
                        parentId: 7fa800a8-ac8d-4792-85dc-c4650dcc8f23
                        title: Give discount via coupon
                        description: Creates a discount when a coupon is valid
                        bindings:
                          - name: my property
                            type: templateParameter
                            expression:
                              - string1
                              - string2
                            valueType: string
                            minValue: 0
                            maxValue: 19.9
                            attributeId: 100
                            description: This is a template parameter of type `number`.
                        condition:
                          - and
                          - - couponValid
                        effects:
                          - catch
                          - - noop
                          - - setDiscount
                            - 10% off
                            - - '*'
                              - - '.'
                                - Session
                                - Total
                              - - /
                                - 10
                                - 100
                    bindings: []
                    rbVersion: v2
                    activate: true
                    campaignId: 320
                    templateId: 3
                    activatedAt: '2019-08-24T14:15:22Z'
                  placeholders:
                    - name: my property
                      type: String
                      value:
                        - string2
        required: true
  campaignEditedNotification:
    post:
      operationId: campaignEditedNotification
      summary: Campaign edited
      tags:
        - Campaign notifications
      parameters:
        - $ref: '#/components/parameters/x-uuid'
      requestBody:
        description: The [notification](/docs/product/applications/application-notifications/overview) indicating a campaign was edited.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CampaignEditedNotification'
            example:
              NotificationType: CampaignNotification
              TotalResultSize: 0
              Data:
                - Event: campaign_state_changed
                  campaign:
                    id: 4
                    created: '2020-06-10T09:05:27.993483Z'
                    applicationId: 322
                    userId: 388
                    name: Summer promotions
                    description: Campaign for all summer 2021 promotions
                    startTime: '2021-07-20T22:00:00Z'
                    endTime: '2021-09-22T22:00:00Z'
                    attributes: {}
                    state: enabled
                    activeRulesetId: 6
                    tags:
                      - summer
                    reevaluateOnReturn: false
                    features:
                      - coupons
                      - referrals
                    couponSettings:
                      validCharacters:
                        - A
                        - B
                        - C
                      couponPattern: SUMMER-####-####
                    referralSettings:
                      validCharacters:
                        - A
                        - B
                        - C
                      couponPattern: SUMMER-####-####
                    limits:
                      - action: createCoupon
                        limit: 1000
                        period: yearly
                        entities:
                          - Coupon
                    campaignGroups:
                      - 1
                      - 3
                    type: advanced
                    linkedStoreIds:
                      - 1
                      - 2
                      - 3
                    budgets:
                      - action: createCoupon
                        limit: 1000
                        counter: 42
                    couponRedemptionCount: 163
                    referralRedemptionCount: 3
                    discountCount: 288
                    discountEffectCount: 343
                    couponCreationCount: 16
                    customEffectCount: 0
                    referralCreationCount: 8
                    addFreeItemEffectCount: 0
                    awardedGiveawaysCount: 9
                    createdLoyaltyPointsCount: 9
                    createdLoyaltyPointsEffectCount: 2
                    redeemedLoyaltyPointsCount: 8
                    redeemedLoyaltyPointsEffectCount: 9
                    callApiEffectCount: 0
                    reservecouponEffectCount: 9
                    lastActivity: '2022-11-10T23:00:00Z'
                    updated: '2022-10-27T15:00:00Z'
                    createdBy: John Doe
                    updatedBy: Jane Doe
                    templateId: 3
                    frontendState: running
                    storesImported: true
                    valueMapsIds:
                      - 100
                      - 215
                    revisionFrontendState: revised
                    activeRevisionId: 6
                    activeRevisionVersionId: 6
                    version: 6
                    currentRevisionId: 6
                    currentRevisionVersionId: 6
                    stageRevision: false
                  oldCampaign:
                    id: 4
                    created: '2020-06-10T09:05:27.993483Z'
                    applicationId: 322
                    userId: 388
                    name: Summer promotions
                    description: Campaign for all summer 2021 promotions
                    startTime: '2021-07-20T22:00:00Z'
                    endTime: '2021-09-22T22:00:00Z'
                    attributes: {}
                    state: enabled
                    activeRulesetId: 6
                    tags:
                      - summer
                    reevaluateOnReturn: false
                    features:
                      - coupons
                      - referrals
                    couponSettings:
                      validCharacters:
                        - A
                        - B
                        - C
                      couponPattern: SUMMER-####-####
                    referralSettings:
                      validCharacters:
                        - A
                        - B
                        - C
                      couponPattern: SUMMER-####-####
                    limits

# --- truncated at 32 KB (163 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/talon-one/refs/heads/main/openapi/talon-one-outbound-notifications-openapi.yml