Skip to main content

ForecastV2Response

class ForecastV2Response(BaseModel):
    forecasts: List[List[SingleSampleForecastPayload]]
    subscription_info: Optional[SubscriptionInfo] = None

Parameters

forecasts

Type: List[List[SingleSampleForecastPayload]] List of forecast scenarios, where each scenario contains forecasts for multiple time series samples. Each scenario corresponds to one forecasting scenario from the input request.

subscription_info

Type: Optional[SubscriptionInfo] Default: None Optional subscription information with link to the console for managing subscription and viewing usage. Included when console URL is configured.

SubscriptionInfo

class SubscriptionInfo(BaseModel):
    message: str
    console_url: str

Parameters

message

Type: str Message to display to users about subscription limits or upgrades. Example: “To manage your subscription and go beyond monthly limits, visit our console.”

console_url

Type: str Full URL to the console/dashboard where users can manage subscriptions. Example: https://console.synthefy.com/

Notes

  • Each forecast row represents one forecasting scenario
  • All forecasts in a row should have the same timestamps
  • Empty forecasts (no timestamps/values) are represented as NaN columns
  • Forecasts can be converted back to DataFrames using to_dfs()

Examples

Basic Forecast Response

forecast1 = SingleSampleForecastPayload(
    sample_id="sales",
    timestamps=["2023-01-04", "2023-01-05"],
    values=[130.0, 140.0],
    model_name="Migas-1.0"
)
forecast2 = SingleSampleForecastPayload(
    sample_id="temperature",
    timestamps=["2023-01-04", "2023-01-05"],
    values=[23.0, 24.0],
    model_name="Migas-1.0"
)
response = ForecastV2Response(forecasts=[[forecast1, forecast2]])

Convert to DataFrames

dfs = response.to_dfs()

Methods

to_dfs

def to_dfs(self) -> List[pd.DataFrame]:
    """Convert the ForecastResponse to a list of DataFrames."""

See Also