bulk_create_bars
Create up to 100 roadmap bars in one call, validating every item before anything is written. Use dry-run to preview payloads, and on partial failure retry only the failed bars to avoid duplicates.
Instructions
Create many bars on one roadmap in one call.
USE WHEN: "Add these 20 features to the roadmap", "Import this list as bars", "Create a bar per epic" For a single bar, use manage_bar instead. Each item needs name and a lane (lane name or lane_id), from the item or from set. Put shared values in set (e.g. set:{"lane":"Backend","legend":"Exploring"}). Up to 100 items. All items are validated against the roadmap before anything is written; one invalid item means nothing is sent. dry_run:true returns the exact POST payloads without writing. Parking follows manage_bar: a bar given starts_on and ends_on and no parked lands on the timeline (parked:false); an undated bar is parked by ProductPlan's default; a nested bar inherits its container's parked state. Writes run 4 at a time under the client's rate limiter. Returns per-item {index, bar_id, name, ok, error} and a summary like "Created 18 of 20 bars; 2 failed". The result is an error only when no bar was created. On a partial failure, retry only the failed items: resending the whole call would duplicate the bars that were created. FAILS WHEN: roadmap_id missing, items empty or over 100, an item without name or lane, a name not on the roadmap.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| set | No | Fields applied to every item unless the item sets them itself | |
| items | Yes | Bars to create: [{name, lane or lane_id, ...fields}]. Fields are the same as manage_bar create. | |
| dry_run | No | True to validate and return the payloads without writing | |
| roadmap_id | Yes | Roadmap to create the bars on |