Offerit REST API Set Offer Goals
From Offerit
PATCH /offer/set_offer_goals
Description
- set_offer_goals updates the goals set for an offer
Resource URL
- http://domain/api/offer/set_offer_goals
- Replace domain with the Offerit domain
Response Format
- JSON
- PATCH
- HTTP headers
Parameters
- offerid
- type: int
- required
- The offer to update
- goal_vars
- type: array of goals'
- required
- Array of goal arrays. Valid goal fields for goal arrays below:
Goal Fields
offer_goal_id
- type: int
- Offer Goal Id from the edit offer details page.
goal_id
- type: int
- Goal Id. If 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.
goalid or offer_goal_id is required.
- commission_type
- type: string
- options: flat,percentage
- Type of commission the affiliate is earning on this goal.
- amount
- type: decimal
- Commission amount for affiliate. Calculated according to commission_type. Sets the exact commission amount for flat or the percent to use with percentage.
- revenue_type
- type:string
- options:dynamic_conversion,conversion,sale
- 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
- revenue_amount
- type: decimal
- 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
- aff_manager_payout
- type: bool'
- Specifies if events posted to this goal should trigger affiliate manager payouts if applicable.
- aff_referral_payout
- type: bool'
- Specifies if events posted to this goal should trigger affiliate referral payouts if applicable.
- offer_partner_payout
- type: bool'
- Specifies if events posted to this goal should trigger offer partner payouts if applicable.
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); ?>