Offerit REST API Set Offer Goals

From Offerit
Jump to: navigation, search
Offerit
REST API
General
Offerit REST API Overview
GET /service/ping
Advertiser
PATCH /advertiser/edit_advertiser
POST /advertiser/add_advertiser
Affiliate
GET /affiliate/get_links
GET /affiliate/get_single_link
GET /affiliate/search
PATCH /affiliate/edit_affiliate
PATCH /affiliate/payvia
POST /affiliate/add_affiliate
POST /affiliate/affiliate_login_ips
Creative
GET /creative/get_creatives
GET /creative/get_creative_fields
GET /creative/get_creative_rules
PATCH /creative/delete_creative
PATCH /creative/edit_creative
PATCH /creative/edit_creative_rules
PATCH /creative/undelete_creative
POST /creative/add_creative
POST /creative/add_creative_rule
POST /creative/delete_creative_rules
Customer
PATCH /customer/set_customer_details
Offer
GET /offer/check_orderid_exists
GET /offer/get_commission_changes
PATCH /offer/activate_offer
PATCH /offer/edit_landing_page
PATCH /offer/edit_offer
PATCH /offer/pause_offer
PATCH /offer/set_commission_change_payouts
PATCH /offer/set_enabled_affiliates
PATCH /offer/set_offer_categories
PATCH /offer/set_offer_countries
PATCH /offer/set_offer_goals
PATCH /offer/set_offer_groups
PATCH /offer/set_offer_marketing_types
PATCH /offer/store_offer_ips
POST /offer/add_commission_change
POST /offer/add_landing_page
POST /offer/add_offer
POST /offer/add_tracking_domain
Reporting
GET /report/profitloss
GET /report/transaction
Transaction
GET /transaction/transaction_payout_preview
PATCH /transaction/transaction_update_revenue_by_orderid
PATCH /transaction/transaction_update_revenue_by_transaction_hash

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

Request Method

  • PATCH

Authentication

  • 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); 
?>