Skip to main content

Deals API

Learn about the Deals API intended use and parameters.

The Deals API provides all deals available to your users, sorted by performance, regardless of budget or status. It is intended for partners who want to develop their own methods for ordering and displaying deals.

This API provides more flexibility but demands more management effort. For example, you must regularly check each offer's budget status to display only those with available funds. Additionally, it does not include progress details for individual users.

Alternatively, our Deals User Data API delivers deals targeted to specific users, taking into account the offer budget status. Consequently, the Deals User Data API is often preferred by partners for its quicker and easier implementation.

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/partner/deals/{partner_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

Path parameter

Data type

Required

Description

partner_id

string

yes

Your Besitos partner ID.

Query parameters

Query parameter

Data type

Required

Description

country

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 AU, CA, DE, ES, FR, GB, and IT.

offer_id

string

no

Filter results by offer ID.

per_page

number

no

Number of records to return per page.

page

number

no

Page number to return. Used for paginated results.

*Required to return offers from countries outside the US. Each country must be requested separately.


Examples

Request

GET https://wall.besitos.ai/data/partner/deals/CwI606dZ/zQhlHhoj5FHa

Response

{
"data": [
{
"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,
"amount_currency": "$",
"url": "https://wall-aws-staging.besitos.ai/api-redirect/CwI606dZ/zQhlHhoj5FHa/615441a1-38ce-4022-adcb-552cf542afb3?partner_user_id=",
"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.&nbsp;</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
}
],
"budget_status": "Active",
"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,
"amount_currency": "$",
"url": "https://wall-aws-staging.besitos.ai/api-redirect/CwI606dZ/S7i3ZARxCFti/615441a1-38ce-4022-adcb-552cf542afb3?partner_user_id=",
"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>&nbsp;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
}
],
"budget_status": "Active",
"categories": [
{
"name": "Food & Drink"
}
],
"state_filter": {
"type": "all",
"states": []
}
},
{
"id": "GU1TASHFZgtI",
"image_text": null,
"title": "Albert IOS",
"image": "https://cdn.kashkick.com/offers/LgCVDi0a4mzC.jpg",
"square_image": null,
"large_image": "https://cdn.kashkick.com/offers/GqqR2lYZjy9z.jpg",
"card_text": "Start your 30 day trial with Albert to earn your Test Account dev reward.",
"amount": 5,
"cpa": 60,
"amount_currency": "$",
"url": "https://wall-aws-staging.besitos.ai/api-redirect/CwI606dZ/GU1TASHFZgtI/615441a1-38ce-4022-adcb-552cf542afb3?partner_user_id=",
"description": "<p><span style=\"color: rgb(45, 62, 80);\">Albert is building a world in which no one, regardless of income or net worth, has to worry about making the wrong financial decisions.</span></p><p><span style=\"color: rgb(45, 62, 80);\">Try Albert for 30 days before you’re charged. Plans start at $9.99/mo. Fees auto-renew until canceled. Cancel in the app. Terms apply. Offer applies to new users only.</span></p><p><strong style=\"color: rgb(59, 64, 66); background-color: rgb(255, 255, 255);\">Download Albert, link a bank account and start your 30 day trial to earn your Test Account dev reward!</strong></p>",
"details": "<p>*New Users Only.</p><p><span style=\"color: rgb(66, 63, 72); background-color: transparent;\">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.</span></p>",
"points": [
{
"title": "Download Albert, link a bank account and start your 30 day trial to earn your Kashkick reward!"
},
{
"title": "Albert budgets for you automatically and tracks your spending. Get your first budget in minutes."
},
{
"title": "Get alerted to rising bills, subscriptions you forgot about, and hidden fees. Spend less, save more."
}
],
"goals": [
{
"goal_id": "GU1TASHFZgtI_0",
"amount": 0,
"cpa": "0.00",
"text": "Install",
"days_left": null,
"goal_type": "linear",
"section": "linear",
"position": 1
},
{
"goal_id": "GU1TASHFZgtI_12265",
"amount": 5,
"cpa": "60.00",
"text": "Get approved",
"days_left": null,
"goal_type": "linear",
"section": "linear",
"position": 2
}
],
"budget_status": "Active",
"categories": [
{
"name": "Banking"
}
],
"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,
"amount_currency": "$",
"url": "https://wall-aws-staging.besitos.ai/api-redirect/CwI606dZ/tcInbmRITlAA/615441a1-38ce-4022-adcb-552cf542afb3?partner_user_id=",
"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
}
],
"budget_status": "Active",
"categories": [
{
"name": "Investing"
}
],
"state_filter": {
"type": "exclude",
"states": [
"AL",
"GA"
]
}
}
],
"links": {
"first": "https://wall-aws-staging.besitos.ai/data/partner/deals/CwI606dZ?page=1",
"last": "https://wall-aws-staging.besitos.ai/data/partner/deals/CwI606dZ?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "&laquo; Previous",
"active": false
},
{
"url": "https://wall-aws-staging.besitos.ai/data/partner/deals/CwI606dZ?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next &raquo;",
"active": false
}
],
"path": "https://wall-aws-staging.besitos.ai/data/partner/deals/CwI606dZ",
"per_page": 1000,
"to": 4,
"total": 4
}
}

