update: SmartCampaign parameters

Attention. All monetary campaign parameters (daily budget, weekly budget, and average price for automatic strategies) are passed via the Yandex.Direct API as integer numbers. The passed value is a monetary value in the advertiser's currency, multiplied by 1,000,000.

Request structure in JSON format:

{
  "method": "update",
  "params": {
    "Campaigns": [{  /* CampaignUpdateItem */
      ...
      "SmartCampaign": {  /* SmartCampaignUpdateItem */
        "CounterId": (long),
        "AttributionModel": ( "LC" | "LSC" | "FC" | "LYDC" ),
        "BiddingStrategy": {  /* SmartCampaignStrategy */
          "Search": {  /* SmartCampaignSearchStrategy */
            "BiddingStrategyType": ( "AVERAGE_CPC_PER_CAMPAIGN" | ... | "SERVING_OFF" ), /* required */
            "AverageCpcPerCampaign": { /* StrategyAverageCpcPerCampaign */
              "AverageCpc": (long),
              "WeeklySpendLimit": (long), /* nillable */
              "BidCeiling": (long) /* nillable */
            },
            "AverageCpcPerFilter": { /* StrategyAverageCpcPerFilter */
              "FilterAverageCpc": (long),
              "WeeklySpendLimit": (long), /* nillable */
              "BidCeiling": (long) /* nillable */
            },
            "AverageCpaPerCampaign": { /* StrategyAverageCpaPerCampaign */
              "AverageCpa": (long),
              "GoalId": (long),
              "WeeklySpendLimit": (long), /* nillable */
              "BidCeiling": (long) /* nillable */
            },
            "AverageCpaPerFilter": { /* StrategyAverageCpaPerFilter */
              "FilterAverageCpa": (long),
              "GoalId": (long),
              "WeeklySpendLimit": (long), /* nillable */
              "BidCeiling": (long) /* nillable */
            },
            "AverageRoi": {  /* StrategyAverageRoi */
              "ReserveReturn": (int),
              "RoiCoef": (long),
              "GoalId": (long),
              "WeeklySpendLimit": (long), /* nillable */
              "BidCeiling": (long), /* nillable */
              "Profitability": (long) /* nillable */
            },
            "PayForConversionPerCampaign" : { /* StrategyPayForConversionPerCampaign */
              "Cpa" : (long),
              "GoalId" : (long),
              "WeeklySpendLimit" : (long) /* nillable */
            }
         },
         "Network": {  /* SmartCampaignNetworkStrategy */
            "BiddingStrategyType": ( "AVERAGE_CPC_PER_CAMPAIGN" | ... | "SERVING_OFF" ), /* required */
            "AverageCpcPerCampaign": { /* StrategyAverageCpcPerCampaign */
              "AverageCpc": (long),
              "WeeklySpendLimit": (long), /* nillable */
              "BidCeiling": (long) /* nillable */
            },
            "AverageCpcPerFilter": { /* StrategyAverageCpcPerFilter */
              "FilterAverageCpc": (long),
              "WeeklySpendLimit": (long), /* nillable */
              "BidCeiling": (long) /* nillable */
            },
            "AverageCpaPerCampaign": { /* StrategyAverageCpaPerCampaign */
              "AverageCpa": (long),
              "GoalId": (long),
              "WeeklySpendLimit": (long), /* nillable */
              "BidCeiling": (long) /* nillable */
            },
            "AverageCpaPerFilter": { /* StrategyAverageCpaPerFilter */
              "FilterAverageCpa": (long),
              "GoalId": (long),
              "WeeklySpendLimit": (long), /* nillable */
              "BidCeiling": (long) /* nillable */
            },
            "AverageRoi": {  /* StrategyAverageRoi */
              "ReserveReturn": (int),
              "RoiCoef": (long),
              "GoalId": (long),
              "WeeklySpendLimit": (long), /* nillable */
              "BidCeiling": (long), /* nillable */
              "Profitability": (long) /* nillable */
            },
            "PayForConversionPerCampaign" : { /* StrategyPayForConversionPerCampaign */
              "Cpa" : (long),
              "GoalId" : (long),
              "WeeklySpendLimit" : (long) /* nillable */
            },
            "NetworkDefault": {  /* StrategyNetworkDefault */
            }
          } 
        },
        "Settings": [{  /* SmartCampaignSetting */
          "Option": ( "ADD_TO_FAVORITES" | "REQUIRE_SERVICING" ), /* required */
          "Value": ( "YES" | "NO" ) /* required */
        }, ... ],
        "PriorityGoals": { /* PriorityGoalsUpdateSetting */
          "Items": [{ /* PriorityGoalsUpdateItem */
            "GoalId": (long), /* required */
            "Value": (long), /* required */ 
            "Operation": ( "SET" ) /* required */
          }, ... ] /* required */
        } /* nillable */
      }
    }, ... ] /* required */
  }
}
Parameter Type Description Required
SmartCampaignUpdateItem structure
CounterId long Yandex.ID of the Yandex.Metrica tag installed on the advertiser's site (see Yandex.Metrica: advertising campaign efficiency evaluation in the Help for Yandex.Direct). No
AttributionModel AttributionModelEnum

