Draft Reddit ad group changes
update_reddit_ad_groupDraft changes to a Reddit ad group — budget, bid, run dates, weekly schedule, targeting.
Budget (daily_budget or lifetime_budget + end_time) is checked against max_daily_budget; bid_value against max_bid_increase_pct. Targeting lists REPLACE the current value of each key passed (each takes the full list); omitted keys are preserved. Ids/names come from search_reddit_targeting. Budget and schedule of an ad group in a campaign-budget-optimization campaign are set on the campaign (update_reddit_campaign). Returns a preview with a plan_id showing old → new per field; nothing changes until confirm_and_apply applies it.
Reddit Ads API: https://ads-api.reddit.com/docs/v3/
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | New ad group name; empty keeps the current one. | |
| gender | No | FEMALE or MALE; empty leaves gender targeting unchanged. | |
| devices | No | Full list of device targets, objects like {"type": "MOBILE", "os": "IOS", "min_version": "16"} (type DESKTOP or MOBILE; optional os ANDROID or IOS, major OS versions with iOS at least 14, and label_map {make: [models]} with makes/models from search_reddit_targeting kind "devices"). [] clears it (every device). | |
| bid_type | No | CPC, CPM, CPV, CPV6 or CPV15. | |
| carriers | No | Full list of mobile carrier ids (from search_reddit_targeting kind "carriers", e.g. "O2_DEUTSCHLAND"), checked against Reddit's carrier list. [] clears it. | |
| end_time | No | New end, same formats as start_time. | |
| keywords | No | Full list of keywords to target. | |
| schedule | No | Weekly delivery windows ("time of day" in Ads Manager), a list of blocks like {"days": "MON-FRI", "start_hour": 13, "end_hour": 23} (day names, hours 0-23, end_hour inclusive) or the native {"start_day": "FRI", "start_hour": 22, "end_day": "SAT", "end_hour": 3}. [] clears it (deliver at any time). Hours apply in each viewer's local time, not the account time zone. | |
| bid_value | No | New bid in account currency. | |
| interests | No | Full list of interest ids to target. | |
| languages | No | Full list of language codes (ISO 639-1, upper-cased automatically, e.g. "DE"). | |
| locations | No | Placements, FEED and/or COMMENTS_PAGE (conversation pages); cannot be an empty list. | |
| platforms | No | Full list of platforms: ALL, DESKTOP, DESKTOP_LEGACY, MOBILE_NATIVE, MOBILE_WEB, MOBILE_WEB_3X or SHREDTOP. | |
| start_time | No | New start, ISO 8601 (e.g. 2026-10-01T00:00:00Z); a bare YYYY-MM-DD means 00:00 UTC that day. | |
| view_modes | No | Full list of feed layouts: ALL, CARD, CLASSIC, COMPACT or IMMERSIVE. [] clears it. | |
| ad_group_id | Yes | Reddit ad group id (from get_reddit_ad_groups). | |
| communities | No | Full list of community (subreddit) names to target. | |
| bid_strategy | No | BIDLESS, MANUAL_BIDDING, MAXIMIZE_VOLUME or TARGET_CPX. | |
| daily_budget | No | New daily budget in account currency (positive). Mutually exclusive with lifetime_budget; the budget type (daily vs lifetime) cannot change after publishing. | |
| geolocations | No | Full list of geolocation ids to target (e.g. "DE" or "DE:2874225"). | |
| ad_account_id | No | Reddit ad account id (from list_reddit_accounts). Empty uses reddit.ad_account_id from the config. | |
| lifetime_budget | No | New lifetime budget in account currency (positive). Needs an end_time (passed or already set); compared to max_daily_budget by its per-day share. | |
| expand_targeting | No | Whether Reddit may expand delivery beyond the targeting; omitted leaves it unchanged. | |
| excluded_keywords | No | Full list of keywords to exclude. | |
| excluded_interests | No | Full list of interest ids to exclude (Reddit marks this field deprecated). [] clears it. | |
| custom_audience_ids | No | Full list of custom audiences to target (from get_reddit_audiences). It narrows the ad group to those people. [] clears it. | |
| excluded_communities | No | Full list of community names to exclude. | |
| excluded_geolocations | No | Full list of geolocation ids to exclude. | |
| excluded_custom_audience_ids | No | Full list of custom audiences to exclude, e.g. existing customers. [] clears it. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||