Changed

Forecast endpoints restored

Six forecast endpoints previously marked as deprecated are now fully supported.

Affected endpoints:

  • GET /forecasts/ercot-forecasts-list/
  • GET /forecasts/forecasts/
  • GET /forecasts/forecasts/{id}/
  • GET /forecasts/gb-forecasts-list/
  • GET /forecasts/macro-scenarios/
  • POST /forecasts/run-simulation/

GB market live data endpoints restored

Three GB market endpoints previously marked as deprecated are now fully supported. Deprecation notices removed from endpoint descriptions.

Affected endpoints:

  • GET /gb/modo/markets/detailed-system-price-live
  • GET /gb/modo/markets/niv-live
  • GET /gb/modo/markets/system-price-live

Removed

Marginal loss factor schema

The AssetMarginalLossFactor definition has been removed from the API schema. The marginal_loss_factors field is no longer available on AustraliaAsset responses.


Changed

Decimal field format updates

Numeric capacity fields now return as strings with decimal format for precision:

Affected fields:

  • AssetEnergyCapacity.energy_capacity_mwh - changed from number to string (decimal format)
  • AssetRatedPower.rated_power_mw - changed from number to string (decimal format)

Nullable field updates

Several valid_to fields now include the description "NULL = current record" and are explicitly nullable:

  • AssetEnergyCapacity.valid_to
  • AssetMarket.valid_to
  • AssetOwner.valid_to
  • AssetRatedPower.valid_to
  • Optimizer.valid_to

Additional nullable fields on AustraliaAsset and NEMAssetDatabase: developer, integrator, manufacturer, region, commissioning_date, voltage_kv, export_capacity_mw, import_capacity_mw.

Required field updates

The following fields are now required:

  • AssetOwner.name
  • AustraliaAsset.name
  • Optimizer.name

Validation changes

AssetMarket:

  • Removed enum constraint on type field
  • Added minimum length validation (1) on type field
  • Removed maximum length constraint on market_id

NEMAssetDatabase:

  • Removed min/max constraints on voltage_kv
  • Added minimum length validation (1) on tech_type

Deprecated

GB market screens live endpoints

3 endpoints deprecated. Missing data will not be backfilled.

Affected endpoints:

  • GET /gb/modo/markets/detailed-system-price-live
  • GET /gb/modo/markets/niv-live
  • GET /gb/modo/markets/system-price-live

Deprecated

Legacy forecast endpoints

Six v1 forecast endpoints deprecated. Use the v2 forecast service endpoints instead.

Affected endpoints:

  • POST /forecasts/run-simulation/
  • GET /forecasts/macro-scenarios/
  • GET /forecasts/forecasts/{id}/
  • GET /forecasts/forecasts/
  • GET /forecasts/ercot-forecasts-list/
  • GET /forecasts/gb-forecasts-list/

Migration: Replace with equivalent v2 forecast endpoints. Contact support for specific migration paths for your use case.

Changed

Forecast custom file uploads

Forecast endpoints now support custom uploaded profiles for grid curtailment, solar, and wind generation.

New fields in run_asset:

  • custom_uploaded_grid_curtailment_profile (object) - Custom grid curtailment profile data
  • custom_uploaded_grid_curtailment_profile_id (uuid) - ID reference for grid curtailment profile
  • custom_uploaded_solar_profile (object) - Custom solar generation profile data
  • custom_uploaded_solar_profile_id (uuid) - ID reference for solar profile
  • custom_uploaded_wind_profile (object) - Custom wind generation profile data
  • custom_uploaded_wind_profile_id (uuid) - ID reference for wind profile

New file_type values:

  • grid_curtailment
  • solar_profile
  • wind_profile

Forecast status

Added qa status value to forecast endpoints.

Affected endpoints:

  • GET /forecasts/forecasts/
  • GET /forecasts/forecasts/{id}/
  • GET /forecasts/gb-forecasts-list/
  • POST /forecasts/run-simulation/

Changed

Forecast metadata and asset fields now nullable

Two fields can now accept null values in forecast responses and requests.

Affected endpoints:

  • GET /forecasts/ercot-forecasts-list/
  • GET /forecasts/forecasts/
  • GET /forecasts/forecasts/{id}/
  • GET /forecasts/gb-forecasts-list/
  • POST /forecasts/run-simulation/

Updated fields:

  • forecast_metadata.capacity_mwh_battery - Can now be null
  • run_asset.custom_degradation_curve_file_name - Can now be null

March 26, 2026

Changed

Germany region support added to indices endpoint

GET /indices/

Updated parameter:

  • market_region (query) - Now accepts germany as an available value in addition to nem, caiso, ercot, and gb

Forecast run assets

Two forecast endpoints now support custom degradation curves and require GSP group for GB assets.

GET /forecasts/forecasts/

New response fields:

  • run_asset.custom_uploaded_degradation_curve (object) - Custom degradation curve file with id, file_type, and file URI
  • run_asset.custom_uploaded_degradation_curve_id (uuid) - Reference to custom degradation curve

Required fields:

  • run_asset.gb_run_asset.gsp_group - Now required for GB run assets

POST /forecasts/run-simulation/

New request fields:

  • run_asset.custom_uploaded_degradation_curve (object) - Custom degradation curve file
  • run_asset.custom_uploaded_degradation_curve_id (uuid) - Reference to custom degradation curve

Required fields:

  • run_asset.gb_run_asset.gsp_group - Now required for GB run assets

New response fields: Same as GET endpoint above

March 20, 2026

Removed

IndexV2 schema field

The benchmark_type field has been removed from the IndexV2 response schema.

Impact:

  • Endpoints returning IndexV2 objects no longer include the benchmark_type field
  • Code referencing response.benchmark_type should be updated to remove this field access