The operator can use the HTTP POST method to build deals for specified affilite_id.
Copy
export enum AffDealType {
// Pure deals
CPL = 1 ,
CPA = 2 ,
RevShare_NetPL = 4 ,
RevShare_NetDeposit = 8 ,
// Hybrid deals
CPL_CPA = 3 ,
CPL_RevShare_NetPL = 5 ,
CPA_RevShare_NetPL = 6 ,
CPL_RevShare_NetDeposit = 9 ,
CPA_RevShare_NetDeposit = 10 ,
}
To create a new deal for an affiliate, you need to make an HTTP POST request to the API endpoint with the following JSON body.
Copy
{
"affiliate_id": 64257,
"deal_type_id": 2, // One of deal types
"deal_group_name": "Some name of the deal",
// parameters specific for CPA deal
"cpa_amount": 10.5, // required, CPA amount that will be paid for affiliate
"qua_cpa_net_deposit": 10, // optional, NetDeposit qualifier amount
"qua_cpa_deposit": 20, // optional, Deposit qualifier amount
"qua_cpa_ftd": 10, // optional, FTD qualifier amount
"qua_cpa_volume": 100, // optional, Volume (wagering) qualifier amount
"qua_cpa_activity_count": 5 // optional, activities (bets) count qualifier amount
// parameters specific for CPA deal
"cpl_amount": 10.5, // required, CPL amount that will be paid for affiliate
"qua_cpl_volume": 100, // optional, Volume (wagering) qualifier amount
// parameters specific for RevShare deals (both P&L and NetDeposit based)
"rev_share_percentage": 25, // required, % of rev share
}
For hybrid deals, you can use a combination of parameters. For example, for CPA + RevShare_NetPL deal, the required fields will be cpa_amount and rev_share_percentage.
Copy curl --location 'https://boapi.smartico.ai/api/af2_deals_op' \
--header 'authorization: your-api-key' \
--header 'Content-Type: application/json' \
--data '{
"affiliate_id": 64257,
"deal_type_id": 6,
"deal_group_name": "CPA + REV & FTD Qualifier",
"cpa_amount": 10,
"qua_cpa_ftd": 30,
"rev_share_percentage": 25
}'
Such a deal will correspond to the following configurations made from the platform BackOffice.
You can use the HTTP POST method to set a default deal for the affiliate.
Example of the call:
Copy curl --location 'https://boapi.smartico.ai/api/private-api?method=af2_MakeDealDefault' \
--header 'authorization: your-api-key'
--header 'Content-Type: application/json' \
--header 'Active_label_id: 12345' \
--data '{
"method": "af2_MakeDealDefault",
"params": {
"deal_original_id": 39752,
"affiliate_id": "64257"
}
}'
Copy { "errCode" :0, "message" : "Deal group 39752 is set to be default" }
Copy
curl --location 'https://boapi.smartico.ai/api/af2_deals_op?affiliate_id=100508' \
--header 'authorization: your-api-key'
You need to pass affiliate_id; as a response, you will get a list of all deals, including the sub-deals. Example of the response
Copy [
{
"id" : 93195 ,
"affiliate_id" : 100508 ,
"deal_id" : 93195 ,
"deal_original_id" : 93195 ,
"deal_parent_original_id" : null ,
"deal_group_name" : "Default deal" ,
"match_brand_ids" : [
-1
] ,
"match_af_product_ids" : [
-1
] ,
"match_countries" : [
"ANY"
] ,
"match_source_ids" : [] ,
"match_campaign_ids" : [
-1
] ,
"match_date_from" : null ,
"match_date_till" : null ,
"cpa_tiers_enabled" : true ,
"cpa_tiers_structure" : [
{
"step" : 1 ,
"amount" : 2
} ,
{
"step" : 3 ,
"amount" : 4
} ,
{
"step" : 5 ,
"amount" : 6
}
] ,
"rev_share_tiers_enabled" : 0 ,
"rev_share_tiers_structure" : [] ,
"cpa_amount" : 1 ,
"rev_share_percentage" : null ,
"cpl_amount" : null ,
"qua_cpa_net_deposit" : null ,
"qua_cpa_volume" : null ,
"qua_cpa_activity_count" : null ,
"qua_cpa_ftd" : null ,
"qua_cpa_deposit" : null ,
"qua_cpl_volume" : null ,
"qua_rev_on_cpa_amount" : null ,
"deal_type_id" : 2 ,
"is_default" : true ,
"create_date" : "2023-08-03T10:18:10.168Z" ,
"close_date" : null ,
"create_by" : 2342 ,
"is_latest" : true ,
"cpl_users_count" : "0" ,
"cpa_users_count" : "0" ,
"rev_users_count" : "0" ,
"level_id" : 1 ,
"match_readable_brands" : "Any brand" ,
"match_readable_countries" : "Any country" ,
"match_readable_other" : "" ,
"cpa_tier_step_1" : 1 ,
"cpa_tier_amount_1" : 2 ,
"cpa_tier_step_2" : 3 ,
"cpa_tier_amount_2" : 4 ,
"cpa_tier_step_3" : 5 ,
"cpa_tier_amount_3" : 6
} ,
{
"id" : 94509 ,
"affiliate_id" : 100508 ,
"deal_id" : 94509 ,
"deal_original_id" : 94509 ,
"deal_parent_original_id" : 93195 ,
"deal_group_name" : null ,
"match_brand_ids" : [
-1
] ,
"match_af_product_ids" : [
-1
] ,
"match_countries" : [
"AX"
] ,
"match_source_ids" : [] ,
"match_campaign_ids" : [
-1
] ,
"match_date_from" : null ,
"match_date_till" : null ,
"cpa_tiers_enabled" : true ,
"cpa_tiers_structure" : [
{
"step" : 1 ,
"amount" : 2
} ,
{
"step" : 3 ,
"amount" : 4
} ,
{
"step" : 5 ,
"amount" : 6
}
] ,
"rev_share_tiers_enabled" : 0 ,
"rev_share_tiers_structure" : [] ,
"cpa_amount" : 5 ,
"rev_share_percentage" : null ,
"rev_cap_amount" : null ,
"cpl_amount" : null ,
"qua_cpa_net_deposit" : null ,
"qua_cpa_volume" : null ,
"qua_cpa_activity_count" : null ,
"qua_cpa_ftd" : null ,
"qua_cpa_deposit" : null ,
"qua_cpl_volume" : null ,
"qua_rev_on_cpa_amount" : null ,
"deal_type_id" : 2 ,
"is_default" : false ,
"create_date" : "2023-08-06T08:29:50.555Z" ,
"close_date" : null ,
"create_by" : 1 ,
"is_latest" : true ,
"cpl_users_count" : "0" ,
"cpa_users_count" : "0" ,
"rev_users_count" : "0" ,
"level_id" : 2 ,
"match_readable_brands" : "Any brand" ,
"match_readable_countries" : "AX" ,
"match_readable_other" : "" ,
"cpa_tier_step_1" : 1 ,
"cpa_tier_amount_1" : 2 ,
"cpa_tier_step_2" : 3 ,
"cpa_tier_amount_2" : 4 ,
"cpa_tier_step_3" : 5 ,
"cpa_tier_amount_3" : 6
}
]
If you are interested only in the root level deals, you will need to take only deals with level_id: 1