Response attributes

Attributes

Data Type

Description

Example

Offer

id

string

Unique identifier for the offer.

"r0y9t6zuxixf"

image_text

string

Short promotional message displayed with the offer.

"Get paid to share which websites you browse with MobileXpression!"

title

string

Name of the offer.

"MobileXpression Panel"

image

string

URL of the standard offer image.

square_image

string

URL of the square-format offer image.

large_image

string

URL of the large-format offer image.

card_text

string

Additional promotional text displayed on the offer card.

"Easiest money ever! Just download this app and keep it on your phone for 31 days."

amount

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.

5

cpa

number

Maximum amount you (the partner) can earn, in USD, when the offer is completed.

15

amount_currency

string

Currency symbol used for the amount value. Returns your configured currency symbol or $ for USD.

"$"

url

string

Tracking URL used to direct users to the offer. Parameters include:

  • sub ID (optional)

  • partner ID

  • info - (optional) to pass additional information, such as click or session ID, via postback

  • idfa - (iOS) identifier for advertiser*

  • gaid - (Android) Google advertiser ID*

*Must be read from the device and appended to the redirect URL at click time.

description

string

Detailed description of the offer, returned as HTML.

"<p><strong>Easiest money ever! Just download this app and keep it on your phone for 31 days.</strong></p><p><span style=\"background-color: rgb(255, 255, 255);\">MobileXpression is currently looking for mobile phone users to share some of the mobile websites you're browsing on. </span></p><p><strong style=\"background-color: rgb(255, 255, 255);\">After 1 week you'll get to play an instant rewards game as a prize. To get your KashKick reward, perform the following easy steps: 1) Sign up, 2) Download the app, 3) Keep the app installed for at least 31 days, 4) Collect your reward.</strong></p><p><em style=\"background-color: rgb(255, 255, 255);\">Note: Removal of the app within 31 days will lead to a reversal of any pending reward. </em></p>"

details

string

Offer requirements, eligibility rules, and reward terms, returned as HTML.

"<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. Chargebacks will lead to the reversal of any pending rewards.</p>"

points

array

Key offer highlights to display as bullet points in the user interface. Each item contains a title attribute.

"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

string

Unique identifier for the goal.

"r0y9t6zuxixf_0"

amount

number

The 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.

5

cpa

number

Amount you (the partner) will earn in USD when the goal is completed. This value corresponds to the payout field returned by the Conversion Data API.

10

text

string

Short description of the goal.

"Keep App Installed 31 Days"

days_left

number

Number of days from installation in which the goal must be completed. Returns null for installation goals.

10

goal_type

string

Goal completion type. linear goals must be completed in sequence, while non-linear goals can be completed in any order.

"linear"

section

string

Timeline section where the goal is displayed. Typically used to group goals by completion type.

"linear"

position

number

Position of the goal within the offer timeline.

1

Other offer details

budget_status

string

Current budget availability for the offer. Possible values are Active and Exhausted. When Exhausted, the offer is unavailable to new users until the budget resets.

"Active"

categories

array

Categories associated with the offer. Each item contains a name attribute.

"categories": [ {"name": "Entertainment"}]

state_filter

array

State availability rules for the offer. Includes a type and a list of state abbreviations in states.

Type can be:

  • all - available in all states

  • include -available in listed states

  • exclude - not available in listed states

"type": "all", "states": []

or

"type": "include", "states": ["FL", "CA"]

or

"type": "exclude", "states": ["AZ", "MO"]

For help, contact your Besitos Account Manager or our Implementation Team at [email protected] or via your project channel in Slack.

Did this answer your question?