Talon.One Braze API

[Braze](https://www.braze.com/) is a customer engagement platform to manage customer-centric interactions between consumers and brands in real-time. Use these endpoints to automate the creation of coupon and referral codes and deliver them to specific customer segments. To send requests to these endpoints, use the [connected content feature](https://www.braze.com/docs/user_guide/personalization_and_dynamic_content/connected_content/connected_content_retries) in Braze. For more information, see our integration examples in [the developer docs](https://docs.talon.one/docs/dev/technology-partners/braze).

Operations 4

POST /braze/referral Create referral (Braze) #
POST /braze/coupon Create coupon (Braze) #
POST /braze/coupon_reservation Create coupon reservation (Braze) #
POST /braze/event Track event (Braze) #

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/talon-one-braze-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

talon-one-braze-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: ''
  title: Third-party Braze API
  description: "Use the Third-party API to exchange data between Talon.One and one of the supported [technology partners](https://docs.talon.one/docs/dev/technology-partners/overview).\n\nFor example, use the Braze-specific endpoints from your Braze campaigns to interact with Talon.One.\n\nIf the CDP or CEP you are using isn't listed here, use the generic\n[Customer Data Platforms](#tag/Customer-data-platforms) and [Customer Engagement Platform](#tag/Customer-engagement-platforms) endpoints.\n\n> [!note] \n> All endpoints of this API start with `https://integration.talon.one`.\n> You must specify the base URL of your deployment in the headers or parameters.\n\n> [!note] **Are you looking for a different API?**\n> - To implement use cases that aren't covered by the Third-party API, see the [Integration API](https://docs.talon.one/management-api).\n> - To interact with the Campaign Manager for back-office operations, see the [Management API](https://docs.talon.one/management-api).\n"
servers:
- url: https://integration.talon.one
security:
- ApiKeyAuth: []
tags:
- name: Braze
  description: '[Braze](https://www.braze.com/) is a customer engagement platform to manage customer-centric interactions between consumers and brands in real-time.


    Use these endpoints to automate the creation of coupon and referral codes

    and deliver them to specific customer segments. To send requests to these endpoints, use the

    [connected content feature](https://www.braze.com/docs/user_guide/personalization_and_dynamic_content/connected_content/connected_content_retries) in Braze.


    For more information, see our integration examples in [the developer docs](https://docs.talon.one/docs/dev/technology-partners/braze).

    '
paths:
  /braze/referral:
    post:
      tags:
      - Braze
      summary: Create referral (Braze)
      operationId: braze/createReferral
      description: 'Create a referral code in Talon.One. To use it in your Braze deployment, see [the tutorial](https://docs.talon.one/docs/dev/technology-partners/braze/creating-referrals-braze).

        '
      parameters:
      - $ref: '#/components/parameters/dryRun'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReferralRequest'
            examples:
              default:
                $ref: '#/components/examples/ReferralRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReferralResponse'
              examples:
                default:
                  $ref: '#/components/examples/ReferralResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/TooManyRequests'
  /braze/coupon:
    post:
      tags:
      - Braze
      summary: Create coupon (Braze)
      operationId: braze/createCoupon
      description: 'Create a coupon code in Talon.One. To use it in your Braze deployment, see [the tutorial](https://docs.talon.one/docs/dev/technology-partners/braze/creating-coupons-braze).


        You can also use this endpoint to get an existing coupon''s details by setting the `identifier` property to a value you previously used.


        > [!tip]

        > You can edit the default coupon code format in the [campaign''s settings](https://docs.talon.one/docs/product/campaigns/coupons/coupon-page-overview#editing-coupon-format).

        '
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BrazeCouponRequest'
            examples:
              default:
                $ref: '#/components/examples/BrazeCouponRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BrazeCouponResponse'
              examples:
                default:
                  $ref: '#/components/examples/BrazeCouponResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/TooManyRequests'
  /braze/coupon_reservation:
    post:
      tags:
      - Braze
      summary: Create coupon reservation (Braze)
      operationId: braze/createCouponReservation
      description: 'Create a coupon reservation for a specified customer profile on the specified coupon.

        '
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CouponReservationRequest'
            examples:
              default:
                $ref: '#/components/examples/CouponReservationRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CouponReservationResponse'
              examples:
                default:
                  $ref: '#/components/examples/CouponReservationResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/TooManyRequests'
  /braze/event:
    post:
      tags:
      - Braze
      summary: Track event (Braze)
      operationId: braze/trackEvent
      description: 'Triggers a custom event inside Talon.One. You can then trigger rules when this event is received.


        An event is a type of custom attribute. You must create it first in the Campaign Manager. See [creating custom events](https://docs.talon.one/docs/dev/concepts/entities/events#custom-events).

        To see the events received by your Application in Talon.One, open the Application and click **Events**.


        For more information, see [the tutorial](https://docs.talon.one/docs/dev/technology-partners/braze/adding-loyalty-points-braze).

        '
      parameters:
      - $ref: '#/components/parameters/destinationHostname'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BrazeTrackEventRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationStateV2'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/TooManyRequests'
components:
  schemas:
    limitConfig:
      type: object
      required:
      - action
      - limit
      - entities
      properties:
        action:
          type: string
          description: "The limitable action to which this limit applies. For example:\n - `setDiscount`\n - `setDiscountEffect`\n - `redeemCoupon`\n - `createCoupon`\n"
          example: createCoupon
        limit:
          type: number
          minimum: 0
          example: 1000
          description: The value to set for the limit.
        period:
          description: The period on which the budget limit recurs.
          type: string
          enum:
          - daily
          - weekly
          - monthly
          - yearly
          example: yearly
        entities:
          type: array
          description: The entity that this limit applies to.
          example:
          - Coupon
          items:
            type: string
            enum:
            - Coupon
            - Referral
            - Profile
            - Identifier
    newCampaign:
      type: object
      properties:
        name:
          type: string
          title: Campaign Name
          description: A user-facing name for this campaign.
          minLength: 1
          example: Summer promotions
        description:
          type: string
          title: Campaign Description
          description: A detailed description of the campaign.
          example: Campaign for all summer 2021 promotions
        startTime:
          type: string
          format: date-time
          description: Timestamp when the campaign will become active.
          example: '2021-07-20T22:00:00Z'
        endTime:
          type: string
          format: date-time
          description: Timestamp the campaign will become inactive.
          example: '2021-09-22T22:00:00Z'
        attributes:
          type: object
          description: Arbitrary properties associated with this campaign.
          additionalProperties: true
        state:
          type: string
          enum:
          - enabled
          - disabled
          - archived
          default: enabled
          description: 'A disabled or archived campaign is not evaluated for rules or coupons.

            '
        activeRulesetId:
          type: integer
          description: '[ID of Ruleset](https://docs.talon.one/management-api#operation/getRulesets) this

            campaign applies on customer session evaluation.

            '
        tags:
          type: array
          description: A list of tags for the campaign.
          example:
          - summer
          maxItems: 50
          items:
            type: string
            minLength: 1
            maxLength: 50
        features:
          type: array
          description: The features enabled in this campaign.
          example:
          - coupons
          - referrals
          items:
            type: string
            enum:
            - coupons
            - referrals
            - loyalty
            - giveaways
        couponSettings:
          $ref: '#/components/schemas/codeGeneratorSettings'
        referralSettings:
          $ref: '#/components/schemas/codeGeneratorSettings'
        limits:
          type: array
          description: 'The set of [budget limits](https://docs.talon.one/docs/product/campaigns/settings/managing-campaign-budgets) for this campaign.

            '
          items:
            $ref: '#/components/schemas/limitConfig'
        campaignGroups:
          type: array
          description: 'The IDs of the [campaign groups](https://docs.talon.one/docs/product/account/managing-campaign-groups) this campaign belongs to.

            '
          example:
          - 1
          - 3
          items:
            type: integer
      required:
      - name
      - state
      - tags
      - limits
      - features
    effectProps:
      type: object
      oneOf:
      - $ref: '#/components/schemas/acceptCouponEffectProps'
      - $ref: '#/components/schemas/acceptReferralEffectProps'
      - $ref: '#/components/schemas/redeemReferralEffectProps'
      - $ref: '#/components/schemas/rejectCouponEffectProps'
      - $ref: '#/components/schemas/rejectReferralEffectProps'
      - $ref: '#/components/schemas/couponCreatedEffectProps'
      - $ref: '#/components/schemas/referralCreatedEffectProps'
      - $ref: '#/components/schemas/setDiscountEffectProps'
      - $ref: '#/components/schemas/setDiscountPerItemEffectProps'
      - $ref: '#/components/schemas/setDiscountPerAdditionalCostEffectProps'
      - $ref: '#/components/schemas/triggerWebhookEffectProps'
      - $ref: '#/components/schemas/addLoyaltyPointsEffectProps'
      - $ref: '#/components/schemas/deductLoyaltyPointsEffectProps'
      - $ref: '#/components/schemas/addFreeItemEffectProps'
      - $ref: '#/components/schemas/showNotificationEffectProps'
      - $ref: '#/components/schemas/updateAttributeEffectProps'
      - $ref: '#/components/schemas/rollbackCouponEffectProps'
      - $ref: '#/components/schemas/rollbackReferralEffectProps'
      - $ref: '#/components/schemas/rollbackDiscountEffectProps'
      - $ref: '#/components/schemas/rollbackAddedLoyaltyPointsEffectProps'
      - $ref: '#/components/schemas/rollbackDeductedLoyaltyPointsEffectProps'
      - $ref: '#/components/schemas/showBundleMetadataEffectProps'
      - $ref: '#/components/schemas/awardGiveawayEffectProps'
      - $ref: '#/components/schemas/willAwardGiveawayEffectProps'
      - $ref: '#/components/schemas/errorEffectProps'
      - $ref: '#/components/schemas/customEffectProps'
      - $ref: '#/components/schemas/setDiscountPerAdditionalCostPerItemEffectProps'
    referral:
      allOf:
      - $ref: '#/components/schemas/entity'
      - $ref: '#/components/schemas/newReferral'
      - $ref: '#/components/schemas/importEntity'
      - type: object
        x-attributable: true
        required:
        - code
        - usageCounter
        - usageLimit
        properties:
          code:
            type: string
            title: Referral code
            description: The referral code.
            minLength: 4
            example: 27G47Y54VH9L
          usageCounter:
            type: integer
            title: Referral code Usages
            description: The number of times this referral code has been successfully used.
            example: 1
          batchId:
            type: string
            title: Batch ID
            description: The ID of the batch the referrals belong to.
            example: tqyrgahe
    customerProfile:
      allOf:
      - $ref: '#/components/schemas/entity'
      - $ref: '#/components/schemas/accountEntity'
      - properties:
          attributes:
            $ref: '#/components/schemas/attributeValuePairs'
          integrationId:
            type: string
            format: string
            example: URNGV8294NV
            maxLength: 1000
            description: The integration ID for this entity sent to and used in the Talon.One system.
          closedSessions:
            type: integer
            title: Closed sessions
            description: The total amount of closed sessions by a customer. A closed session is a successful purchase.
            example: 3
          totalSales:
            type: number
            description: Sum of all purchases made by this customer
            example: 299.99
            title: Total Sales
          audienceMemberships:
            type: array
            description: A list of audiences the customer belongs to
            items:
              type: object
              required:
              - id
              - name
              properties:
                id:
                  $ref: '#/components/schemas/id'
                name:
                  type: string
                  title: Audience Name
                  description: The Name of the audience belonging to this entity.
                  example: audience1
            title: Audience memberships
          lastActivity:
            type: string
            format: date-time
            description: 'Timestamp of the most recent event received from this customer.

              This field is updated on calls that trigger the rule-engine and that are

              not [dry requests](https://docs.talon.one/docs/dev/integration-api/dry-requests#overlay).


              For example, [reserving a coupon](https://docs.talon.one/integration-api#operation/createCouponReservation)

              for a customer doesn''t impact this field.

              '
            example: '2020-02-08T14:15:20Z'
    BrazeCouponRequest:
      type: object
      required:
      - deploymentUrl
      - applicationId
      - campaignId
      - identifier
      properties:
        deploymentUrl:
          type: string
          description: The base URL of your Talon.One deployment.
          example: mycompany.europe-west1.talon.one
        applicationId:
          type: integer
          format: int64
          minimum: 1
          description: The ID of the Application in Talon.One. It is displayed in your Talon.One deployment URL.
          example: 2
        campaignId:
          type: integer
          format: int64
          minimum: 1
          description: The ID of the campaign in Talon.One. It is displayed in your Talon.One deployment URL.
          example: 34
        identifier:
          type: string
          minLength: 1
          description: 'The identifier of the request. Providing a new value creates a new coupon. Providing an existing value retrieves the existing coupon of that ID and does not create a new coupon.


            In general, you should set it to a variable controlled by Braze. Usual values include:

            - `message_api_id`

            - `variant_api_id`

            - `dispatch_id`


            See [Supported personalization tags](https://www.braze.com/docs/user_guide/personalization_and_dynamic_content/liquid/supported_personalization_tags/)

            and [dispatch ID](https://www.braze.com/docs/help/help_articles/data/dispatch_id/) behavior.

            '
          example: 3495-4323
        usageLimit:
          type: integer
          format: int64
          default: 1
          description: The usage limit of the coupon.
          example: 1
        discountLimit:
          type: number
          minimum: 0
          maximum: 999999
          example: 30
          description: 'The discount amount the coupon is worth. Can be blank if, for example, the coupon provides a 10% discount, or something other than a fixed value of discounts.

            '
        reservationLimit:
          type: integer
          format: int64
          minimum: 0
          maximum: 999999
          example: 45
          description: 'The number of reservations that can be made with this coupon code.

            '
        isReservationMandatory:
          type: boolean
          example: true
          description: 'Indicates whether the code can be redeemed only if it has been reserved first.

            '
        limits:
          type: array
          description: 'Limits configuration for a coupon. These limits will override the limits

            set from the campaign.


            **Note:** Only usable when creating a single coupon which is not tied to a specific recipient.

            Only per-profile limits are allowed to be configured.

            '
          items:
            type: object
            required:
            - action
            - limit
            - entities
            properties:
              action:
                type: string
                description: 'The limitable action to which this limit applies. Must be set to `redeemCoupon`.

                  '
                example: redeemCoupon
              limit:
                type: number
                minimum: 0
                example: 1000
                description: The number of times a coupon can be redeemed per customer.
              entities:
                type: array
                description: The entities that this limit applies to. Must be set to `["Coupon", "Profile"]`.
                example:
                - Coupon
                - Profile
                items:
                  type: string
                  enum:
                  - Coupon
                  - Profile
        integrationId:
          type: string
          description: The integration ID of the customer profile. When specified, only that customer will be able to use the coupon.
          example: URNGV8294NV
        startDate:
          type: string
          format: date-time
          description: The start date of the coupon.
          example: '2021-09-30T15:35:02.371569+02:00'
        expiryDate:
          type: string
          format: date-time
          description: The expiry date of the coupon.
          example: '2022-02-28T11:00:00.569+02:00'
        validCharacters:
          type: array
          items:
            type: string
          description: The list of allowed characters to be used when generating the code.
          example:
          - S
          - U
          - M
          - E
          - R
        couponPattern:
          type: string
          description: The coupon pattern to use. Use `#` to represent a random character picked from `validCharacters`.
          example: SUMMER-####-2022
        attributes:
          type: object
          description: Arbitrary properties associated with item.
          example:
            language: english
    inventoryReferral:
      allOf:
      - $ref: '#/components/schemas/referral'
      - type: object
        x-attributable: true
        required:
        - referredCustomers
        properties:
          referredCustomers:
            type: array
            description: An array of referred customers.
            items:
              type: string
    additionalCost:
      type: object
      properties:
        price:
          description: Price of the additional cost.
          type: number
          example: 4.5
    id:
      type: integer
      title: ID
      description: Unique ID for this entity.
      format: int64
      example: 6
      minimum: 1
    loyalty:
      type: object
      description: Customer specific information about loyalty points.
      required:
      - programs
      properties:
        cards:
          title: Point balances of the loyalty cards used.
          description: Displays information about the balances of the loyalty cards.
          type: array
          items:
            $ref: '#/components/schemas/loyaltyCard'
        programs:
          type: object
          title: Customer's current loyalty program balance.
          description: Displays information about point balances in profile-based programs.
          additionalProperties:
            $ref: '#/components/schemas/loyaltyProgramLedgers'
    triggerWebhookEffectProps:
      type: object
      description: The properties specific to the "triggerWebhook" effect. This gets triggered whenever a validated rule contained a "trigger webhook" effect. This is communicated as an FYI and should usually not require action on your side.
      required:
      - webhookId
      - webhookName
      properties:
        webhookId:
          type: number
          description: The ID of the webhook that was triggered.
        webhookName:
          type: string
          description: The name of the webhook that was triggered.
    loyaltyProgramEntity:
      type: object
      required:
      - programID
      properties:
        programID:
          type: integer
          description: The ID of the loyalty program that owns this entity.
          example: 125
    customerProfileID:
      type: string
      format: string
      example: URN-GV8294NV
      maxLength: 1000
      description: The integration ID of the customer profile. If the customer profile does not exist, it will be created.
    setDiscountPerItemEffectProps:
      type: object
      description: 'The properties specific to the `setDiscountPerItem` effect, triggered whenever a validated rule contained a

        "set per item discount" effect.

        This is a discount that will be applied either on a specific item, on a specific item + additional cost or on all additional costs per item.

        This depends on the chosen scope.

        '
      required:
      - name
      - value
      - position
      properties:
        name:
          type: string
          description: 'The name of the discount. Contains a hashtag character indicating the index of the position of the item the discount applies

            to. It is identical to the value of the `position` property.

            '
        value:
          type: number
          description: The total monetary value of the discount.
        position:
          type: number
          description: The index of the item in the cart items list on which this discount should be applied.
        subPosition:
          type: number
          description: 'Only used when [cart item flattening](https://docs.talon.one/docs/product/campaigns/campaign-evaluation#flattened-cart-items) is enabled.

            Indicates which item the discount applies to for cart items with `quantity` > 1.

            '
        desiredValue:
          type: number
          description: The original value of the discount.
        scope:
          type: string
          description: 'The scope of the discount:

            - `additionalCosts`: The discount applies to all the additional costs of the item.

            - `itemTotal`: The discount applies to the price of the item + the additional costs of the item.

            - `price`: The discount applies to the price of the item.

            '
        totalDiscount:
          type: number
          description: The total discount given if this effect is a result of a prorated discount.
        desiredTotalDiscount:
          type: number
          description: The original total discount to give if this effect is a result of a prorated discount.
        bundleIndex:
          type: integer
          description: The position of the bundle in a list of item bundles created from the same bundle definition.
        bundleName:
          type: string
          description: The name of the bundle binding.
    addLoyaltyPointsEffectProps:
      type: object
      description: 'The properties specific to the "addLoyaltyPoints" effect. This gets triggered whenever a validated rule contained an "add loyalty" effect. These points are automatically stored and managed inside Talon.One.

        '
      required:
      - name
      - programId
      - subLedgerId
      - value
      - recipientIntegrationId
      - transactionUUID
      properties:
        name:
          type: string
          description: The name/description of this loyalty point addition.
        programId:
          type: integer
          description: The ID of the loyalty program where these points were added.
        subLedgerId:
          type: string
          description: The ID of the subledger within the loyalty program where these points were added.
        value:
          type: number
          description: The amount of points that were added.
        desiredValue:
          type: number
          description: The original amount of loyalty points to be awarded.
        recipientIntegrationId:
          type: string
          maxLength: 1000
          description: The user for whom these points were added.
        startDate:
          type: string
          format: date-time
          description: Date after which points will be valid.
        expiryDate:
          type: string
          format: date-time
          description: Date after which points will expire.
        transactionUUID:
          type: string
          description: The identifier of this addition in the loyalty ledger.
        cartItemPosition:
          type: number
          description: The index of the item in the cart items list on which the loyal points addition should be applied.
        cartItemSubPosition:
          type: number
          description: 'The sub position is triggered when application flattening is enabled.

            It indicates to which item the loyalty points addition applies, for cart items with `quantity` > 1.

            '
        cardIdentifier:
          type: string
          description: The card on which these points were added.
    CouponReservationRequest:
      type: object
      required:
      - deploymentUrl
      - couponValue
      - integrationId
      properties:
        deploymentUrl:
          type: string
          description: The base url of your deployment.
          example: mycompany.europe-west1.talon.one
        couponValue:
          type: string
          description: The coupon code.
        integrationId:
          type: string
          description: The integration ID of the customer profile.
    importEntity:
      type: object
      required:
      - id
      properties:
        importId:
          type: integer
          description: The ID of the Import which created this referral.
    meta:
      type: object
      properties:
        campaigns:
          description: Maps each evaluated campaign ID to a key-value list of that campaigns attributes. Campaigns without attributes will be omitted.
          type: object
          additionalProperties: true
        coupons:
          description: Maps the coupon value to a key-value list of that coupons attributes.
          type: object
          additionalProperties: true
        couponRejectionReason:
          $ref: '#/components/schemas/couponRejectionReason'
        referralRejectionReason:
          $ref: '#/components/schemas/referralRejectionReason'
        warnings:
          description: Contains warnings about possible misuse.
          type: object
          additionalProperties: true
    customerSessionV2:
      allOf:
      - $ref: '#/components/schemas/entity'
      - $ref: '#/components/schemas/integrationEntity'
      - $ref: '#/components/schemas/applicationEntity'
      - $ref: '#/components/schemas/newCustomerSessionV2'
      - type: object
        x-attributable: true
        properties:
          firstSession:
            type: boolean
            description: Indicates whether this is the first session for the customer's profile. Will always be true for anonymous sessions.
            title: First session ever?
            example: true
          total:
            type: number
            title: Session Total
            description: The total sum of cart-items, as well as additional costs, before any discounts applied.
            example: 119.99
          cartItemTotal:
            type: number
            title: Cart Items Total
            description: The total sum of cart-items before any discounts applied.
            example: 99.99
          additionalCostTotal:
            type: number
            title: Additional Costs Total
            description: The total sum of additional costs before any discounts applied.
            example: 20
          updated:
            type: string
            format: date-time
            description: Timestamp of the most recent event received on this session.
            title: Last activity on the session
            example: '2020-02-08T14:15:22Z'
        required:
        - profileId
        - firstSession
        - coupon
        - referral
        - state
        - cartItems
        - integrationId
        - applicationId
        - attributes
        - total
        - cartItemTotal
        - additionalCostTotal
        - updated
    customEffectProps:
      type: object
      description: Effect containing custom payload.
      required:
      - effectId
      - name
      - payload
      properties:
        effectId:
          type: integer
          description: The ID of the custom effect that was triggered.
        name:
          type: string
          description: The type of the custom effect.
        payload:
          description: The JSON payload of the custom effect.
          type: object
          additionalProperties: true
          x-arbitraryJSON: true
    updateLoyaltyCard:
      type: object
      required:
      - status
      properties:
        status:
          type: string
          description: 'Status of the loyalty card. Can be one of: [''active'', ''disabled''].

            '
    referralConstraints:
      type: object
      required:
      - campaignId
      properties:
        startDate:
          type: string
          format: date-time
          minimum: 0
          title: Referral code valid from
          description: Timestamp at which point the referral code becomes valid.
          example: '2020-11-10T23:00:00Z'
        expiryDate:
          type: string
          format: date-time
          minimum: 0
          title: Referral code valid until
          description: Expiry date of the referral code. Referral never expires if this is omitted, zero, or negative.
          example: '2021-11-10T23:00:00Z'
        usageLimit:
          type: integer
          title: Referral code Usage Limit
          description: 'The number of times a referral code can be used. `0` means no limit but any campaign usage limits will still apply.

            '
          minimum: 0
          maximum: 999999
          example: 1
    entityWithTalangVisibleID:
      type: object
      required:
      - id
      - created
      properties:
        id:
          

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