The attribution model used for optimizing conversions (see Attribution model in the Help for Yandex.Direct).

Possible values:

  • FC — First click.
  • LC — Last click.
  • LSC — Last significant (non-direct) click.
  • LYDC — Last click from Yandex.Direct.
No
BiddingStrategy SmartCampaignStrategy Display strategy. No
Settings array of SmartCampaignSetting Array of settings that only accept the values YES or NO. No
PriorityGoals PriorityGoalsUpdateSetting, nillable

Priority goals for automatic bid adjustments.

null (nil) — Delete the set of priority goals. In this case, automatic bid adjustments are used for obtaining the maximum number of engaged sessions (see Engaged session figures in the Help for Yandex.Direct).

No
SmartCampaignSetting structure
Option SmartCampaignSettingsEnum

Setting name:

Yes
Value YesNoEnum Setting value. Yes
PriorityGoalsUpdateSetting structure
Items array of PriorityGoalsUpdateItem A new set of priority goals and conversion values to replace the existing set. Yes
PriorityGoalsUpdateItem structure
GoalId long

ID of a Yandex.Metrica goal to prioritize when automatically adjusting bids. For more information about goals, see Goals and conversions in the Help for Yandex.Metrica.

To get the list of goals, use the GetStatGoals method in version 4 or Live 4 of the API.

A value of 12 corresponds to the goal “Engaged sessions”.

Yes
Value long The conversion value is a monetary estimation of the advertiser's profit when when the goal is completed, in the advertiser's currency, multiplied by 1,000,000. The higher the conversion value, the higher the priority to achieve conversions for this goal. Yes
Operation OperationEnum

Type of action with the set of priority goals. Currently, only the SET value is available.

Yes
SmartCampaignStrategy structure
Network SmartCampaignNetworkStrategy Display strategy in ad networks. No
SmartCampaignSearchStrategy structure
BiddingStrategyType SmartCampaignSearchStrategyTypeEnum The type of display strategy in search results: Yes
AverageCpaPerCampaign StrategyAverageCpaPerCampaign Parameters of the Optimizing the number of conversions strategy with CPA for the entire campaign. When the BiddingStrategyType parameter has the value AVERAGE_CPA_PER_CAMPAIGN
AverageCpaPerFilter StrategyAverageCpaPerFilter Parameters of the Optimizing the number of conversions strategy with CPA for each filter. When the BiddingStrategyType parameter has the value AVERAGE_CPA_PER_FILTER
AverageCpcPerCampaign StrategyAverageCpсPerCampaign Parameters of the Optimizing the number of clicks strategy with CPC for the entire campaign. When the BiddingStrategyType parameter has the value AVERAGE_CPC_PER_CAMPAIGN
AverageCpcPerFilter StrategyAverageCpсPerFilter Parameters of the Optimizing the number of clicks strategy with CPC for each filter. When the BiddingStrategyType parameter has the value AVERAGE_CPC_PER_FILTER
AverageRoi StrategyAverageRoi Parameters of the Optimize ROI strategy. When the BiddingStrategyType parameter has the value AVERAGE_ROI
PayForConversionPerCampaign StrategyPayForConversionPerCampaign Parameters of the Optimizing the number of conversions strategy, pay per conversion. When the BiddingStrategyType parameter has the value PAY_FOR_CONVERSION_PER_CAMPAIGN.
SmartCampaignNetworkStrategy structure
BiddingStrategyType SmartCampaignNetworkStrategyTypeEnum

