Talon.One

Talon.One provides personalized incentives for your mobile marketing CRM and gives you the ability to launch contextual 1-to-1 coupon, referral, discount, and loyalty campaigns quickly and efficiently.

The Braze and Talon.One integration can help take your loyalty or coupon program to the next level by sending codes generated by Talon.One to your audience through Braze Connected Content.

Prerequisites

Requirement Description
Talon.One account A Talon.One account is required to take advantage of this partnership.
Talon.One API key Details on generating a Talon.One API key can be found in the Talon.One API docs

Integration

Step 1: Set up coupons in Talon.One

On the Talon.One platform, navigate to your campaign’s coupon code generator found under Campaign > Settings > Coupon Code generator. This generator will provide the fields necessary to include in the Talon.One createcoupon endpoint.

Talon.One Coupon Settings

Endpoint usage

A custom createcoupon Talon.One endpoint must be used to convert the Talon.One data to strings. This endpoint contains the following built-in properties:

  • applicationID (required)
  • campaignID (required)
  • identifier (required)
  • integrationID
  • startDate
  • expiryDate

Example 1: Only required properties

1
2
3
4
5
6
7
8
curl https://demo.talon.one/v2/integration/braze/createcoupon \
 -X POST \
 -H 'Authorization: ApiKey-v1 <YOUR_API_KEY>' \
 -d '{
        "applicationID": "1",
        "campaignID: "1",
        "identifier": "an-example-identifier"
}'

Example 2: All built-in properties

1
2
3
4
5
6
7
8
9
10
11
curl https://demo.talon.one/v2/integration/braze/createcoupon \
 -X POST \
 -H 'Authorization: ApiKey-v1 <YOUR_API_KEY>' \
 -d '{
        "applicationID": "1",
        "campaignID": "1",
        "identifier": "an-example-identifier",
        "integrationID": "an-example-integrationID",
        "startDate": "2019-06-12T09:00:00Z",
        "expiryDate": "2019-06-13T09:00:00Z"
}'

Example 3: Custom attributes

Custom attributes can also be passed directly as long as they are notated with a dot prefix and remain wrapped in a string, as shown below.

1
2
3
4
5
6
7
8
9
10
curl https://demo.talon.one/v2/integration/braze/createcoupon \
 -X POST \
 -H 'Authorization: ApiKey-v1 <YOUR_API_KEY>' \
 -d '{
        "applicationID": "1",
        "campaignID": "1",
        "identifier": "an-example-identifier"
        ".stringAtrrName": "examplestring",
        ".listOfNumbers": "[1,2,3,4,5,6,7,8,9,10]",
    }'

Step 2: Create a Talon.One Connected Content call

Use Braze Connected Content to trigger the Talon.One coupon creation event. Place and update the following code snippet in your campaign or Canvas message body to call Talon.One coupons into your message.

1
2
3
4
5
6
7
8
9
10
11
12
{% connected_content https://[YOUR_SUBDOMAIN].talon.one/v2/integration/braze/createcoupon

:headers {
  "authorization": "ApiKey-v1 <YOUR_API_KEY>"
 } 
:method post 
:body applicationID=[YOUR_APPLICATION_ID]&campaignID=[YOUR_CAMPAIGN_ID]&identifier={{campaign.${message_api_id}}}&integrationID={{${user_id}}}
:content_type application/json 
:save result
%}

{{result.value}}
  1. Add your Talon.One subdomain to the endpoint URL.

  2. Add the authorization header and POST method of the request. Further details on generating a Talon.One API key can be found in the Talon.One API docs.

  3. Add the coupon code details mentioned in step 1 to the request body. The identifier parameter is necessary to prevent the creation of multiple coupons for one message, and each parameter should be separated with an “&” as shown above.

  4. Store the Talon.One result. Use the save parameter at the end to store the Talon.One response as a Braze variable.

  5. Show the value of the code in the message. Use Liquid to show the value of the generated message.

Troubleshooting

Ensure your Connected Content syntax is correct (as in, using the right Liquid tags for either a Canvas or campaign, as well as referencing the right value in the json response).

Be aware of the 500 messages per minute rate limit you want to implement into the Braze campaign or Canvas. If the rate limit is not respected, it cannot be guaranteed that every code will be generated or the response will be there in time.

WAS THIS PAGE HELPFUL?
New Stuff!