Rebase Energy Model API
The Model API from Rebase Energy — 12 operation(s) for model.
The Model API from Rebase Energy — 12 operation(s) for model.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/rebase-energy:rebase-energy-model-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Fast Model API
version: 0.1.0
tags:
- name: Model
paths:
/platform/v2/models:
get:
tags:
- Model
summary: List Models
operationId: list_models_platform_v2_models_get
responses:
'200':
description: Successful Response
content:
application/json:
schema:
items:
$ref: '#/components/schemas/server__customer__versions__v2_fapi__model__model_schema__ModelResponse'
type: array
title: Response List Models Platform V2 Models Get
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationResponse'
security:
- APIKeyHeader: []
/platform/v2/models/{model_id}/input:
get:
tags:
- Model
summary: Get Model Input
description: Get the latest input data for a model
operationId: get_model_input_platform_v2_models__model_id__input_get
security:
- APIKeyHeader: []
parameters:
- name: model_id
in: path
required: true
schema:
type: string
title: Model Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ModelInputResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationResponse'
/platform/v2/models/{model_id}/output:
get:
tags:
- Model
summary: Get Model Output
description: 'Get the output produced by a model, as_of can be specified
to get the output as it was at a specific point in time
If no start_date is provided, the start_date will be today 00:00 UTC'
operationId: get_model_output_platform_v2_models__model_id__output_get
security:
- APIKeyHeader: []
parameters:
- name: model_id
in: path
required: true
schema:
type: string
title: Model Id
- name: start_date
in: query
required: false
schema:
type: string
format: date-time
title: Start Date
- name: end_date
in: query
required: false
schema:
anyOf:
- type: string
format: date-time
- type: 'null'
title: End Date
- name: tz
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Tz
- name: as_of
in: query
required: false
schema:
anyOf:
- type: string
format: date-time
- type: 'null'
title: As Of
- name: output_type
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
default: forecast
title: Output Type
- name: normalization_handling
in: query
required: false
schema:
anyOf:
- enum:
- disabled
- auto
type: string
- type: 'null'
default: auto
title: Normalization Handling
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ModelOutputResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationResponse'
/platform/v2/models/blend/{model_blend_id}/output:
get:
tags:
- Model
summary: Get Model Blend Output
description: Get the output produced by a model blend
operationId: get_model_blend_output_platform_v2_models_blend__model_blend_id__output_get
security:
- APIKeyHeader: []
parameters:
- name: model_blend_id
in: path
required: true
schema:
type: string
title: Model Blend Id
- name: start_date
in: query
required: false
schema:
type: string
format: date-time
title: Start Date
- name: end_date
in: query
required: false
schema:
anyOf:
- type: string
format: date-time
- type: 'null'
title: End Date
- name: tz
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Tz
- name: as_of
in: query
required: false
schema:
anyOf:
- type: string
format: date-time
- type: 'null'
title: As Of
- name: output_type
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
default: forecast
title: Output Type
- name: normalization_handling
in: query
required: false
schema:
anyOf:
- enum:
- disabled
- auto
type: string
- type: 'null'
default: auto
title: Normalization Handling
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ModelBlendOutputResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationResponse'
/platform/v2/models/{model_id}:
put:
tags:
- Model
summary: Update Model
description: 'Update a model''s settings.
You can update the following settings:
- serving_active
- serving_priority'
operationId: update_model_platform_v2_models__model_id__put
security:
- APIKeyHeader: []
parameters:
- name: model_id
in: path
required: true
schema:
type: string
title: Model Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ModelUpdateOptions'
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationResponse'
delete:
tags:
- Model
summary: Delete Model
operationId: delete_model_platform_v2_models__model_id__delete
security:
- APIKeyHeader: []
parameters:
- name: model_id
in: path
required: true
schema:
type: string
title: Model Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
type: object
additionalProperties: true
title: Response Delete Model Platform V2 Models Model Id Delete
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationResponse'
/platform/v2/model/{model_id}/predict:
post:
tags:
- Model
summary: Run Model Predict
description: Run a prediction using the model with the given model_id and the given options
operationId: run_model_predict_platform_v2_model__model_id__predict_post
security:
- APIKeyHeader: []
parameters:
- name: model_id
in: path
required: true
schema:
type: string
title: Model Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ModelPredictOptions'
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationResponse'
/platform/v2/models/{model_id}/runs:
post:
tags:
- Model
summary: Create Model Run
operationId: create_model_run_platform_v2_models__model_id__runs_post
security:
- APIKeyHeader: []
parameters:
- name: model_id
in: path
required: true
schema:
type: string
title: Model Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ModelRunOutputInsert'
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationResponse'
/platform/v2/model/{model_id}/status:
post:
tags:
- Model
summary: Update Model Status
operationId: update_model_status_platform_v2_model__model_id__status_post
security:
- APIKeyHeader: []
parameters:
- name: model_id
in: path
required: true
schema:
type: string
title: Model Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ModelStatusInsert'
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationResponse'
/platform/v2/model/{model_id}:
put:
tags:
- Model
summary: Upsert Model
description: Create a new model with the given model_id and model data
operationId: upsert_model_platform_v2_model__model_id__put
security:
- APIKeyHeader: []
parameters:
- name: model_id
in: path
required: true
schema:
type: string
title: Model Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ModelOptions'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/server__customer__versions__v2_fapi__model__model_schema__ModelResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationResponse'
/platform/v2/model:
post:
tags:
- Model
summary: Upsert Model
description: Create a new model with the given model_id and model data
operationId: upsert_model_platform_v2_model_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ModelOptions'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/server__customer__versions__v2_fapi__model__model_schema__ModelResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationResponse'
security:
- APIKeyHeader: []
/platform/v2/model/{model_id}/output:
put:
tags:
- Model
summary: Put Model Output
description: 'Insert the output produced by a model, as_of can be specified
to get the output as it was at a specific point in time'
operationId: put_model_output_platform_v2_model__model_id__output_put
security:
- APIKeyHeader: []
parameters:
- name: model_id
in: path
required: true
schema:
type: string
title: Model Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ModelOutputInsert'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ModelOutputInsertResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationResponse'
/platform/v2/models/predict:
post:
tags:
- Model
summary: Bulk Models Predict
description: Train the models for one or more sites, specified by their site_id
operationId: bulk_models_predict_platform_v2_models_predict_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ModelBulkPredict'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
additionalProperties: true
type: object
title: Response Bulk Models Predict Platform V2 Models Predict Post
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ValidationResponse'
security:
- APIKeyHeader: []
components:
schemas:
ModelRunOutputInsert:
properties:
as_of_timestamp:
anyOf:
- type: string
format: date-time
- type: 'null'
title: As Of Timestamp
ref_time:
type: string
format: date-time
title: Ref Time
data:
items:
additionalProperties: true
type: object
type: array
title: Data
example:
- q50: 1000
q90: 2000
valid_time: '2026-01-01T00:00:00Z'
- q50: 1000
q90: 2000
valid_time: '2026-01-01T01:00:00Z'
- q50: 1000
q90: 2000
valid_time: '2026-01-01T02:00:00Z'
- q50: 1000
q90: 2000
valid_time: '2026-01-01T03:00:00Z'
- q50: 1000
q90: 2000
valid_time: '2026-01-01T04:00:00Z'
- q50: 1000
q90: 2000
valid_time: '2026-01-01T05:00:00Z'
- q50: 1000
q90: 2000
valid_time: '2026-01-01T06:00:00Z'
- q50: 1000
q90: 2000
valid_time: '2026-01-01T07:00:00Z'
- q50: 1000
q90: 2000
valid_time: '2026-01-01T08:00:00Z'
- q50: 1000
q90: 2000
valid_time: '2026-01-01T09:00:00Z'
type: object
required:
- ref_time
- data
title: ModelRunOutputInsert
ModelForecastInsert:
properties:
as_of:
type: string
format: date-time
title: As Of
valid_times:
items:
type: string
format: date-time
type: array
title: Valid Times
outputs:
items:
$ref: '#/components/schemas/ModelForecastOutputRow'
type: array
title: Outputs
example:
- output_type: forecast
values:
- 1000
- 2000
- 3000
- 4000
- 5000
- output_type: clearsky
values:
- 800
- 1600
- 2400
- 3200
- 4000
type: object
required:
- as_of
- valid_times
- outputs
title: ModelForecastInsert
ModelOutputResponse:
properties:
model_id:
type: string
title: Model Id
model_version:
type: integer
title: Model Version
model_name:
type: string
title: Model Name
model_label:
type: string
title: Model Label
priority:
type: integer
title: Priority
as_of:
anyOf:
- type: string
format: date-time
- type: 'null'
title: As Of
forecast:
items:
anyOf:
- type: integer
- type: number
type: array
title: Forecast
valid_time:
items:
type: string
format: date-time
type: array
title: Valid Time
capacity:
anyOf:
- items:
anyOf:
- type: integer
- type: number
type: array
- type: 'null'
title: Capacity
type: object
required:
- model_id
- model_version
- model_name
- model_label
- priority
- as_of
- forecast
- valid_time
- capacity
title: ModelOutputResponse
ValidationResponse:
properties:
errors:
items:
$ref: '#/components/schemas/ErrorItem'
type: array
title: Errors
type: object
required:
- errors
title: ValidationResponse
ModelOutputInsertResponse:
properties:
model_id:
type: string
title: Model Id
status:
type: string
title: Status
num_records:
type: integer
title: Num Records
message:
type: string
title: Message
default: Output inserted successfully
type: object
required:
- model_id
- status
- num_records
title: ModelOutputInsertResponse
ModelBlendOutputResponse:
properties:
valid_time:
items:
type: string
format: date-time
type: array
title: Valid Time
output:
items:
type: number
type: array
title: Output
model_name:
items:
type: string
type: array
title: Model Name
model_version:
items:
type: integer
type: array
title: Model Version
update_time:
items:
type: string
format: date-time
type: array
title: Update Time
type: object
required:
- valid_time
- output
- model_name
- model_version
- update_time
title: ModelBlendOutputResponse
ModelBulkPredict:
properties:
model_ids:
items:
type: string
type: array
minItems: 1
title: Model Ids
example:
- 48302759-0371-4d54-9ba1-506708b576fe
- f02918ab-736b-409f-8f86-cbbeec1d6700
schedule:
$ref: '#/components/schemas/GenerationSchedule-Input'
type: object
required:
- model_ids
- schedule
title: ModelBulkPredict
server__customer__versions__v2_fapi__model__model_schema__ModelResponse:
properties:
id:
type: string
title: Id
name:
type: string
title: Name
type: object
required:
- id
- name
title: ModelResponse
ModelInputResponse:
properties:
dataframe:
additionalProperties: true
type: object
title: Dataframe
metadata:
additionalProperties: true
type: object
title: Metadata
type: object
required:
- dataframe
- metadata
title: ModelInputResponse
ModelStatusInsert:
properties:
state:
type: string
title: State
type: object
required:
- state
title: ModelStatusInsert
ModelPredictOptions:
properties: {}
additionalProperties: true
type: object
title: ModelPredictOptions
ModelUpdateOptions:
properties:
settings:
$ref: '#/components/schemas/ModelUpdateSettings'
priority_conflict_resolution:
type: string
enum:
- strict
- auto_increment
- swap
title: Priority Conflict Resolution
description: 'How to resolve a priority collision when `settings.serving_priority` is already taken by another model at the same site:
- `strict`: reject the update with a 409 error.
- `auto_increment`: shift all conflicting models'' priorities by incrementing by 1.
- `swap`: swap the priorities of the target model and the conflicting model.'
default: strict
type: object
required:
- settings
title: ModelUpdateOptions
ModelOutputInsert:
properties:
records:
items:
$ref: '#/components/schemas/ModelForecastInsert'
type: array
title: Records
example:
- as_of: '2023-01-01T00:00:00Z'
outputs:
- output_type: forecast
values:
- 1000
- 2000
- 3000
- 4000
- 5000
- output_type: clearsky
values:
- 800
- 1600
- 2400
- 3200
- 4000
valid_times:
- '2026-01-01T00:00:00Z'
- '2026-01-01T01:00:00Z'
- '2026-01-01T02:00:00Z'
- '2026-01-01T03:00:00Z'
- '2026-01-01T04:00:00Z'
- '2026-01-01T05:00:00Z'
- '2026-01-01T06:00:00Z'
- '2026-01-01T07:00:00Z'
- '2026-01-01T08:00:00Z'
- '2026-01-01T09:00:00Z'
type: object
required:
- records
title: ModelOutputInsert
ErrorItem:
properties:
field:
type: string
title: Field
message:
type: string
title: Message
type: object
required:
- field
- message
title: ErrorItem
ModelForecastOutputRow:
properties:
output_type:
type: string
title: Output Type
example: forecast
values:
items:
anyOf:
- type: integer
- type: number
type: array
title: Values
example:
- 1000
- 2000
- 3000
- 4000
- 5000
type: object
required:
- output_type
- values
title: ModelForecastOutputRow
GenerationSchedule-Input:
properties:
start_date:
type: string
format: date
title: Start Date
end_date:
type: string
format: date
title: End Date
time:
items:
type: string
pattern: ^(?:[01]\d|2[0-3]):(?:00|15|30|45)$
type: array
minItems: 1
title: Time
example:
- '10:00'
tz:
type: string
title: Tz
example: UTC
type: object
required:
- start_date
- end_date
- time
- tz
title: GenerationSchedule
ModelUpdateSettings:
properties:
serving_active:
anyOf:
- type: boolean
- type: 'null'
title: Serving Active
description: Whether the model is active for serving forecasts. Leave unset to keep the current value.
serving_priority:
anyOf:
- type: integer
minimum: 1.0
- type: 'null'
title: Serving Priority
description: Serving priority of the model within its site. 1 is the highest priority. Must be unique per site — see `priority_conflict_resolution` for how conflicts are handled. Leave unset to keep the current value.
type: object
title: ModelUpdateSettings
ModelOptions:
properties:
id:
anyOf:
- type: string
- type: 'null'
title: Id
site_id:
type: string
title: Site Id
model_name:
type: string
title: Model Name
version:
type: integer
title: Version
priority:
type: integer
title: Priority
default: 0
serving_active:
type: boolean
title: Serving Active
default: true
serving_priority:
type: integer
title: Serving Priority
default: 100
predict_target:
type: string
title: Predict Target
default: Production_power
complete:
type: boolean
title: Complete
default: false
active:
type: boolean
title: Active
default: false
display_name:
type: string
title: Display Name
state:
items:
additionalProperties: true
type: object
type: array
title: State
default: []
additionalProperties: true
type: object
required:
- site_id
- model_name
- version
title: ModelOptions
securitySchemes:
APIKeyHeader:
type: apiKey
description: Your API key. This is required to access our API programatically. You can view your API key in the Rebase dashboard.
in: header
name: Authorization
x-provenance:
method: harvested
publisher: Rebase Energy
source: https://docs.rebase.energy/api-reference/openapi.json
note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
stamped by stamp-openapi-provenance.py (roadmap#793)