The type of display strategy in ad networks:

Yes
AverageCpaPerCampaign StrategyAverageCpaPerCampaign Parameters of the Optimizing the number of conversions strategy with CPA for the entire campaign. When the BiddingStrategyType parameter has the value AVERAGE_CPA_PER_CAMPAIGN
AverageCpaPerFilter StrategyAverageCpaPerFilter Parameters of the Optimizing the number of conversions strategy with CPA for each filter. When the BiddingStrategyType parameter has the value AVERAGE_CPA_PER_FILTER
AverageCpcPerCampaign StrategyAverageCpсPerCampaign Parameters of the Optimizing the number of clicks strategy with CPC for the entire campaign. When the BiddingStrategyType parameter has the value AVERAGE_CPC_PER_CAMPAIGN
AverageCpcPerFilter StrategyAverageCpсPerFilter Parameters of the Optimizing the number of clicks strategy with CPC for each filter. When the BiddingStrategyType parameter has the value AVERAGE_CPC_PER_FILTER
AverageRoi StrategyAverageRoi Parameters of the Optimize ROI strategy. When the BiddingStrategyType parameter has the value AVERAGE_ROI
PayForConversionPerCampaign StrategyPayForConversionPerCampaign Parameters of the Optimizing the number of conversions strategy, pay per conversion. When the BiddingStrategyType parameter has the value PAY_FOR_CONVERSION_PER_CAMPAIGN.
NetworkDefault StrategyNetworkDefault

Settings for impressions in ad networks based on the settings for search. Pass an empty structure for this strategy.

When the BiddingStrategyType parameter has the value NETWORK_DEFAULT
StrategyAverageCpaPerCampaign structure
AverageCpa long, nillable

The average cost of a conversion (CPA) in the advertiser's currency, multiplied by 1,000,000.

The minimum value for the average cost is listed by currency in the currency reference. To get the list of currencies, use the Dictionaries.get method.

No
GoalId long

ID of a Yandex.Metrica goal (only non-composite goals are appropriate). For more information about goals, see Goals and conversions in the Help for Yandex.Metrica.

To get the list of goals, use the GetStatGoals method in version 4 or Live 4 of the API.

No
WeeklySpendLimit long, nillable

The weekly budget in the advertiser's currency, multiplied by 1,000,000.

The minimum weekly budget for each currency is listed in the currency reference. To get the list of currencies, use the Dictionaries.get method.

No
BidCeiling long, nillable

The maximum bid in the advertiser's currency, multiplied by 1,000,000.

The minimum and maximum bid for each currency is listed in the currency reference. To get the list of currencies, use the Dictionaries.get method.

Note. We don't recommend setting the maximum bid, as this may reduce the effectiveness of the strategy.
No
StrategyAverageCpaPerFilter structure
FilterAverageCpa long, nillable

The average cost of a conversion for each filter by default in the advertiser's currency, multiplied by 1,000,000.

The minimum value for the average cost is listed by currency in the currency reference. To get the list of currencies, use the Dictionaries.get method.

No
GoalId long

ID of a Yandex.Metrica goal (only non-composite goals are appropriate). For more information about goals, see Goals and conversions in the Help for Yandex.Metrica.

To get the list of goals, use the GetStatGoals method in version 4 or Live 4 of the API.

No
WeeklySpendLimit long, nillable

The weekly budget in the advertiser's currency, multiplied by 1,000,000.

The minimum weekly budget for each currency is listed in the currency reference. To get the list of currencies, use the Dictionaries.get method.

No
BidCeiling long, nillable

The maximum bid in the advertiser's currency, multiplied by 1,000,000.

The minimum and maximum bid for each currency is listed in the currency reference. To get the list of currencies, use the Dictionaries.get method.

