User Settings¶
Authentication required. No additional privilege required - each user manages their own settings.
Per-user preferences controlling display behaviour, data aggregation, and workflow prompts.
Settings Object¶
{
"aggregate_global": false,
"indirect_demand": true,
"indirect_forecast": true,
"settings_show_suggested_orders": true,
"settings_ask_when_accepting_suggested": true,
"settings_ask_on_edit_suggested": "Ask",
"hide_no_data_rows": false
}
| Field | Type | Default | Description |
|---|---|---|---|
aggregate_global |
boolean | false |
Show aggregated (global) data instead of per-warehouse |
indirect_demand |
boolean | true |
Include indirect/derived demand in planning views |
indirect_forecast |
boolean | true |
Include indirect/derived forecast in planning views |
settings_show_suggested_orders |
boolean | true |
Show system-suggested orders in procurement views |
settings_ask_when_accepting_suggested |
boolean | true |
Show confirmation prompt before accepting suggested orders |
settings_ask_on_edit_suggested |
string | "Ask" |
Prompt behaviour when editing suggested orders: Ask, Always, Never |
hide_no_data_rows |
boolean | false |
Hide rows with no data in inventory planning tables |
GET - Read Settings¶
PATCH - Update Settings¶
Partial update - include only the fields you want to change.
PATCH /api/user-settings HTTP/1.1
Content-Type: application/json
X-XSRF-TOKEN: <csrf>
{
"aggregate_global": true,
"hide_no_data_rows": true
}
Response¶
Code Example¶
csrf = session.cookies.get("csrf_access_token")
# Read current settings
settings = session.get("https://acme.knosc.com/api/user-settings").json()
print(settings["aggregate_global"])
# Update a single setting
session.patch(
"https://acme.knosc.com/api/user-settings",
headers={"X-XSRF-TOKEN": csrf},
json={"hide_no_data_rows": True}
)