Evaluate Forecast Accuracy
POST/api/inventory-forecasting/accuracy/evaluate
Backtest a completed forecast run by comparing its projected demand against actual sales, and store the resulting accuracy metrics per product. The work runs in the background; the response returns immediately with a job reference to poll for progress.
purchase-orders:writeGrant this scope to your token under Settings → Developer → Personal Access Tokens.
Authentication: Requires Bearer token.
Body fields:
- run_id (required): the forecast run to evaluate.
- eval_start (optional, YYYY-MM-DD): start of the evaluation window; must be on or before eval_end.
- eval_end (optional, YYYY-MM-DD): end of the evaluation window.
Returns a job reference (tracked_job_log_id).
forecast_quantity is the demand the run projected for the evaluation window: the stored line's inputs.daily_average multiplied by the window's days (not the line's order quantity). Saved scheduled runs are scored automatically by the nightly sku:forecasting:evaluate-accuracy sweep once 30 days have elapsed, over the 30 days after the run.
Request
Responses
- 200
- 401
- 403
- 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.
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.