Note. We don't recommend setting the maximum bid, as this may reduce the effectiveness of the strategy.
No
StrategyAverageCpcPerCampaign structure
AverageCpс long

The average CPC in the advertiser's currency, multiplied by 1,000,000.

The minimum value for the average cost is listed by currency in the currency reference. To get the list of currencies, use the Dictionaries.get method.

No
WeeklySpendLimit long, nillable

The weekly budget in the advertiser's currency, multiplied by 1,000,000.

The minimum weekly budget for each currency is listed in the currency reference. To get the list of currencies, use the Dictionaries.get method.

No
BidCeiling long, nillable

The maximum bid in the advertiser's currency, multiplied by 1,000,000.

The minimum and maximum bid for each currency is listed in the currency reference. To get the list of currencies, use the Dictionaries.get method.

Note. We don't recommend setting the maximum bid, as this may reduce the effectiveness of the strategy.
No
StrategyAverageCpcPerFilter structure
FilterAverageCpс long No
WeeklySpendLimit long, nillable

The weekly budget in the advertiser's currency, multiplied by 1,000,000.

The minimum weekly budget for each currency is listed in the currency reference. To get the list of currencies, use the Dictionaries.get method.

No
BidCeiling long, nillable

The maximum bid in the advertiser's currency, multiplied by 1,000,000.

The minimum and maximum bid for each currency is listed in the currency reference. To get the list of currencies, use the Dictionaries.get method.

Note. We don't recommend setting the maximum bid, as this may reduce the effectiveness of the strategy.
No
StrategyAverageRoi structure
ReserveReturn int

The maximum percent of saved funds that can be returned to advertising (spent) if the forecasted return on investment exceeds the value of the RoiCoef parameter.

A value from 0 to 100 as a multiple of ten: 0, 10, 20... 100.

No
RoiCoef long The desired average return on investment per week. The value represents the ratio of profit from sales to advertising expenses, multiplied by 1,000,000. The value must be an integer. If the value is not a multiple of 10,000, the last 4 digits are reset to zero (which is the same as discarding extra digits after the decimal point). No
GoalId long

ID of a Yandex.Metrica goal (only non-composite goals are appropriate). For more information about goals, see Goals and conversions in the Help for Yandex.Metrica.

The value 13 indicates priority goals. Allowed if the PriorityGoals array specifies at least one goal that is different from engaged sessions.

To get the list of goals, use the GetStatGoals method in version 4 or Live 4 of the API.

No
WeeklySpendLimit long, nillable

The weekly budget in the advertiser's currency, multiplied by 1,000,000.

The minimum weekly budget for each currency is listed in the currency reference. To get the list of currencies, use the Dictionaries.get method.

No
BidCeiling long, nillable

The maximum bid in the advertiser's currency, multiplied by 1,000,000.

The minimum and maximum bid for each currency is listed in the currency reference. To get the list of currencies, use the Dictionaries.get method.

Note. We don't recommend setting the maximum bid, as this may reduce the effectiveness of the strategy.
No
Profitability long, nillable

The percentage of revenue that is the cost value of products or services.

The value is a percent multiplied by 1,000,000. The value must be an integer from 0 to 100,000,000 (which equals 100%). If the value is not a multiple of 10,000, the last 4 digits are reset to zero (which is the same as discarding extra digits after the decimal point).

No
StrategyPayForConversionPerCampaign structure
Cpa long

Cost of a conversion (CPA) in the advertiser's currency, multiplied by 1,000,000.

The minimum and maximum CPA values are listed by currency in the currency reference. To get the list of currencies, use the Dictionaries.get method.

No
GoalId long

ID of a Yandex.Metrica goal (only non-composite goals are appropriate). For more information about goals, see Goals and conversions in the Help for Yandex.Metrica.

To get the list of goals, use the GetStatGoals method in version 4 or Live 4 of the API.

No
WeeklySpendLimit long, nillable

The weekly budget in the advertiser's currency, multiplied by 1,000,000.

The minimum weekly budget for each currency must be at least the value of the Cpaparameter, multiplied by 20. To get the list of currencies, use the Dictionaries.get method.

No