The Deals User Data API offers real-time details on all available, ongoing, and completed deals for a specific user. It checks the offer budget status and only returns deals with available budget.
The Deals User Data API handles sorting and prioritizing offers, making it easy to organize and display the deals users have played or are currently playing, as well as the goals they have achieved. We suggest adding a tab or label in your app or website to distinguish between in-progress, completed, and available deals.
Overall, the Deals User Data API enables a simpler, faster implementation than our Deals Data API.
Note: APIs can be used with our iFrame but not with our Wallet solution.
Endpoint
Before you attempt to connect, complete the steps in Prepare to Connect to Besitos APIs.
Endpoint URL | https://wall.besitos.ai/data/deals/{partner_id}/{user_id}https://wall.besitos.ai/data/deals/{partner_ID}/{partner_user_id}/{sub_id} |
HTTP Method | GET |
Refresh rate | 5 minutes |
We recommend refreshing the API periodically to ensure you have the most up-to-date list of offers.
Path parameters
If you segment users in your database, this endpoint can include the optional sub_ID parameter. Learn more about user segmentation.
Path parameter | Data type | Required | Description |
| string | yes | Your Besitos partner ID. |
| string | yes | The user's unique ID in your system. IDs are case-insensitive and limited to 50 characters. |
| string | no | Identifier used to group or track users within your system, such as a segment, campaign, or traffic source. Maximum 50 characters. |
Query parameter
Query parameter | Data type | Required | Description |
| string | no* | User's country of record. The value must match the country associated with the user's account. Uses ISO 3166-1 alpha-2 country codes. Supported values are |
| string | no | Filter offers by device platform. Possible values are: |
| string | no | Two-letter US state abbreviation used to return offers available in that state. If not specified, offers for all eligible states are returned. |
| string | no | User's IP address. When provided, the system determines the user's state and returns offers available in that location. If both |
*Required to return offers from countries outside the US. Each country must be requested separately.
Examples
Request
Request
GET https://wall.besitos.ai/data/CwI606dZ/122334zw/002367?device_platform=android
Response
Response
{
"available": [
{
"id": "zQhlHhoj5FHa",
"image_text": "Dish Network",
"title": "Dish Network",
"image": "https://cdn.kashkick.com/offers/wGDxNKbi8KcM.jpg",
"square_image": null,
"large_image": "https://cdn.kashkick.com/offers/4QE4fDvi4IM2.jpg",
"card_text": "Enjoy your favorite channels with Dish!",
"amount": 30,
"cpa": 84,
"url": "https://wall-aws-staging.besitos.ai/redirect/zQhlHhoj5FHa/b-qM22DxBgo2scqV8rzv",
"description": "<p><span style=\"background-color: rgb(255, 255, 255); color: rgb(45, 62, 80);\">Welcome to the future of television with DISH! Enjoy a remarkable blend of cutting-edge integrated set-top technology, extensive channel lineup, and 1st place customer satisfaction(JD Power 5 yrs in a row). Join us now for an unrivaled TV experience!</span></p><p><strong style=\"background-color: rgb(255, 255, 255); color: rgb(45, 62, 80);\">Purchase a plan to earn your Test Account dev reward.</strong></p>",
"details": "<p>*New Users Only</p><p>All rewards applied to user accounts will have a Pending Period typically ranging from 1 day to 31 days (average of 14 days) to validate transactions. Pending Rewards may not be redeemed until the transaction(s) have been validated and the reward(s) actualized. </p>",
"points": [
{
"title": "$200 Prepaid Card Offer – New customers get a $200 prepaid card when signing up, adding instant value from day one."
},
{
"title": "2-Year TV Price Guarantee – Lock in your rate with no surprises or hidden fees for two full years."
},
{
"title": "All-in-One Entertainment – Enjoy live TV and top streaming apps all in one place with the DISH Hopper system."
},
{
"title": "Fast, Reliable Installation – Get set up quickly with next-day installation available in many areas."
}
],
"goals": [
{
"goal_id": "zQhlHhoj5FHa_0",
"amount": 30,
"cpa": "84.00",
"text": "Purchase a plan",
"days_left": null,
"goal_type": "linear",
"section": "linear",
"position": 1
}
],
"categories": [
{
"name": "Entertainment"
}
],
"state_filter": {
"type": "include",
"states": [
"CA",
"CO"
]
}
},
{
"id": "S7i3ZARxCFti",
"image_text": "Craftsy",
"title": "Craftsy",
"image": "https://cdn.kashkick.com/offers/qNKFQsVhAxTN.jpg",
"square_image": null,
"large_image": "https://cdn.kashkick.com/offers/DEeOJJR64k18.jpg",
"card_text": "Get your Craftsy Premium Membership for only $1.49 for your first full year!",
"amount": 1,
"cpa": 3.6,
"url": "https://wall-aws-staging.besitos.ai/redirect/S7i3ZARxCFti/b-qM22DxBgo2scqV8rzv",
"description": "<p>Craftsy is your source for inspiration where you can explore videos and resources to spark your creativity. Expand your skills with access to over 2000 easy-to-follow classes across more than 20 categories taught by industry-leading experts.</p><p><strong> Sign up for the premium membership to earn your Test Account dev reward.</strong></p>",
"details": "<p>*New Users Only</p><p>All rewards applied to user accounts will have a Pending Period typically ranging from 1 day to 31 days (average of 14 days) to validate transactions. Pending Rewards may not be redeemed until the transaction(s) have been validated and the reward(s) actualized.</p>",
"points": [
{
"title": "Tune in to Live Events with your favorite instructors!"
},
{
"title": "Only for $1.49 (normally $123)!"
},
{
"title": "New classes and content added regularly!"
}
],
"goals": [
{
"goal_id": "S7i3ZARxCFti_0",
"amount": 1,
"cpa": "3.60",
"text": "Purchase a premium membership",
"days_left": null,
"goal_type": "linear",
"section": "linear",
"position": 1
}
],
"categories": [
{
"name": "Food & Drink"
}
],
"state_filter": {
"type": "all",
"states": []
}
},
{
"id": "tcInbmRITlAA",
"image_text": "Ark7",
"title": "Ark7",
"image": "https://cdn.kashkick.com/offers/JMPnVDDw5U1J.jpg",
"square_image": null,
"large_image": "https://cdn.kashkick.com/offers/xoHO47Cqjw17.jpg",
"card_text": "Invest in rental homes - share by share with Ark7!",
"amount": 22.5,
"cpa": 75,
"url": "https://wall-aws-staging.besitos.ai/redirect/tcInbmRITlAA/b-qM22DxBgo2scqV8rzv",
"description": "<p>Ark7 empowers its community to invest in rental homes - share by share. We feature high yield, professionally managed, rental properties nationwide. Investors receive monthly passive income while enjoying appreciation and portfolio diversification.</p><p><strong>Purchase your first share of $100 or more to earn your Test Account dev reward!</strong></p><p><em style=\"font-weight: 700; color: unset;\">Why you'll love Ark7:</em></p><ul><li>Our hybrid approach of Artificial Intelligence plus local expertise are constantly hand-picking best investment opportunities, automate sourcing, leasing and property management.</li><li>Extra savings and tax benefits are passed on to investors.</li><li>No hidden fees, no surprise ever. Ark7 holds a small percentage of funds to cover property sourcing and management expenses.</li></ul>",
"details": "<p>*New Users Only</p><p>All rewards applied to user accounts will have a Pending Period typically ranging from 1 day to 31 days (average of 14 days) to validate transactions. Pending Rewards may not be redeemed until the transaction(s) have been validated and the reward(s) actualized.</p>",
"points": [
{
"title": "Receive monthly distribution straight to your account."
},
{
"title": "Your data and transaction are safeguarded."
},
{
"title": "Complete legal and financial disclosure accessible 24/7 and readily searchable."
}
],
"goals": [
{
"goal_id": "tcInbmRITlAA_0",
"amount": 0,
"cpa": "0.00",
"text": "Complete the registration",
"days_left": null,
"goal_type": "linear",
"section": "linear",
"position": 1
},
{
"goal_id": "tcInbmRITlAA_13066",
"amount": 22.5,
"cpa": "75.00",
"text": "Purchase your first share of $100 or more",
"days_left": null,
"goal_type": "linear",
"section": "linear",
"position": 2
}
],
"categories": [
{
"name": "Investing"
}
],
"state_filter": {
"type": "exclude",
"states": [
"AL",
"GA"
]
}
}
],
"in_progress": [],
"completed": [
{
"id": "1jJqFHOFGoLF",
"image_text": "Aura",
"title": "Aura",
"image": "https://cdn.kashkick.com/offers/q2T4WvjOv1W1.jpg",
"square_image": null,
"large_image": "https://cdn.kashkick.com/offers/E2JFr6467vqe.jpg",
"card_text": "Stay Safe From All Types of Malware with Aura!",
"amount": 3.5,
"cpa": 12,
"url": "",
"description": "<p>Aura Inc provides all the security features you need to protect you, your family, your devices, and your personal and financial information. It’s integrated, complete protection for peace of mind and digital wellbeing.</p><p><strong>Purchase a plan to earn your Test Account dev reward.</strong></p><p><strong><em>Why you'll love Aura:</em></strong></p><ul><li><strong>Anti-Ransomware:</strong> Eliminates attacks that encrypt your files or devices and hold them for ransom</li><li><strong style=\"color: rgb(22, 22, 22);\">Anti-Spyware:</strong><span style=\"color: rgb(22, 22, 22);\"> </span>Spots spyware before it can secretly gather personal info and share it with thieves</li><li><strong>Anti-Adware:</strong> Stops advertisers from installing unwanted tracking software on your devices</li><li><strong>Anti-Trojans:</strong> Detects and blocks malicious files which masquerade as a legitimate application</li></ul>",
"details": "<p>*New Users Only</p><p>All rewards applied to user accounts will have a Pending Period typically ranging from 1 day to 31 days (average of 14 days) to validate transactions. Pending Rewards may not be redeemed until the transaction(s) have been validated and the reward(s) actualized.</p>",
"points": [
{
"title": "Antivirus protection for up to 10 devices."
},
{
"title": "Protect against ransomware, trojans, and more."
},
{
"title": "Military-grade VPN and Password Manager."
}
],
"goals": [
{
"goal_id": 0,
"amount": 3.5,
"cpa": "12.00",
"text": "Purchase a plan",
"daysLeft": null,
"completed": true,
"failed": false,
"install": false,
"linear": 1,
"section": 1,
"completed_datetime": "2025-11-26 08:40:09",
"expires_at": "",
"expire_datetime": "",
"reachedAt": "2025-11-26 08:40:09",
"reachedAtTs": 1764164409000,
"secondsLeft": null,
"deadLine": null,
"daysToComplete": null
}
],
"categories": [
{
"name": "Services"
}
],
"history_amount": 3.5
}
],
"terms_of_service": "https://wall-aws-staging.besitos.ai/terms",
"privacy_policy": "https://wall-aws-staging.besitos.ai/privacy-policy",
"faq": "https://wall-aws-staging.besitos.ai/faq",
"support": "https://wall-aws-staging.besitos.ai/support/CwI606dZ/T7D8uz2Bo5kbdhqWfkjvbfv",
"currency": "$",
"balance": 51
}Response attributes
All dates and timestamps are returned in EST.
Attribute | Data Type | Description | Example |
Offer |
|
|
|
| string | Current state of the offer in the user's account. Possible values are | |
| string | Unique identifier for the offer. | |
| string | Short promotional message displayed with the offer. |
|
| string | Name of the offer. |
|
| string | URL of the standard offer image. | |
| string | URL of the square-format offer image. |
|
| string | URL of the large-format offer image. |
|
| string | Additional promotional text displayed on the offer card. |
|
| number | Reward amount the user can earn for completing the offer. If a custom currency is configured, the value is returned in that currency; otherwise, it is returned in USD. | |
| number | Maximum amount you (the partner) can earn, in USD, when the offer is completed. | |
| string | Tracking URL used to direct users to the offer. Parameters include:
*Must be read from the device and appended to the redirect URL at click time. | |
| text | Detailed description of the offer, returned as HTML. | |
| string | Offer requirements, eligibility rules, and reward terms, returned as HTML. | |
| array | Key offer highlights to display as bullet points in the user interface. Each item contains a |
|
Goals |
|
|
|
| string | Unique identifier for the goal. | |
| number | Reward amount the user earns upon completing the goal. If a custom currency is configured, the value is returned in that currency; otherwise, it is returned in USD. | |
| number | Amount you (the partner) earn, in USD, when the goal is completed. This value corresponds to the |
|
| string | Short description of the goal. |
|
| number | Number of days from installation in which the goal must be completed. Returns | |
| string | Goal completion type. | |
| boolean | Indicates whether the user completed the goal within the allotted time. Returned only for in-progress offers. |
|
| boolean | Indicates whether the goal expired before the user completed it. Returned only for in-progress offers. |
|
| string/datetime | Date and time the user completed the goal. Returns an empty value if the goal has not been completed. Returned only for in-progress offers. |
|
| date | Date on which the goal expires, calculated from the installation date. Returns an empty value for installation goals. Returned only for in-progress offers. |
|
| datetime | Date and time the goal expires, calculated from the installation date. Returns an empty value for installation goals. Returned only for in-progress offers. |
|
| string | Timeline section where the goal is displayed. Typically used to group goals by completion type. | |
| number | Position of the goal within the offer timeline. | |
Other offer details |
|
|
|
| array | Categories associated with the offer. Each item contains a | |
| array | State availability rules for the offer. Includes a
|
or
or
|
User earnings |
|
|
|
| number | Total amount earned by the user. If a custom currency is configured, the value is returned in that currency; otherwise, it is returned in USD. | |
| string | Currency symbol used for reward amounts. Returns your configured currency symbol or | |
| number | Current withdrawable balance available to the user. If a custom currency is configured, the value is returned in that currency; otherwise, it is returned in USD. | |
For help, contact your Besitos Account Manager or our Implementation Team at [email protected] or via your project channel in Slack.
