Creates or completely replaces the mutable draft for a Harbor saved query.
Replacement is complete rather than partial. The next validation or publication
uses the replacement SQL, parameter declarations, and validation values.
Unknown JSON fields, including fields inside parameter declarations, return
`400 Bad Request` before the draft is saved. Use `default_value`, not `default`,
for parameter defaults.
When you omit a parameter during execution, Polytomic uses its published
`default_value`, never its draft validation value. An omitted optional parameter
without a default binds SQL `NULL`. A required parameter allows omission when a
default exists, but rejects explicit `null` even with a default.
For a report window, use a required parameter with a default so omission selects
a useful window and explicit `null` is rejected:
```json
{"name": "days", "type": "number", "required": true, "default_value": 7}
```
Request
This endpoint expects an object.
namestringRequired
Human-readable saved-query name. Maximum 200 characters.
sql_templatestringRequired
DuckDB SQL template using {{name}} references for bound parameters.
change_notestring or nullOptional
Optional note copied to the immutable published version.
descriptionstringOptional
Business definition and usage notes. Maximum 2,000 characters.
ownerstringOptional
Human-readable owner label. Maximum 200 characters.
parameterslist of objects or nullOptional
Typed scalar parameter declarations.
validation_valuesmap from strings to any or nullOptional
Author-supplied JSON scalar values used only to validate this draft.