account | DynamicAccount | Yes | - | LinkedIn Ads account the forecast should be run for. |
targeting_criteria | object or string | Yes | - | LinkedIn targetingCriteria object describing the audience, as a dict or JSON string, for example {‘include’: {‘and’: [{‘or’: {‘urn:li:adTargetingFacet:locations’: [‘urn:li:geo:103644278’]}}]}}. Use linkedin_ads_search_targeting to look up real URNs and do not invent them. LinkedIn requires locations, and in practice also interfaceLocales, before it will answer. |
campaign_type | enum (SPONSORED_UPDATES, SPONSORED_INMAILS, DYNAMIC) | Yes | - | Ad format being forecast. SPONSORED_UPDATES covers feed ads including single image, video and carousel. |
objective_type | enum (BRAND_AWARENESS, ENGAGEMENT, LEAD_GENERATION, VIDEO_VIEW, WEBSITE_CONVERSION, WEBSITE_TRAFFIC, WEBSITE_VISIT) | Yes | - | Campaign objective. LinkedIn’s docs call this optional, but the API rejects the request without it, and the objective decides which metrics come back: LEAD_GENERATION adds leads, BRAND_AWARENESS adds cost per impression. |
days | integer | No | 7 | How many days ahead to forecast, starting tomorrow. Defaults to 7. LinkedIn only forecasts future time, so the window always starts in the future. |
daily_budget | number | Yes | - | Planned daily budget in the account currency. The forecast is capped by it, so the budget drives the result as much as the targeting does. |
bid_amount | number | Yes | - | Planned bid in the account currency. |
bid_type | enum (CPM, CPC, CPV) | Yes | - | Bid basis that goes with bid_amount. |
enable_audience_network | boolean | No | - | Whether to forecast with the LinkedIn Audience Network on, which extends delivery to third party apps and sites. |