Skip to content
Go to platform

Home Services

Server-side integration

Request listings from your server and receive a JSON response.

GET https://api.myadoptimizer.com/api/MAOListingsServerAPI

Generic query string parameters

ParameterTypeDescriptionRequirement
LandingPageTokenstringToken provided by your account manager—
DevicestringDesktop or Mobile. Some 3rd-party ad networks or Private Exchange campaigns may require this value when using Server-side integration.Conditional
ClientIPstringThe user’s IP address—
CurrentURLstringThe URL where listings will be displayedOptional
SourceIDstringTracking variableRequired
ExtClickIDstringTracking variableOptional
UserAgentstringMozilla/() ()Optional
CustomVar1stringGeneric tracking variable (max length 75)Optional
CustomVar2stringGeneric tracking variable (max length 75)Optional
CustomVar3stringGeneric tracking variable (max length 75)Optional
CustomVar4stringGeneric tracking variable (max length 75)Optional
CustomVar5stringGeneric tracking variable (max length 75)Optional

Specific Query String Parameters for Home Services

Query String Params NamesData TypeAllowed Values
ZipCode*string5 char US zip code
State*string2 char US state code (Uppercase)
ProjectServiceType*stringRoofing, Gutters, Windows/Doors, Kitchen, Bathroom, Flooring, Home Security, Pest Control, Lawn Care, Siding
ProjectTypesConcentration*stringSee ProjectTypesConcentration values below.
ProjectScope*stringReplace New, Repair Existing, Other
ProjectTimeline*stringImmediate, Within 2 weeks, Within 1 month, Unsure
HomeOwner*stringYes, No
Gender*stringMale, Female, Other
Married*stringYes, No
MilitaryStatus*stringYes, No
Ageinteger1 - 99
SolarPowerBill*integer$0 - $99, $100 - $149, $150 - $199, $200 - $249, $250 - $349, $350 - $399, $400 - $449, $450 - $499, $500 - $1000+
SolarRoofingType*stringFull Sun, Partially Shaded, Mostly Shaded, Not Sure
FName ±string
LName ±string
Email ±string
Phone ±string
Address ±string
City ±string
MediaChannelstringSocial, Facebook, Native, Email, Display, SEM, SEO, SMS, Push, Affiliate, ChannelA, ChannelB, ChannelC, ChannelD, ChannelE

*Case Sensitive

±PII Fields - These values are not constraints and will not be evaluated by MAO

ProjectTypesConcentration values

Allowed values for ProjectTypesConcentration depend on the ProjectServiceType selected.

ProjectServiceTypeAllowed ProjectTypesConcentration values
RoofingAsphalt Only, Tile Only, Metal Only, Foam Only, Tar & Gravel Only, Wood Shingles Only, Slate Only
GuttersResidential, Commercial
Windows/Doors1 to 10 Windows, 1 to 10 Doors
KitchenCabinet Refacing, Countertops, Plumbing, Kitchen Remodel
BathroomBathroom Remodel, Bathtub to Shower Only, Walk-In Shower Only, Walk-In Tub Only
FlooringKitchen Flooring Only, Bathroom Flooring Only, Basement Flooring Only, Garage Flooring Only, Outdoor Flooring Only - Patio/Deck coatings
Home SecuritySecurity Intrusion, Fire Detection
Pest ControlBugs/Insects, Rodents, Birds/Bats, Small Animals, Termites, Ants, Bees/Wasps, Fleas, Spiders
Lawn CareLandscaping, Lawn Care, Gardening, Sod Installation, Tree Planting, Artificial Turf Installation
SidingAluminum, Not sure/other, Stucco, Vinyl, Wood

