Skip to main content
POST
Submit Forecast
Upload observations through the final available timestamp. The API forecasts the next prediction_length time steps for each series. For example, a 15-minute series that ends at 2026-09-15 21:45 UTC and sets prediction_length=96 returns forecasts from 2026-09-15 22:00 through 2026-09-16 21:45 UTC. For an out-of-sample comparison, keep the measured future values outside the request and match them to the returned timestamps after the forecast completes. The uploaded time series needs no future rows with empty target values.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

multipart/form-data
file
file | null
s3_uri
string
default:""
prediction_length
integer
default:24
Required range: 1 <= x <= 1000
presets
string
default:eomer_pulse_l
item_id_column
string
default:item_id
timestamp_column
string
default:timestamp
target_column
string
default:target
freq
string
default:""
quantile_levels
string
default:""
covariates
string
default:""
latitude
number | null
longitude
number | null
feature_engineering
string
default:""
external_covariates
string
default:""
explainability
string
default:""
reconciliation
string
default:""
callback_url
string
default:""
compute_backend
string
default:""
timestamp_format
string
default:""
quantile_column_style
string
default:""

Response

Successful Response

Response model for job status queries.

job_id
string
required
status
enum<string>
required

Status values for async forecast jobs.

Available options:
pending,
running,
completed,
failed
created_at
string<date-time>
required
job_type
string
default:forecast

Kind of job: forecast, classification, regression, fine_tune, analysis (sandbox jobs use a sandbox_ prefix). Use it to pick the response shape.

completed_at
string<date-time> | null
elapsed_seconds
number | null
num_items
integer | null
prediction_length
integer | null
error
string | null
error_code
enum<string> | null

Machine-readable error codes for agent-friendly error handling.

Available options:
validation_error,
invalid_preset,
file_too_large,
dataset_too_large,
rate_limited,
server_overloaded,
job_not_found,
job_not_completed,
auth_failed,
internal_error,
timeout,
pipeline_failed,
invalid_forecast,
idempotency_conflict,
storage_error,
gpu_offload_unavailable,
compute_unavailable,
tabular_runtime_unavailable,
fine_tune_disabled,
connection_not_found,
connector_error,
sandbox_domain_used,
sandbox_captcha_failed,
sandbox_dataset_too_large,
sandbox_corporate_email_required
download_url
string | null
report_url
string | null
external_covariate_metadata
External Covariate Metadata · object | null
explainability
ExplainabilitySummaryResponse · object | null

Explainability execution status for a forecast job.

explainability_url
string | null
forecast_plot_url
string | null
reconciliation
Reconciliation · object | null
timings
Timings · object | null

Forecast pipeline wall time by stage, in seconds.

explanation
ExplanationResponse · object | null

Post-forecast business explanation surfaced on a completed job. Written by the explanation agent (the second LLM in the agentic "sandwich"). Always vendor-neutral — the backend sanitizes every field before persisting, so no underlying model/vendor name appears here.

request_id
string | null
config_hash
string | null
dataset_hash
string | null
model_version
string | null
delivery_status
string | null
delivery_connection_id
string | null
delivery_uri
string | null
delivery_error
string | null