SolAds Logo

Server-Side Implementation with XML/JSON-Feed


For server-side integrations where structural manipulation (layout, aggregation with other feeds, etc) is required, XML or JSON endpoints are available.

If you make a server-side implementation it's required to send a impression callback once a placement becomes visible to the user. Otherwise your traffic will not be recorded properly.


Important rules

  • Publishers must send impression callbacks to ensure correct tracking.
  • The order of the adverts must not be changed or manipulated.
  • Please only request as many ads as you intend to display.
  • Please send a referrer in the request url and a placement string in the subid parameter.
  • Results must not be cached.

Data formats & Feed-URLs

Data formats Response Endpoint Encoding
XML XML Document http://feed.solads.media/feed.xml.ashx UTF-8
JSON JSON formatted data object http://feed.solads.media/feed.json.ashx UTF-8

XML Sample Request (Native Ad)

https://feed.solads.media/feed.xml.ashx?sys=Solads&a=[[PUBLISHERID]]&ch=[[CHANNELID]]&ip=[[USER_IP]]&iw=[[IMAGE_WIDTH]]&ih=[[IMAGE_HEIGHT]]&i=1&lang=[[BROWSER_LANGUAGE]]&n=[[NUMBER_OF_RESULTS]]&ref=[[REFERRER]]&s=[[SUBSTRING]]&sl=1&consent=1&ai=1

XML Sample Response (Native Ad)

<adverts results="13">
<advert id="0" clickprice="" ecpmi="">
  <title></title>
  <description></description>
  <displayurl></displayurl>
  <clickurl></clickurl>
  <impressionurl></impressionurl>
  <imageurl></imageurl>
  <mediawidth></mediawidth>
  <mediaheight></mediaheight>
  <mediatype></mediatype>
</advert>

JSON Sample Request (Native Ad)

https://feed.solads.media/feed.json.ashx?sys=Solads&a=[[PUBLISHERID]]&ch=[[CHANNELID]]&ip=[[USER_IP]]&iw=[[IMAGE_WIDTH]]&ih=[[IMAGE_HEIGHT]]&i=1&lang=[[BROWSER_LANGUAGE]]&n=[[NUMBER_OF_RESULTS]]&ref=[[REFERRER]]&s=[[SUBSTRING]]&sl=1&consent=1&ai=1

JSON Sample Response (Native Ad)

{"adverts":{"results":,"platform":"","guid":"","mediawidth":240,"mediaheight":120,"advert":[{"id":0,"bid":,"campaign":,"copy":,"ecpmi":0.,"title":"","description":"","displayurl":"","clickurl":"",","impressionurl":"","mediatype":"","clickprice":,"imageurl":"","imagetitle":"","mediawidth":,"mediaheight":}}

Request Headers

Header Data Type Required? Description
User-Agent String Yes1 The User-Agent of the browser.
Referer String Yes1 The URL of the page that will receive the adverts from the request.

Feed Inputs

Parameter Data Type Required? Description
a Integer (6) Yes Your publisher id
ai Bit Yes Activate Actual Impressions and receive an impression callback url to notify our adserver when advert was visually served to the user
b Bit No Don't use if not asked by the accounts team to do so.
bfcpm Float No Minimum Bid for Banners. Only relevant for display ads. Usage: #.##
ch Integer Yes Channelnumber
cpw Integer Yes, for banners Copy width for banner ads
cph Integer Yes, for banners Copy height for banner ads
consent Boolean Yes Declare if you have user consent to enable processing of Personally Identifiable Information (PII) as per Regional Data Regulation Laws. Values are 1 for consent or 0 for no consent. Default value if empty or not defined is 0 (no consent).
i Bit Yes, for Natives Use images if available (default = 0)
ih Integer Yes, for Natives Logo image height for native text ads
iw Integer Yes, for Natives Logo image width for native text ads
ip IP Address Yes End user IP address
lang String Yes End User Browser Language
mt String No1 Media Type - banner, standardtexts
n Integer Yes Number of results requested (1-15)
p Enum No Return prices. See below.
ref URL Yes Pass the URL that is sending the ad request (supports decoded and encoded URL strings) to track your traffic against your site table of your publisher account so that advertisers are able to target specific pages of your site.
s String Recommended Use the SubID-String to send information about the placement of a specific ad, e.g. search-top or sidebar. This helps advertisers to better target their ads on your site.
sl Bit Recommended Set sl=1 to get secure links (HTTPS) (Default=0)
sys String Yes set to Solads (internal Name of our Platform)
t URL No Tracking URL

1 Depending upon the system's configuration, specific types of adverts can be requested by supplying the media type parameter. If this parameter is not supplied, the advert server is free to choose any media type that is valid for the other parameters in the request.


Enumerated Inputs

Prices (Parameter "p"):

Value Description
Value Description
Empty or 0 Do not return price (Default)
EUR Return prices in Euros (estimated if not feed default)
USD Return prices in US Dollars (estimated if not feed default)
GBP Return prices in Sterling (estimated if not feed default)

N.B. All prices are in cents/pennies NOT Pounds/Euros/Dollars e.g. 1.52 is ONE POINT FIVE-TWO CENTS, NOT ONE DOLLAR FIFTY-TWO!


Optional Inputs (only for internal reference)

For HTML requests:

Parameter Data Type Mandatory? Details
c URI No URI of your CSS file

Inactive Inputs (only for internal reference)

Parameter Data Type Mandatory? Details
f Bit No Filter for adult content (default = 0)
q String Yes2, if ch not defined Keyword
z String No Zone Name

(#119)

ContactLoginSignupTerms