Instore Offer Details Endpoint
Description
This endpoint provides additional information about an offer, including its description, images, buying options, and eligibility criteria.
Endpoint
curl \
-X POST https://receipts.bitlabs.ai/?cmd=mp-mr-api-offer-details&offerID={offerId} \
-H "Authorization: Bearer <token>"
Parameters
Param Name | Value(s) |
---|---|
status | 200 (success), 400 (failure) |
data | array[] of offers. |
Offer Detail Fields
Name | Type | Description |
---|---|---|
addedToList | boolean | if the offer is added to the users list |
anyReceiptEligible | boolean | if the offer is an any receipt these are given special treatment as they will accept any receipt |
bannerImageUrl | string | there are several sizes for images from rectangular to square this is the rectangular ones typically used for a banner |
baseAmount | integer | this is the cashback amount in an integer format |
buyingOptions | buyingOptions Object | See additional documentation below for buyingOptions |
cap | mostly internal for now | |
categoryIDs | integer[] | These are the categories that the offer is included within |
conditions | string | This will display a displaimer about the offer |
eligibleMediums | this is an enum[] and will contain either INSTORE or ONLINE | Out of the gate we will only offer support for the INSTORE variant |
eligibleProducts | string[] | This is a string[] that contains the eligible products for this offer "eligibleProducts": [ "SweeTARTS® Gummies Fruity Splitz 5oz", "SweeTARTS® Gummies Fruity Splitz 9oz " ], |
eligibleProductsInfo | dto[] | This is an array contains additional eligible product information "eligibleProductsInfo": [ { "imageID": 263025, "imageURL": "https://ucontent.prdg.io/pimages/34/34c8eb65-272e-4508-b38c-1053aa9a06fd.PNG", "name": "SweeTARTS® Gummies Fruity Splitz 5oz", "upc": "079200074593" }, { "imageID": 263026, "imageURL": "https://ucontent.prdg.io/pimages/85/85b8b299-2ad8-4575-9543-7a9bec98264d.PNG", "name": "SweeTARTS® Gummies Fruity Splitz 9oz", "upc": "079200074562" } ], |
eligibleUpcs | string[] | These are the UPCs that the offer is eligible for |
endDate | a string formatted version of the expiration date | This is the date that the offer expires and is inclusive (if the end date is today then today is still valid) It will look like this endDate: "02/14/2024", |
imageUrl | string | Image url for the offer will often coincide with the square image url |
isIncentivized | boolean | Delineates between a high value offer or not. We have house offers that are loss leaders and this is what sets them apart. Typically we add a star to the offer to highlight it’s importance as a higher paid offer. |
lastUpdated | timestamp | The last time the offer was updated |
line1 | string | This was poorly named but you can think of this as the offer title |
line2 | string | This is the product description but it is an extremely lengthy variant of it. Expect multiple sentences to a paragraph here "line2": "Tired of choosing between sweet and tart? Now you don't have to! SweeTARTS® Gummies Fruity Splitz brings you the best of both worlds in one delicious gummy. Each chewy piece is bursting with two bold, fruity flavors, one sweet and one tart, for a flavor adventure in every bite. \n\nBuy SweeTARTS® Gummies Fruity Splitz to earn!* \nMaximum Of Two Receipt Submissions Per Week For This Offer.", |
line3 | string | Equally poorly named this is the actual cashback value to the user formatted as "line3": "$4", |
line4 | string | This is the string formatted cashback value in the client currency "line4": "400 SB", |
line5 | string | You can think of this one as a very lengthy offer disclaimer "line5": "*Only purchases of the following products are eligible for SB: \nSweeTARTS® Gummies Fruity Splitz 9oz \nSweeTARTS® Gummies Fruity Splitz 5oz \n\n No other products are eligible for SB. Must purchase at least 1 of the above eligible products to earn SB. \nSB for this offer can only be earned twice per week (Sunday-Saturday), while supplies last. \nNot all products available at all eligible retailers. \nThis offer is subject to change at any time and is available in limited quantities. \nPurchase must be made between January 8, 2024 and March 8, 2024. Receipt must be uploaded by 11:30 pm Pacific Time on March 8, 2024. Purchases made outside of the listed dates are not eligible for SB. \nUploaded receipts are not eligible for SB if linked to other promotions.", |
line6 | string | This is the string formatted cashback value in the client currency with “Cash Back” appended "line6": "$4 Cash Back", |
line7 | string | Disclaimer about how many times the user is eligible to claim the offer |
longDescription | string | A longer offer description |
notManyLeft | boolean | Determines if there aren’t a lot of these offers left. On our O&O we show small “not many left” banner |
offerID | integer | This is the offer id |
pendingDays | integer | Certain new users will have their offers automatically go into award pending. This is a measure to prevent fraud. If after the pending period is up the user will be approved. It is also possible for the user to be rejected out of award pending if their receipt is fraudulent |
purchaseQuantity | integer | This is the minimum required quantity a user will be required to buy to get the offer. Be forewarned a lot of this logic was moved into the buying options which defines if there are multiple goals like “buy 1” or “buy 2” |
quantityRemaining | integer | This let's you know how much inventory is left for the given offer. This value is set such that if the inventory is above a value of 100 it will be null and if it's equal or below it will show the count of offers still left in the budget |
rectangleImageUrl | string | Image url for a rectangular image of the offer |
restrictedToMerchants | boolean | boolean value delineating if this offer is restricted to instore merchants or if it is available at all merchants. False means it's open to all merchants. If it's true, then the list of merchants will be available in the restrictToMerchants field. |
restrictToMerchants | a dto[] of restricted instore merchants | The documentation for this is provided below about the instore merchant dto. It will include things like the name and logo also please note that on the -short call we provided a short list and this will include the full list. |
restrictToMerchantsCount | integer | the amount of merchants this offer is restricted to |
shortDescription | string | This is the description of the offer. Expect this to be a few words at most |
squareImageUrl | string | A url pointing to the square image of the offer |
startDate | string | The day that the offer starts (inclusive) formatted like so "startDate": "01/08/2024", |
Buying Options Fields
Name | Type | Description |
---|---|---|
awardFormatted | string | The string formatted reward value in the clients currency "awardFormatted": "150 SB", |
cashbackAmount | double | The reward amount in dollars "cashbackAmount": 1.5, |
cashbackFormatted | string | The string formatted reward amount in dollars formatted like so: cashbackFormatted": "$1.50", |
goalDescription | string | This is the description of the goal so there might be a buy1 or a buy 2 and this is the description for it "goalDescription": "Buy 1 pack of SweeTARTS Gummies Fruity Splitz", |
payoutAmount | double | The reward amount in the clients currency "payoutAmount": 400, |
requiredQuantity | integer | This is the required amount of the product that the user is expected to purchase to meet this goal. |
requiredSpendFormatted | Expect to mostly see required quantity. This is a separate kind of goal that requires the user to spend a certain amount on an offer rather than purchase a certain number | |
useGoalDescription | boolean | Typically the goal will look something like the following: Buy any 1 eligible product were we pull in the required quantity. If this is enabled we display the description from the goal instead. In practice this is mostly not used. |
useRequiredSpend | boolean | determines if required spend is used. This is almost never enabled. |
RestrictToMerchants Fields
Name | Type | Description |
---|---|---|
logoUrl | string | This is the logo url for the retailer |
loyaltyLinkingInfo | This is internal and can be ignored | |
mediums | this is an enum[] and will contain either INSTORE or ONLINE | Out of the gate we will only offer support for the INSTORE variant |
merchantID | integer | The internal merchants id |
merchantName | string | This is the merchants name |
orderStatus | This is internal and can be ignored | |
shopMerchantID | integer | This is internal and can be ignored |
shopMerchantUrl | string | This is internal and can be ignored |
Example Response:
{
"data": {
"addedToList": false,
"anyReceiptEligible": false,
"bannerImageUrl": "<https://ucontent.prdg.io/pimages/96/96773959-73c5-4c8c-8cdc-f5178860c012.jpg">,
"baseAmount": 600,
"buyingOptions": \[
{
"awardFormatted": "200 SB",
"cashbackAmount": 2,
"cashbackFormatted": "$2",
"goalDescription": "Buy 1 pack of SweeTARTS Gummies Fruity Splitz",
"payoutAmount": 200,
"requiredQuantity": 1,
"requiredSpendFormatted": null,
"useGoalDescription": false,
"useRequiredSpend": false
},
{
"awardFormatted": "600 SB",
"cashbackAmount": 6,
"cashbackFormatted": "$6",
"goalDescription": "Buy 2 packs of SweeTARTS Gummies Fruity Splitz",
"payoutAmount": 600,
"requiredQuantity": 2,
"requiredSpendFormatted": null,
"useGoalDescription": false,
"useRequiredSpend": false
}
\],
"cap": null,
"categoryIDs": \[
13,
18,
40,
44,
45,
8
\],
"conditions": null,
"eligibleMediums": \[
"INSTORE"
\],
"eligibleProducts": \[
"SweeTARTS® Gummies Fruity Splitz 5oz",
"SweeTARTS® Gummies Fruity Splitz 9oz "
\],
"eligibleProductsInfo": \[
{
"imageID": 263025,
"imageURL": "<https://ucontent.prdg.io/pimages/34/34c8eb65-272e-4508-b38c-1053aa9a06fd.PNG">,
"name": "SweeTARTS® Gummies Fruity Splitz 5oz",
"upc": "079200074593"
},
{
"imageID": 263026,
"imageURL": "<https://ucontent.prdg.io/pimages/85/85b8b299-2ad8-4575-9543-7a9bec98264d.PNG">,
"name": "SweeTARTS® Gummies Fruity Splitz 9oz",
"upc": "079200074562"
}
\],
"endDate": null,
"imageUrl": "<https://ucontent.prdg.io/pimages/58/5844d280-9839-4f1e-8321-46a07608fd16.jpg">,
"isIncentivized": true,
"line1": "SweeTARTS® Gummies Fruity Splitz",
"line2": "Tired of choosing between sweet and tart? Now you don't have to! SweeTARTS® Gummies Fruity Splitz brings you the best of both worlds in one delicious gummy. Each chewy piece is bursting with two bold, fruity flavors, one sweet and one tart, for a flavor adventure in every bite.<br><br>\\n\\nBuy SweeTARTS® Gummies Fruity Splitz to earn!\_<br><br>\\nMaximum Of Two Receipt Submissions Per Week For This Offer.",
"line3": "$6",
"line4": "600 SB",
"line5": "\_Only purchases of the following products are eligible for SB:<br>\\nSweeTARTS® Gummies Fruity Splitz 9oz<br>\\nSweeTARTS® Gummies Fruity Splitz 5oz<br>\\n\\n<br>No other products are eligible for SB.<br>Must purchase at least 1 of the above eligible products to earn SB.<br>\\nSB for this offer can only be earned twice per week (Sunday-Saturday), while supplies last.<br><br>\\nNot all products available at all eligible retailers. <br>\\nThis offer is subject to change at any time and is available in limited quantities.<br>\\nPurchase must be made between January 8, 2024 and March 8, 2024. Receipt must be uploaded by 11:30 pm Pacific Time on March 8, 2024. Purchases made outside of the listed dates are not eligible for SB.<br><br>\\nUploaded receipts are not eligible for SB if linked to other promotions.",
"line6": "$6 Cash Back",
"line7": "Maximum Of Two Receipt Submissions Per Week For This Offer.",
"longDescription": "Tired of choosing between sweet and tart? Now you don't have to! SweeTARTS® Gummies Fruity Splitz brings you the best of both worlds in one delicious gummy. Each chewy piece is bursting with two bold, fruity flavors, one sweet and one tart, for a flavor adventure in every bite.<br><br>\\n\\nBuy SweeTARTS® Gummies Fruity Splitz to earn!\*<br><br>\\nMaximum Of Two Receipt Submissions Per Week For This Offer.",
"notManyLeft": false,
"offerID": 7045645,
"pendingDays": 0,
"purchaseQuantity": 1,
"rectangleImageUrl": "<https://ucontent.prdg.io/pimages/58/5844d280-9839-4f1e-8321-46a07608fd16.jpg">,
"restrictedToMerchants": true,
"restrictToMerchants": \[
{
"logoUrl": "<https://ucontent.prdg.io/img/instore/logos/logo-1.png?v=1694019930000">,
"loyaltyLinkingInfo": {
"bgImageURL": "<https://ucontent.prdg.io/img/instore/bg-logos/bg-logo-1.png?v=1694019929000">,
"blinkMerchantID": 11,
"loyaltyAccountMerchantID": 1,
"loyaltyLinkingEnabled": true,
"registrationLink": "<https://www.walmart.com/account/signup?vid=oaoh">,
"tutorialText1": "Curbside pick up and online orders are not currently supported.",
"tutorialText2": "Curbside pick up and online orders are not currently supported."
},
"mediums": \[
"INSTORE"
\],
"merchantID": 1,
"merchantName": "Walmart",
"orderStatus": "",
"shopMerchantID": 183,
"shopMerchantUrl": "/shop/walmart-coupons"
}
\],
"restrictToMerchantsCount": 23,
"shortDescription": "Double the Fun with SweeTARTS® Gummies Fruity Splitz!",
"squareImageUrl": "<https://ucontent.prdg.io/pimages/b8/b829991d-14c1-406a-bacb-5925ca873518.jpg">,
"startDate": "01/08/2024"
},
"status": 200
}
Sample Pictures Displaying The Offer Details View
Updated about 2 months ago