PUT /aiagents/{agent_id}/advanced-settings replaces the advanced settings, it does not merge them: every setting must be submitted on every update. A setting left out of the request body is submitted empty and its default is applied, so omitting a setting silently resets it. A request body without tools or without fine_tuning resets that whole group.
The safe update sequence is: read the current settings with the Get request, change the values you need, and send all of them back.
Two rules follow from the same replacement behaviour:
- a numeric setting submitted as
0counts as not submitted, and is reset to its default, even where0is inside the accepted range. Submit the smallest value above0you need instead. - the values a toggle enables are cleared whenever the toggle is submitted as
false:schedulingclearsscheduleLink,red_alertclearsred_alert_webhook_url,background_audioclearsoffice_noise_urlandoffice_noise_volume,call_outcome_webhookclearscalloutcome_webhook_url, anddrop_on_silenceclearssilence_prompt_msandsilence_drop_ms.
Boolean settings must be submitted as JSON booleans (true/false), the strings "true"/"false" are also accepted. Any other value counts as false.
find_next_folder is reported in the transfer_call group but is submitted inside tools.