NATS For Networks REST Set Offer Goals

From TMM Wiki
Jump to: navigation, search
NATS For Networks
For Affiliates
Automatic SubIDs
Affiliate Stats Dumps
Linkcode
Affiliate Custom Pixels
Affiliate Host and Post
Affiliate Area
Affiliate Account Details
Affiliate Account Change Log
Affiliate Creatives
Affiliate Creatives Search
Affiliate Settings
Affiliate Custom Pixels
Affiliate Linkcodes
Affiliate Linkcode Settings
Affiliate Login History
Affiliate Messages
Affiliate Dashboard
Dashboard Key Statistics
Dashboard Statistics Summary
Affiliate Payment History
Quick Links
Affiliate Referrals Report
Affiliate Referring URL Report
Affiliate Remote Login
Affiliate Signup
Affiliate Statistic Filters
Affiliate Statistic Views
Affiliate SubIDs
NATS For Networks Setup
Creating Admin Accounts
Tracking Domain
Edit Affiliate Text
Edit CSS Colors
Getting Started Admin
Quick Start Guide
Tracking in NATS For Networks
Pixel Builder
Postback Examples
Replacement Variables
Currency Exchange Rates

Admin Dashboard
The Admin Dashboard
Reporting Admin
The Reporting Admin
Track and Strack
  Report Breakdowns
Profit and Loss Report
Subscription Report
Transactions Reports
Affiliate Ratios Report
Affiliate Managers Report
Referral Tier Payouts Report
Referral Signup Payouts Report
Additional Commissions Report
Graphical Affiliate Comparison Report
The Single Day Comparison Report
Actual Affiliate Payments Report
Offers Admin
The Offers Admin
Offers
Offer Setup
Affiliate Referrals
Tracking Domain
Commissions
Commission Changes
Suppression Lists
Pixel Builder
ID Numbers
Offer Partner
Offer/Landing Page Redirection
Setting Rules
Admin Host and Post
Offer Goals
Affiliates Admin
The Affiliates Admin
ID Numbers
Affiliate Managers
Affiliate Referrals
Affiliate Activation
Admin-Only Settings
Affiliate Overrides
Creating Admin Accounts
In-House Accounts
Add Manual Sale
Manual Invoice
Affiliate Documents
Affiliate Enabled Offers
Change Affiliate Status
Account Changes
Advertisers Admin
The Advertisers Admin
Account Changes
Advertiser Invoices
Generate Invoice
Advertiser Approval
Change Advertiser Status
Customers Admin
Customers Admin
Manually Adding a Customer
ID Numbers
Payments Admin
The Payments Admin
Payvia Types
Payout Periods
Payvia Dump Formats
Payment Dump Entry Numbers
Payment Dump Variables
Check Functions
Setting Rules
Payment Methods
Payza
REST API
General
API Overview
GET /service/ping
GET /service/set_currency_exchange_rates
Advertiser
POST /advertiser/add_advertiser
PATCH /advertiser/edit_advertiser
Affiliate
GET /affiliate/get_links
GET /affiliate/get_single_link
GET /affiliate/search
GET /affiliate/decode_trackingcode
PATCH /affiliate/edit_affiliate
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
Offer
GET /offer/check_orderid_exists
GET /offer/get_commission_changes
GET /offer/get_conversion_caps
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
Customer
PATCH /customer/lock
PATCH /customer/unlock
GET /customer/export
PATCH /customer/forget
Transaction
GET /transaction/transaction_payout_preview
PATCH /transaction/transaction_update_revenue_by_orderid
PATCH /transaction/transaction_update_revenue_by_transaction_hash
POST /transaction/process_void
POST /transaction/process_chargeback
POST /transaction/process_reversal
GET /transaction/click_details
Creatives Admin
The Creatives Admin
Add New Creatives
Add New Creative Type
Tracking Code
Code Builder
Track and Strack
Setting Rules
  Default Creative Types
Creative Types
Image Banners
Flash Banners
Dynamic Text Banners
Feeds
Mailers
Video Download
Video Embed
Page Peels
IM Popups
Footer Ads
Page Ads
Overlays
Communications Admin
The Communications Admin
Add News Item
Sending Messages
Signup Questions
Configuration Admin
The Configuration Admin
Affiliate Signup Postback URL
Edit Affiliate Text
Edit CSS Colors
Misc.
Rules
Freeform Date
Affiliate Custom Signup
Tracking Code
Tracking in NATS For Networks
Void Conversions Remotely

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 NATS For Networks 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); 
?>