Update Forecast Configuration
PUT/api/inventory-forecasting/configurations/:configuration
Updates an existing forecast configuration. All fields use sometimes validation — only send the fields you want to change.
Any valid API token can call this endpoint — no specific scope required. Manage tokens.
The controller merges the incoming payload over the existing configuration data via ForecastConfigurationData::fromModel($configuration), so omitted fields retain their current values. Any field you want to change must be present in the validation rules — otherwise validated() strips it and the merge silently reverts it to the stored value.
Accepts the same fields as Create, including use_min_stock_level_as_target, use_case_pack, case_pack_rounding, and ignore_min_stock_level. The name uniqueness rule excludes the current record (so unchanged names pass validation).
Authentication: Requires Bearer token.
Baseline decomposition fields (baseline_method, trend_damping_factor, trend_max_growth_pct, trend_half_life_days, exclude_detected_anomalies) persist onto the configuration and can be changed here; the new values apply to the next on-demand build and to any schedule attached to this configuration. baseline_method is flat (default), recency_weighted, or damped_trend; trend_damping_factor (0..1, default 0.85) is the damping factor phi (lower = more damping); trend_max_growth_pct (>= 0, default 100) caps the trend lift above the flat mean; trend_half_life_days (>= 1, nullable, default 21) tunes recency_weighted; exclude_detected_anomalies (default false) drops/replaces resolved anomaly days before the baseline is computed. Baseline settings are ignored for fill_backorders.
Request
Responses
- 200
- 401
- 403
- 404
- 422
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Not found — no record with the given identifier (or the route does not exist). Verify the ID before retrying.
Validation failed — the body is a field → messages map (Laravel shape) or the platform envelope with a stable machine-readable code. Fix the payload and resubmit.
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.