kadam_adv_create_campaign
Create a Kadam advertiser campaign with targeting, bids, budgets, and schedules. Use dryRun to validate payload and catch field errors before spending.
Instructions
Create a new advertiser campaign. Required: type, name, url, folderId (campaign group ID), pricingModel, bid, dailyBudget. Pass dryRun: true to only check the payload — nothing is created and the same field errors are reported, which is the cheap way to find out whether bids, targeting and limits are acceptable before committing.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"type": "<type>",
"name": "<name>",
"url": "<url>",
"folderId": "<folderId>",
"pricingModel": "<pricingModel>",
"bid": "<bid>",
"dailyBudget": "<dailyBudget>",
"countries": "<countries>"
},
"name": "kadam_adv_create_campaign"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| os | No | Comma-separated OS names or IDs (e.g. 'Android,iOS' or '10,20') | |
| bid | Yes | Bid amount in USD (e.g. 0.05). For cpa_target this is the target CPA cost | |
| url | Yes | Landing page URL | |
| name | Yes | Campaign name shown in dashboard | |
| type | Yes | Ad format | |
| dryRun | No | Validate the payload and create nothing | |
| sspIds | No | Comma-separated SSP IDs for the whitelist/blacklist | |
| devices | No | Comma-separated device names or IDs (e.g. 'Desktop,Smartphone' or '1,4') | |
| endDate | No | End date (YYYY-MM-DD) | |
| sspMode | No | SSP list mode: whitelist (allow listed) or blacklist (block listed) | |
| browsers | No | Comma-separated browser names or IDs (e.g. 'Chrome,Firefox' or '8,16') | |
| folderId | Yes | Campaign group ID (API field: folderId) | |
| schedule | No | Comma-separated hours (0-23) to show ads, applied to all days (e.g. '9,10,11,17') | |
| timezone | No | Timezone offset in hours (e.g. 3 for UTC+3) | |
| countries | Yes | Comma-separated ISO country codes for bid targeting (e.g. 'US,DE,BR'). Required. | |
| languages | No | Comma-separated language names or IDs | |
| startDate | No | Start date (YYYY-MM-DD) | |
| categories | No | Comma-separated targeting from kadam://reference/categories: 'mainstream', 'adult' (parent 1001), and/or adult subcategory IDs. Do not pass other numeric category IDs on create. | |
| impTracker | No | Third-party impression tracking pixel URL | |
| secondPush | No | Enable second push notification (push/inpage_push only) | |
| dailyBudget | Yes | Daily spending limit in USD | |
| totalBudget | No | Total campaign budget in USD | |
| pricingModel | Yes | Pricing model: cpc, cpm, or cpa_target | |
| siteBlacklist | No | Comma-separated site IDs for blacklist | |
| siteWhitelist | No | Comma-separated site IDs for whitelist | |
| connectionType | No | Network connection type filter (all = no filter) | |
| conversionHold | No | Custom postback status name for Hold (e.g. 'reg'). Sent only for a custom mapping, without a template id. | |
| postViewWindow | No | Post-view attribution window in hours (1-168) | |
| trafficSources | No | Traffic source pool: 'proven' = EasyStart pool of proven sources, 'all' = full pool filtered by Audience Engagement levels. Supported formats are configured server-side (popunder at release); for unsupported formats the API rejects the field with 422. Under 'proven' the API ignores audienceEngagementLevels. | |
| campaignCapDays | No | Window in days for campaignCapViews | |
| postClickWindow | No | Post-click attribution window in hours (1-168) | |
| campaignCapViews | No | Campaign-level cap: max views of ANY creative from this campaign per user within campaignCapDays | |
| conversionReject | No | Custom postback status name for Rejected. Sent only for a custom mapping, without a template id. | |
| evenDistribution | No | Spread budget evenly across the day | |
| frequencyCapDays | No | Window in days for frequencyCapViews | |
| frequencyCapViews | No | Creative-level cap: max views of ONE creative per user within frequencyCapDays | |
| audienceExcludeIds | No | Comma-separated audience IDs to exclude | |
| audienceIncludeIds | No | Comma-separated audience IDs to include | |
| conversionApproved | No | Custom postback status name for Approved (e.g. 'dep'). Sent only for a custom mapping, without a template id. | |
| conversionTemplateId | No | Conversion template id from conversion-templates. Omit or pass 0 for a custom mapping: approved/hold/reject are sent and id is not. A positive id selects that template; the status names are then taken from the template and are not sent. | |
| pauseAfterModeration | No | Pause campaign after creatives pass moderation | |
| countLastCampaignOnly | No | Attribute conversion only to the last campaign impression (default: true) | |
| postClickAttrPriority | No | Post-click attribution takes priority over post-view (default: true) | |
| audienceEngagementLevels | No | Comma-separated Audience Engagement level slugs, e.g. 'very_high,high,medium'. Allowed slugs: very_high, high, medium, low, not_rated. Only meaningful with trafficSources=all; at least one level is required. | |
| countFirstConversionOnly | No | Count only the first conversion per user (default: true) | |
| postConversionAudienceIds | No | Comma-separated audience IDs for post-conversion retargeting |