API Response

  • destURL: This is the Click URL. Please use the value from this field when a click is triggered.

  • impressionUrl: In the event that you are not planning to render all listings returned by this API you need to use this trigger. This is a call back URL to track live impressions. If a listing is displayed in your result set, please trigger the impressionUrl of that listing.

  • displayUrl: This is the value from “Display URL” in the Campaign Ad Copy.

  • trackingURL: This is a Image Pixel to track leads or form submits from Clicks. This is optional to implement, but it is used to provide traceability from a click to a lead submit.

  • revenue: Actual payout per click based on bid modifiers.

  • baseRevenue: Base bid per click. It’ll vary based on bid modifiers.

  • bidModifierLog: The log that shows how the baseRevenue bid was modified.

  • advertiserName: The name of the advertiser - The ID of the advertiser.

  • campaignPhoneNumber: A unique phone number assigned to the campaign to track and measure calls.

  • callToAction: Text displayed on a clickable button or element, encouraging users to initiate a phone call.

  • ctaLabel: New Specifies the text displayed on the call-to-action button.

  • adResultCallStatusID: An ID representing the campaign’s call status, where:

IDStatusAllows calls
1Click To Call is ActiveTRUE
8Campaign is out of scheduleFALSE
13Click to Call Monthly Cap ReachedFALSE
14Click to Call Daily Cap reachedFALSE
15Click to Call is OffFALSE
16Campaign is offFALSE

Example response:

{
"searchResultId": "3e9c9fa9-bfb7-47bd-8221-d2d111ebde38",
"duration": 595,
"items": [
{
"itemId": "159",
"brandName": "personalloans",
"networkSort": 1,
"requestDuration": 374,
"sourceID": null,
"extClickID": null,
"advertiserId": "53",
"advertiserName": "RateZip - 1066",
"displayName": "Save time. Save paperwork. Save Dollars.",
"headline": "Personal loans made simple. And so affordable.",
"blurbs": [
"Personal loans can be so simple. And so affordable.",
"We're making loans surprisingly painless",
"Click for quote today and save big!"
],
"imageUrl": "https://cdn.myadoptimizer.com/maojsfiles/images/LogoAdvertiser_000000_20f8cac8-121a-4d17-9a26-24d744b8b75b.JPG",
"displayURL": "http://www.google.com"
"destUrl": "https://api.myadoptimizer.com/api/MAOHttpRedirect?src=https://www.esurance.com/&LandingPageID=16&EventID=3e9c9fa9-bfb7-47bd-8221-d2d111ebde38&AdNetworkAPIID=16&cpc=11.27&Brand=esurance&Title=Save time. Save paperwork. Save Dollars.&CB=2mh319GLuFmMowM78sQmQw==&M=RatzBRmIdXToBqVWXvRlmw==&Weight=11.27&BidModifiers=50.00&NetworkAdID=159&SourceID=&LandingPageURL=",
"impressionUrl": "https://api.myadoptimizer.com/api/MAOSaveResults?LandingPageID=26&AdNetworkAPIID=29&EventID=ae9540ce-7f31-405e-b21c-f11e7a2168b8&AdCampaignID=311&RequestTypeID=4",
"revenue": 11.27,
"baseRevenue" : 7.51,
"bidModifierLog": [
"Consumer Credit: Good - Value: 50.00%",
"States: CA - Value: -10.00%",
"Tuesday: 14:18 - Value: 10.00%"
],
"weight": 11.27,
"statusId": 1,
"trackingURL": "https://api.myadoptizer.com/api/MAOLeadTracking?AdNetworkAPIID=27&LandingPageID=24&EventID=8b448cc4-da0b-4f70-b180-c0c883282a49&IP=128.1.1.1&AdCampaignID=168",
"campaignPhoneNumber": "+11234567890",
"callToAction": "Call Now",
"adResultCallStatusID": 1,
"ctaLabel": "Request Info"
}
]
}

External Ad Networks Setup Optional

To integrate the following Ad Networks, MAO will need the following values.

Media Alpha

  • api_token
  • placement_id

Transparent.ly

  • pubcampaignId

Clicks.NET

  • Affcamid
  • Key

Quinstreet

  • Src