apply_config
Apply multi-section daemon configuration as an all-or-nothing change, or run a dry run to validate and preview planned changes without writing.
Instructions
Declaratively apply a multi-section daemon config document (all-or-nothing).
A dry run needs neither an ``If-Match`` nor an idempotency key.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| dry_run | No | true = validate and return the plan (what would change) with zero writes; nothing is built, deployed or audited as a change. | |
| if_match | No | ETag of the whole config, sent as ``If-Match`` (the daemon requires it on a real apply; 409 ``config.stale`` when it no longer matches). Omit and the current ETag is read and used for you; ``*`` matches unconditionally. Not needed when ``dry_run`` is true. | |
| sections | Yes | Desired state as ``{section: {key: value}}``. Only the sections named are touched; each is merged and validated like ``set_config``'s ``values`` (an omitted key keeps its value, null deletes a NULLABLE key — a null on a non-nullable one is a 422 — and an unknown key is a 422). One invalid key rejects the whole document. | |
| idempotency_key | No | Caller-chosen key: a retry with the same key replays the first result instead of acting twice. Omit and a fresh key is minted per call, so each call acts. |