NATS For Networks REST Add Commission Change
From TMM Wiki
Jump to navigationJump to searchThe printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
== POST /offer/add_commission_change ==
Description
- add_commission_change adds a new offer
Resource URL
- http://domain/api/offer/add_commission_change
- Replace domain with the NATS For Networks domain
Response Format
- JSON
- POST
- HTTP headers
Parameters
- offerid
- type: int
- required
- Id of the offer that contains the commission changes being edited.
- type
- type: string
- options: standard,disable,temporary
- required
- Disable automatically sets all payout fields to 0. Temporary lets you set a start and end date to schedule when the payout change will be in effect. Standard is everything else.
- username
- type: string
- Username of affiliate to restrict this new commission change to.
- loginid
- type: int
- Loginid of affiliate to restrict this new commission change to.
- countries
- type: Array
- Array of 2 character iso2 country codes to restrict this new commission change to
- countries
- type: Array
- Array of 2 character iso2 country codes to restrict this new commission change to
- subaff
- type: string
- Optional affiliate subaff value to restrict this new commission change to
- subaff2
- type: string
- Optional affiliate subaff2 value to restrict this new commission change to
- subaff3
- type: string
- Optional affiliate subaff3 value to restrict this new commission change to
- subaff4
- type: string
- Optional affiliate subaff4 value to restrict this new commission change to
- subaff5
- type: string
- Optional affiliate subaff5 value to restrict this new commission change to
- start_time
- type: string
- Start time for type=temporary. String to time is run on this field.
- end_time
- type: string
- End time for type=temporary. String to time is run on this field.
- goalid
- type: int
- The offer goal id visible in the edit offer details page or from get_commission_changes. Default 0 updates the main offer commission changes instead of goal specific commissions
- flat_amount_per_click
- type: decimal'
- Flat commission paid for every raw click. Works with click or hybrid offers
- flat_amount_per_visitor
- type: decimal'
- Flat commission paid for every unique click. Works with click or hybrid offers
- flat_amount_per_conversion
- type: decimal'
- Flat commission paid for every conversion. Works with cpa or hybrid offers
- flat_amount_per_continuity
- type: decimal'
- Flat commission paid for every continuity. Works with cpa or hybrid offers
- percentage_of_customer_conversion
- type: decimal'
- Percentage of conversion revenue to pay as commission. Works with cps or hybrid offers
- percentage_of_customer_continuity
- type: decimal'
- Percentage of continuity revenue to pay as commission. Works with cps or hybrid offers
- aff_manager_payout
- type: bool'
- Only applies to goal changes. Specifies if events posted to this goal should trigger affiliate manager payouts if applicable.
- aff_referral_payout
- type: bool'
- Only applies to goal changes. Specifies if events posted to this goal should trigger affiliate referral payouts if applicable.
- offer_partner_payout
- type: bool'
- Only applies to goal changes. Specifies if events posted to this goal should trigger offer partner payouts if applicable.
Example Request
POST
http://domain/api/offer/add_commission_change loginid=2 offerid=2 type=standard countries[0] = GB countries[1] = DE flat_amount_per_conversion=15 flat_amount_per_continuity=5
- Response:
{ "result":"Success", "message": 'changes_saved', "changeid": 59 }
Example Code
PHP
<?php $url = 'http://domain/api/offer/add_commission_change'; $curl = curl_init(); $headers = array( 'api-key: 44b5498dbcb481a0d00b404c0169af62', 'api-username: productsupport' ); $data = Array( 'offerid' => 2, 'loginid' => 2, 'type' => 'standard', 'countries' => Array('GB,DE'), 'flat_amount_per_conversion' => 15, 'flat_amount_per_continuity' => 5, ); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST"); 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); ?>