NATS For Networks REST Edit Offer
From TMM Wiki
Jump to navigationJump to searchPATCH /offer/edit_offer
Description
- edit_offer edits an existing offer
Resource URL
- http://domain/api/offer/edit_offer
- Replace domain with the NATS For Networks domain
Response Format
- JSON
- PATCH
- HTTP headers
Parameters
Offer Parameters
- offerid
- type: string
- required
- Id of offer to edit
- name
- type: string
- Offer Name
- offer_description
- type: string
- Description to display to affiliates
- hidden
- type: string
- Offer does not show up in the affiliate offer list.
- date_live
- type: string
- Time when offer should become available to affiliates. String to time on the string provided. Default is empty.
- date_expire
- type: string
- Time when offer should stop being available to affiliates. String to time on the string provided. Default is empty.
- featured
- type: bool
- thumb_url
- type: string
- Url of offer thumbnail image.
- force_url
- type: string
- Url to screenshot for thumbnail.
- Flags this as a featured offer. Default FALSE.
- expire_url
- type: string
- External URL to redirect traffic to if the offer is expired.
- expire_landing_pageid
- type: string
- ID of landing page to redirect traffic to if the offer is expired.
- no_personal_member_info
- type: string
- Prevent name and address information from being stored in the customer record
- subject_lines
- type: string
- Comma separated list of recommended subject lines for affiliates promoting via email. Only displayed when "Display Offer Email Fields" is enabled
- from_addresses
- type: string
- Comma separated list of recommended from addresses for affiliates promoting via email. Only displayed when "Display Offer Email Fields" is enabled
- ip_lookup
- type: Bool
- Set cookieless tracking to match on only IP instead of IP+Browser Details. Default FALSE.
- ip_uniqueness_seconds
- type: int
- Set the number of seconds before a repeat visit by the same visitor will trigger the 'unique' offer redirect contition. This does not affect them showing as unique in stats. Default is unset on the offer level and inheriting from the "Unique Visitor Time" configuration setting.
- offer_groups
- type: int,string,array
- Accepts an existing offer group id, comma separated list of group ids, or array of group ids to associate with this offer.
- marketing_types
- type: int,string,array
- Accepts an existing marketing type id, comma separated list of marketing type ids, or array of marketing type ids to associate with this offer.
- categories
- type: int,string,array
- Accepts an existing category id or category name, comma separated list of ids/names, or array of ids/names to associate with this offer. Creates new categories if a category name is passed that does not exist.
- authorized
- type: string,array
- Accepts a comma separated list or array of 2 letter country codes where traffic is authorized to use this offer. Defaults to the 'Default Authorized Countries' configuration setting.
- unauthorized
- type: string,array
- Accepts a comma separated list or array of 2 letter country codes where traffic is not authorized to use this offer. Defaults to the 'Default Unauthorized Countries' configuration setting.
If no authorized or unauthorized countries are set even after checking the network configurations, the offer is authorized for all countries by default.
- device_types
- type: array
- possible values : 0 (desktop) 1 (mobile) 2 (tablet)
- Accepts an array of device types to accept. Send empty array to unset.
- suppress_conversion_pixels
- type: bool
- If true, conversions will not trigger affiliate pixels (but goals assigned to the conversion column still will).
- suppress_continuity_pixels
- type: bool
- If true, continuities will not trigger affiliate pixels (but goals assigned to the continuity column still will).
Advertiser Parameters
- advertiserid
- type: int
- Loginid of advertiser account associated with this offer. Default none.
- advertiser_cost_type
- type: string
- options:
- conversion:flat amount per conversion
- dynamic_conversion:uses the revenue passed with the conversion
- sale:calculate a percentage of the gross sale amount reported by the advertiser
- click:a flat amount per click
- unique:a flat amount per unique click
- If there is an advertiser associated with this offer, how is offer revenue calculated. Default none.
- advertiser_cost_flat
- type: string
- Flat cost to advertisers. used with 'conversion','click','unique'
- advertiser_cost_perc
- type: string
- Percentage cost to advertiser used with 'sale'
Fraud Prevention Parameters
- ip_conversion_limit_flag
- type: int
- options
- 0: Inherit from Network Configuration
- 1: No Limit on this offer
- 2: Specify Limimt on this offer
- Comma separated list of recommended from addresses for affiliates promoting via email. Only displayed when "Display Offer Email Fields" is enabled. Default 0.
- ip_conversion_limit
- type: int
- Number of conversions allowed per IP to this offer in any 24 hour time period. Only checked if ip_conversion_limit_flag=2. Default 0.
- ip_conversion_group
- type: int
- options
- 0: This offer only
- x: Group id of any offer group.
- Controls the scope of ip_conversion_limit. Default is 0, this offer only. Specifying a group id will count all conversion for offers in that group
- prevent_cookie_dupes
- type: Bool
- Checks a cookie to block surfers that have already converted on this offer during the cookie lifetime. Default FALSE.
- pending_approval_lockout
- type: int
- Minimum number of seconds that must pass between a click and a conversion for that conversion to be automatically approved. While this setting is in effect, all conversions on this offer are treated as pending. If the lockout period has been reached, the system will record both a pending conversion and an approved conversion automatically. Default 0 to disable.
Revenue Parameters
- conversion_default
- type: string
- Amount used if none is specified in the conversion. Default none.
- conversion_default_type
- type: int
- options
- 1:Revenue
- 2:Gross
- Specify if the amount specified in conversion_default is revenue or gross. Default 1 for revenue
- continuity_default
- type: int
- Amount used if none is specified in the continuity. Default none.
- continuity_default_type
- type: string
- options
- 1:Revenue
- 2:Gross
- Specify if the amount specified in continuity_default is revenue or gross. Default 1 for revenue
Commission Parameters
- percentage_commission_source
- type: int'
- options
- 0:Revenue
- 1:Gross
- Specify whether revenue or gross should be used as the base when affiliate are paid a percentage. Default 0 for revenue
- hide_payout_string
- type: bool'
- Hide the automatically generated commission description and use the description in 'commission_description' instead.
- commission_description
- type: string'
- Custom description displayed to affiliates to explain how commissions are calculated for this offer.
- commission_type
- type: string'
- options
- cpa:Flat per CPA. Works with flat_amount_per_conversion and flat_amount_per_continuity
- cps:Percentage of Sale. Works with percentage_of_customer_conversion and percentage_of_customer_continuity
- click:Flat per Click. Works with flat_amount_per_click and flat_amount_per_visitor
- hybrid:Hybrid. Works with all fields.
- Specify what type of commission this offer will pay.
- flat_amount_per_click
- type: decimal'
- Flat commission paid for every raw click. Works with click or hybrid
- flat_amount_per_visitor
- type: decimal'
- Flat commission paid for every unique click. Works with click or hybrid
- flat_amount_per_conversion
- type: decimal'
- Flat commission paid for every conversion. Works with cpa or hybrid
- flat_amount_per_continuity
- type: decimal'
- Flat commission paid for every continuity. Works with cpa or hybrid
- percentage_of_customer_conversion
- type: decimal'
- Percentage of conversion revenue to pay as commission. Works with cps or hybrid
- percentage_of_customer_continuity
- type: decimal'
- Percentage of continuity revenue to pay as commission. Works with cps or hybrid
- retro_payout
- type: bool'
- All transactions for a customer will use the commission settings in place at the time of the first transaction.
- hide_deductions
- type: bool'
- Only show voids / chargebacks in affiliate statistics if they affected affiliate commissions.
- hide_continuities
- type: bool'
- Only show continuities in affiliate statistics if they affected affiliate commissions.
- hide_conversions
- type: bool'
- Only show conversions in affiliate statistics if they affected affiliate commissions.
- deduct_voids
- type: bool'
- When enabled, voids will reverse the commission paid to the affiliate on the original transaction that is being voided
- deduct_chargebacks
- type: bool'
- When enabled, chargebacks will reverse the commission paid to the affiliate on the original transaction that is being charged back
- min_deduct_date
- type: string'
- Date for stringtotime. Transactions before this date will never have their commissions removed by a void or chargeback.
- deduct_window
- type: int'
- If a void or chargeback is reported more than this many days after the original transaction, the affiliate will not have their commission removed even if deduct_voids or deduct_chargebacks is enabled.
Example Request
PATCH
http://domain/api/offer/edit_offer name=edited API TEST OFFER authorized=GB,IT advertiserid=9 advertiser_cost_type=conversion advertiser_cost_flat=25 commission_type=cps percentage_of_customer_conversion=15 percentage_of_customer_continuity=5
- Response:
{ "result":"Success", "message": "offer_saved" }
Example Code
PHP
<?php $url = 'http://domain/api/offer/edit_offer'; $curl = curl_init(); $headers = array( 'api-key: 44b5498dbcb481a0d00b404c0169af62', 'api-username: productsupport' ); $data = Array( 'offerid' => 251, 'name' => 'edited API TEST Offer', 'authorized' => 'GB,IT', 'advertiserid' => 9, 'advertiser_cost_type' => 'conversion', 'advertiser_cost_flat'=> 25, 'commission_type' => cps, 'percentage_of_customer_conversion' => 15, 'percentage_of_customer_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, "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); ?>