Skip to content

Set Offer Goals

PATCH /offer/set_offer_goals

Description URL Response Format Request Method Authentication
Update the goals set for an offer https://domain/api/offer/set_offer_goals JSON PATCH HTTP headers

Parameters

Name Description Type Required
offerid id of the offer to be updaated integer yes
goal_vars Array of goal arrays. Valid goal fields for goal arrays below: array yes
offer_goal_id - Offer Goal Id from the edit offer details page integer
goal_id - OfferIf offer_goal_id is not present the goal_id will be used to find an existing goal of this type on this offer. If this goal does not already exist for the offer it will be created. integer
commission_type - Type of commission the affiliate is earning on this goal. Options are: string
- flat integer
- percentage integer
amount - Commission amount for affiliate. Calculated according to commission_type. Sets the exact commission amount for flat or the percent to use with percentage. decimal
revenue_type - How to calculate revenue for this goal. "dynamic_conversion" accepts revenue from the url. "conversion" is a flat amount. "sale" takes a percentage of the revenue from the url. Options are: string
- dynamic_conversion
- conversion,sale integer
revenue_amount - Revenue amount for goal. Calculated according to revenue_type. Sets the exact revenue amount for conversion or the percent to use with sale. Ignored with dynamic_conversion decimal
aff_manager_payout - Specifies if events posted to this goal should trigger affiliate manager payouts if applicable boolean
aff_referral_payout - Specifies if events posted to this goal should trigger affiliate referral payouts if applicable boolean
offer_partner_payout - Specifies if events posted to this goal should trigger offer partner payouts if applicable boolean

Note

Either goalid or offer_goal_id is required.

Example Request

PATCH

http://domain/api/offer/set_offer_goals
offerid=2
goal_vars[0][goal_id]=1
goal_vars[0][revenue_type]=dynamic_conversion
goal_vars[0][commission_type]=flat
goal_vars[0][amount]=5.15
goal_vars[0][aff_referral_payout]=TRUE
goal_vars[1][goal_id]=2
goal_vars[1][revenue_type]=conversion
goal_vars[1][revenue_amount]=15.51
goal_vars[1][commission_type]=percentage
goal_vars[1][amount]=33
goal_vars[1][aff_referral_payout]=TRUE

Response:

{
    "result":"Success",
}

Example Code

php

<?php 
$url = 'http://domain/api/offer/set_offer_goals';
$curl = curl_init(); 

$headers = array( 
    'api-key: 44b5498dbcb481a0d00b404c0169af62', 
    'api-username: productsupport' 
);

 $data = Array(
    'offerid' => 2,
    'goal_vars' => Array(
        Array(
            'goal_id' => 1,
            'revenue_type' => 'dynamic_conversion',
            'commission_type' => 'flat',
            'amount' => 5.15,
            'aff_referral_payout' => TRUE
        ),
        Array(
            'goal_id' => 2,
            'revenue_type' => 'conversion',
            'revenue_amount' => 15.51,
            'commission_type' => 'percentage',
            'amount' => 33,
            'aff_referral_payout' => TRUE
        ),        
    )
); 

curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "PATCH");
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data));

$resp = curl_exec($curl); 
//dumps an associative array representation of the json response
$output = json_decode($resp, true);
if($output !== NULL) {
    //json was valid. Dump the decoded array
    print_r($output);
}
else {
    //invalid json, just dump the raw response
    print_r($resp);
}
// Close request to clear up some resources 
curl_close($curl); 
?>