
As an advertiser you can use the PUT /campaigns/{campaignid} (opens in a new tab) ExoClick API endpoint in order to target or block zones in a campaign.
The JSON structure provided includes the section where the **zones **and the zones targeting are defined, however, the setting is slightly different depending on which targeting option you choose.
Zones
Request **Including **Zones:
{
“zones”: [
{
“id”: 2154141,
“price”: 0.5
},
{
“id”: 499709,
“price”: 0.8
}
],
“zone_targeting”: {
“type”: 1,
“network_selection”: 0,
“partner_networks”: 0
}
}

Request **Excluding **Zones:
{
“zones”: [
{
“id”: 2154141
},
{
“id”: 499709
}
],
“zone_targeting”: {
“type”: 0,
“network_selection”: 0,
“partner_networks”: 0
}
}

Please note: when Excluding it is not necessary to add the price to the JSON structure.
Zone Targeting Values
In order to define the different targeting types, network selection, and the partner networks you will need to use the proper values that each one has:
Types
Exclude → *“type”: 0, *
Include → *“type”: 1, *
All → “type”: 2
Network Selection
All → *“network_selection”: 0, *
RON → *“network_selection”: 1, *
Premium → *“network_selection”: 2, *
Members Area → “network_selection”: 3
Partner Networks
- Disabled → *“partner_networks”: 0, *
- Enabled → “partner_networks”: 1
Please note: these two structures are mandatory in order to be defined together as both depend on one anothers configuration.
In order to help you see how you can use zone targeting and optimize your campaign, we have created this spreadsheet (opens in a new tab) where you can see how your zones are performing or analyze the lower zones so you can block under performing zones. This way you can see which of those zones are more profitable for your campaign and take actions on them.
Remember that in order to use ExoClick’s API you must set a Session Token. To set a token, you must have a valid account with the required username and password. The API Token creation is available from the API tab within the Admin Panel.
Also, don’t forget to copy this spreadsheet (opens in a new tab) to your Google Drive and then open it. All of the API coding is done using Google script language, so when you open the spreadsheet simply go to the Tools menu and select Script Editor.
So let’s get started!
Zones Targeting
Step 1
Copy the zones that the API has selected then paste which zones from that list that you want to block in the zone ID to block the field.
Step 2
Select from the drop down menu under Zone Targeting: All or Include or Exclude.
Then select from the next drop down menu under Network Selection: All or RON or Premium or Members area.
Please note:
- All = all ad zones on our network
- RON = All Ad Zones, excluding Premium and Members Area Zones
- Premium: Premium Ad Zones Only
- Members area: Members Area Ad Zones Only
Select from the drop down menu under Partner Networks: enabled or disabled.
Please note:
- Enabled: your campaign will receive traffic from Networks and Websites
- Disabled: your campaign will receive traffic from just standard Websites
Finally, you have the option to set a custom price. Please note, custom price is only possible when you include zones.
Step 3
Now you can optimize zones from the CID you have used on the spreadsheet by simply clicking on the Perform Zones button. If everything is correct the message ‘Campaign successfully updated’ will appear under Response Message.
Please note: Some zones will only be available on specific Network Selections, therefore after pressing the Perform Zones button you receive an error message, you should check the network selection of that zone.

And that’s it! Practice with a number of different campaigns and use the insights generated from your data to help you make the right optimization decisions for targeting and blocking ad zones.
For info relating to getting campaign zone data please check this other blog post API Masterclass #2: Zone OptimisationPost.