obj_batch_create
Batch-create multiple schematic objects in one IPC round-trip to avoid repeated LLM turns and per-object saves.
Instructions
Create many schematic objects in ONE IPC round-trip.
PREFER THIS over looping obj_create. Each create costs one
LLM turn when done one at a time; batched it's a single
PreProcess/PostProcess + one save for the whole set.
Args:
operations: List of create dicts, each with:
- scope: "active_doc" (default), only active_doc is
currently honored for creates.
- object_type: Altium type name (e.g. "eNetLabel",
"eJunction", "eNoERC").
- properties: pipe-separated Name=Value list, same
format as obj_create accepts.
- container: "document" (default) or "component" (for
library-symbol contents when a lib is active).
Example, drop 3 net labels in one call: obj_batch_create(operations=[ {"object_type": "eNetLabel", "properties": "Text=VCC|Location.X=100|Location.Y=200"}, {"object_type": "eNetLabel", "properties": "Text=GND|Location.X=100|Location.Y=400"}, {"object_type": "eNetLabel", "properties": "Text=SCK|Location.X=300|Location.Y=200"}, ])
Returns: Dict with created, failed, total counts and indexed failures. Known unsupported properties (IsHidden on anything but pins, parameters, designators and sheet names; Text on a type without it, such as eParameterSet or eWire) reject that item before registration. Its failure includes reason UNSUPPORTED_PROPERTY, property and object_type. Other valid items still run.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| operations | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||