Get Offer Recommendations
1 min
POST
https://api.sandbox.tripleup.dev/partner/card-accounts/{cardholder_id}/offers.recommendations
Path Parameters
- cardholder_idEntityIdrequiredExampleDescription
Body Parameters
- bodyobject
- apply_filterApplyFilterDescription
- categoryTripleOfferCategoryDescription
- exclude_offer_idsEntityId[]Description
- include_offer_idsEntityId[]Description
- modeOfferModeDescription
- typeOfferTypeDescription
- activation_requiredActivationRequiredDescription
- include_categoriesTripleOfferCategory[]
- include_modesOfferMode[]
- proximity_targetGeoTargetDescription
- country_codeCountryCodeExampleDescription
- latitudeLatitudeExample
- longitudeLongitudeExample
- postal_codePostalCodeExampleDescription
- radiusRadiusDescriptionDefault35000
- page_sizeintegerDefault100
Responses
200
- object
- recommended_offersCardholderOfferPreview[]required
- CardholderOfferCore
- activation_requiredOfferActivationIsRequiredrequiredDescription
- external_idOfferExternalIdrequiredDescription
- ExternalId
- categoryTripleOfferCategoryrequiredDescription
- currency_codeCurrencyCoderequiredExampleDescriptionDefaultUSD
- effective_dateOfferEffectiveDaterequiredExampleDescription
- expiration_dateOfferExpirationDateExampleDescription
- headlineOfferHeadlinerequiredDescription
- idEntityIdrequiredExampleDescription
- is_activatedOfferIsActivatedrequiredDescription
- activated_atOfferActivatedAtExampleDescription
- activation_expires_atOfferActivationExpiresAtExampleDescription
- merchant_logo_urlMerchantLogoUrlDescription
- merchant_nameMerchantAssumedNamerequiredDescription
- merchant_websiteMerchantWebsite
- minimum_spendOfferMinimumSpendDescription
- offer_modeOfferModerequiredDescription
- offer_preferenceOfferPreferencerequired
- reward_rateOfferRewardRateDescription
- reward_typeOfferRewardTyperequiredDescription
- reward_valueOfferRewardValueDescription
- typeOfferTyperequiredDescription
- object
- nearest_locationCardholderOfferLocationDescription
- addressStrictAddressrequiredDescription
- Address
- citystringExampleDescription
- completeCompleteAddressExampleDescription
- country_codeCountryCodeExampleDescription
- country_subdivision_codestringExampleDescription
- latitudeLatitudeExample
- longitudeLongitudeExample
- postal_codePostalCodeExampleDescription
- street_addressstringExampleDescription
- distancenumberDescription
- emailstringDescription
- idEntityIdrequiredExampleDescription
- is_in_radiusbooleanrequiredDescription
- location_namestringExampleDescription
- phone_numberstringDescription
- urlstring<url>
- totalOfferSearchResultsTotalrequiredDescription
400
- object
- status_codeintegerrequiredDescription
- contentobjectrequiredDescription
- detailsErrorResponseDetailsDescription
- error_messagestringrequiredDescriptionDefaultThe request is malformed.
- exceptionstring<TripleBadRequestError>requiredDescription
403
- object
- status_codeintegerrequiredDescription
- contentobjectrequiredDescription
- detailsErrorResponseDetailsDescription
- error_messagestringrequiredDescriptionDefaultClient authentication failed.
- exceptionstring<TripleNotAuthenticatedError>requiredDescription
404
- object
- status_codeintegerrequiredDescription
- contentobjectrequiredDescription
- detailsErrorResponseDetailsDescription
- error_messagestringrequiredDescriptionDefaultThe url path or path parameter is invalid.
- exceptionstring<TripleInvalidPathError>requiredDescription
409
- object
- status_codeintegerrequiredDescription
- contentobjectrequiredDescription
- detailsErrorResponseDetailsDescription
- error_messagestringrequiredDescriptionDefaultThe request was well-formed but violated entity integrity constraints.
- exceptionstring<TripleIntegrityError>requiredDescription
415
- object
- status_codeintegerrequiredDescription
- contentobjectrequiredDescription
- detailsErrorResponseDetailsDescription
- error_messagestringrequiredDescriptionDefaultThe request defined an unsupported media type.
- exceptionstring<TripleUnsupportedMediaType>requiredDescription
422
- object
- status_codeintegerrequiredDescription
- contentobjectrequiredDescription
- detailsErrorResponseDetailsDescription
- error_messagestringrequiredDescriptionDefaultThe request was well-formed but could not be processed.
- exceptionstring<TripleUnprocessableEntity>requiredDescription
500
- object
- status_codeintegerrequiredDescription
- contentobjectrequiredDescription
- detailsErrorResponseDetailsDescription
- error_messagestringrequiredDescriptionDefaultTriple was unable to process the request due to an internal error.
- exceptionstring<TripleInternalServerError>requiredDescription
501
- object
- status_codeintegerrequiredDescription
- contentobjectrequiredDescription
- detailsErrorResponseDetailsDescription
- error_messagestringrequiredDescriptionDefaultThe request failed because it requires a feature that is not yet implemented.
- exceptionstring<TripleNotImplementedError>requiredDescription
503
- object
- status_codeintegerrequiredDescription
- contentobjectrequiredDescription
- detailsErrorResponseDetailsDescription
- error_messagestringrequiredDescriptionDefaultThe request failed due to a triple service interruption.
- exceptionstring<TripleServiceUnavailable>requiredDescription
curl
curl --request POST \
--url https://api.sandbox.tripleup.dev/partner/card-accounts/{cardholder_id}/offers.recommendations \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '{
"proximity_target": {
"radius": 35000
},
"page_size": 100
}'javascript
var myHeaders = new Headers();
myHeaders.append("accept", "application/json");
myHeaders.append("content-type", "application/json");
var raw = JSON.stringify({
"proximity_target": {
"radius": 35000
},
"page_size": 100
});
var requestOptions = {
method: 'POST',
headers: myHeaders,
body: raw,
redirect: 'follow'
};
fetch("https://api.sandbox.tripleup.dev/partner/card-accounts/{cardholder_id}/offers.recommendations", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));ruby
require "uri"
require "json"
require "net/http"
url = URI("https://api.sandbox.tripleup.dev/partner/card-accounts/{cardholder_id}/offers.recommendations")
https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true
request = Net::HTTP::Post.new(url)
request["accept"] = "application/json"
request["content-type"] = "application/json"
request.body = JSON.dump({
"proximity_target": {
"radius": 35000
},
"page_size": 100
})
response = https.request(request)
puts response.read_body
python
import requests
import json
url = "https://api.sandbox.tripleup.dev/partner/card-accounts/{cardholder_id}/offers.recommendations"
payload = json.dumps({
"proximity_target": {
"radius": 35000
},
"page_size": 100
})
headers = {
'accept': 'application/json',
'content-type': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
200
// Recommended Offers
{
"recommended_offers": {},
"total": 0
}400
// TripleBadRequestError
{
"status_code": 0,
"content": {
"details": [
""
],
"error_message": "",
"exception": ""
}
}403
// TripleNotAuthenticatedError
{
"status_code": 0,
"content": {
"details": [
""
],
"error_message": "",
"exception": ""
}
}404
// TripleInvalidPathError
{
"status_code": 0,
"content": {
"details": [
""
],
"error_message": "",
"exception": ""
}
}409
// TripleIntegrityError
{
"status_code": 0,
"content": {
"details": [
""
],
"error_message": "",
"exception": ""
}
}415
// TripleUnsupportedMediaType
{
"status_code": 0,
"content": {
"details": [
""
],
"error_message": "",
"exception": ""
}
}422
// TripleUnprocessableEntity
{
"status_code": 0,
"content": {
"details": [
""
],
"error_message": "",
"exception": ""
}
}500
// TripleInternalServerError
{
"status_code": 0,
"content": {
"details": [
""
],
"error_message": "",
"exception": ""
}
}501
// TripleNotImplementedError
{
"status_code": 0,
"content": {
"details": [
""
],
"error_message": "",
"exception": ""
}
}503
// TripleServiceUnavailable
{
"status_code": 0,
"content": {
"details": [
""
],
"error_message": "",
"exception": ""
}
}Get Offer Recommendations.
Get Offer Recommendations, optionally filtering by offer modes and/or offer categories. If include_modes and include_categories are omitted, specified as null or specified as an empty list, the application will default to include all values in the enum.
Providing a latitude and longitude for is highly encouraged. Doing so allows Triple to deliver the most relevant Offers and Merchant Locations.
Note that Offer Display Exclusion Rules are enforced against all recommendations.