flexmeasures.api.v3_0.assets
Functions
- flexmeasures.api.v3_0.assets.validate_asset_chart_type(chart_type: str)
Refuse a chart type an asset cannot be drawn as.
Classes
- class flexmeasures.api.v3_0.assets.AssetAPI
This API view exposes generic assets.
- _trigger_automation_chain(asset: GenericAsset, automation: Automation) tuple[dict, int]
Run an automation along with the automations that wait for it (see run_automation_chain).
- _trigger_automation_with_ascendants(asset: GenericAsset, automation: Automation, left_out: list[int]) tuple[dict, int]
Run the automations this one waits for, and then this one (see run_automation_with_ascendants).
- asset_sensors(id: int, asset: GenericAsset | None, page: int | None = None, per_page: int | None = None, filter: list[str] | None = None, sort_by: str | None = None, sort_dir: str | None = None)
- auditlog(id: int, asset: GenericAsset, page: int | None = None, per_page: int | None = None, filter: list[str] | None = None, sort_by: str | None = None, sort_dir: str | None = None)
- copy_assets(id, asset: GenericAsset, account: Account | None = None, parent_asset: GenericAsset | None = None)
- delete(id: int, asset: GenericAsset)
- delete_automation(id: int, automation_id: int, asset: GenericAsset)
- fetch_one(id, asset)
- get_automation(id: int, automation_id: int, asset: GenericAsset)
- get_automation_run_plan(id: int, automation_id: int, asset: GenericAsset, direction: str)
- get_automations(id: int, asset: GenericAsset, include_child_assets: bool = True)
- get_chart(id: int, asset: GenericAsset, **kwargs)
- get_chart_annotations(id: int, asset: GenericAsset, **kwargs)
- get_chart_data(id: int, asset: GenericAsset, **kwargs)
- get_jobs(id: int, asset: GenericAsset, include_child_assets: bool = True, page: int | None = None, per_page: int = 10, sort_by: str = 'enqueued_at', sort_dir: str = 'desc')
- get_kpis(id: int, asset: GenericAsset, start, end)
- index(fields_in_response: list[str] | None, all_accessible: bool, include_public: bool | None, asset_type: GenericAssetType | None = None, account: Account | None = None, root_asset: GenericAsset | None = None, max_depth: int | None = None, page: int | None = None, per_page: int | None = None, filter: list[str] | None = None, sort_by: str | None = None, sort_dir: str | None = None)
- patch(id: int, db_asset: GenericAsset)
- patch_automation(automation_data: dict, id: int, automation_id: int, asset: GenericAsset)
- post_annotation(annotation: Annotation, id: int, asset: GenericAsset)
- post_automation(automation_data: dict, id: int, asset: GenericAsset)
- trigger_automation(id: int, automation_id: int, asset: GenericAsset, with_dependents: bool = False, with_ascendants: bool = False, left_out: list[int] | None = None)
- trigger_report(id: int, asset: GenericAsset)
- trigger_schedule(asset: GenericAsset, start_of_schedule: datetime, duration: timedelta, resolution: timedelta | None = None, belief_time: datetime | None = None, flex_model: dict | None = None, flex_context: dict | None = None, sequential: bool = False, force_new_job_creation: bool | None = False, **kwargs)
- class flexmeasures.api.v3_0.assets.AssetAuditLogPaginationSchema(*, only: Sequence[str] | AbstractSet[str] | None = None, exclude: Sequence[str] | AbstractSet[str] = (), many: bool | None = None, load_only: Sequence[str] | AbstractSet[str] = (), dump_only: Sequence[str] | AbstractSet[str] = (), partial: bool | Sequence[str] | AbstractSet[str] | None = None, unknown: Literal['exclude', 'include', 'raise'] | None = None)
- class flexmeasures.api.v3_0.assets.AssetAutomationsQuerySchema(*, only: Sequence[str] | AbstractSet[str] | None = None, exclude: Sequence[str] | AbstractSet[str] = (), many: bool | None = None, load_only: Sequence[str] | AbstractSet[str] = (), dump_only: Sequence[str] | AbstractSet[str] = (), partial: bool | Sequence[str] | AbstractSet[str] | None = None, unknown: Literal['exclude', 'include', 'raise'] | None = None)
- class flexmeasures.api.v3_0.assets.AssetChartAnnotationsKwargsSchema(*, only: Sequence[str] | AbstractSet[str] | None = None, exclude: Sequence[str] | AbstractSet[str] = (), many: bool | None = None, load_only: Sequence[str] | AbstractSet[str] = (), dump_only: Sequence[str] | AbstractSet[str] = (), partial: bool | Sequence[str] | AbstractSet[str] | None = None, unknown: Literal['exclude', 'include', 'raise'] | None = None)
- class flexmeasures.api.v3_0.assets.AssetChartDataKwargsSchema(*, only: Sequence[str] | AbstractSet[str] | None = None, exclude: Sequence[str] | AbstractSet[str] = (), many: bool | None = None, load_only: Sequence[str] | AbstractSet[str] = (), dump_only: Sequence[str] | AbstractSet[str] = (), partial: bool | Sequence[str] | AbstractSet[str] | None = None, unknown: Literal['exclude', 'include', 'raise'] | None = None)
- class flexmeasures.api.v3_0.assets.AssetChartDataOpenAPISchema(*args, **kwargs)
Doc-only variant of AssetChartDataKwargsSchema; see AssetChartOpenAPISchema.
It also hides chart_type, which only the asset page uses for now.
- __init__(*args, **kwargs)
- class flexmeasures.api.v3_0.assets.AssetChartKwargsSchema(*, only: Sequence[str] | AbstractSet[str] | None = None, exclude: Sequence[str] | AbstractSet[str] = (), many: bool | None = None, load_only: Sequence[str] | AbstractSet[str] = (), dump_only: Sequence[str] | AbstractSet[str] = (), partial: bool | Sequence[str] | AbstractSet[str] | None = None, unknown: Literal['exclude', 'include', 'raise'] | None = None)
- class flexmeasures.api.v3_0.assets.AssetChartOpenAPISchema(*args, **kwargs)
Doc-only variant of AssetChartKwargsSchema that hides beliefs_after from the generated OpenAPI/Swagger spec (see BeliefTimeFilterSchema’s docstring for why). Not used for actual request validation – AssetChartKwargsSchema still accepts beliefs_after.
- __init__(*args, **kwargs)
- class flexmeasures.api.v3_0.assets.AssetJobsQuerySchema(*, only: Sequence[str] | AbstractSet[str] | None = None, exclude: Sequence[str] | AbstractSet[str] = (), many: bool | None = None, load_only: Sequence[str] | AbstractSet[str] = (), dump_only: Sequence[str] | AbstractSet[str] = (), partial: bool | Sequence[str] | AbstractSet[str] | None = None, unknown: Literal['exclude', 'include', 'raise'] | None = None)
- class flexmeasures.api.v3_0.assets.AssetTriggerOpenAPISchema(*args, **kwargs)
- __init__(*args, **kwargs)
- class flexmeasures.api.v3_0.assets.AssetTriggerSchemaV3(*, only: Sequence[str] | AbstractSet[str] | None = None, exclude: Sequence[str] | AbstractSet[str] = (), many: bool | None = None, load_only: Sequence[str] | AbstractSet[str] = (), dump_only: Sequence[str] | AbstractSet[str] = (), partial: bool | Sequence[str] | AbstractSet[str] | None = None, unknown: Literal['exclude', 'include', 'raise'] | None = None)
v3_0-only wrapper around the shared AssetTriggerSchema.
AssetTriggerSchema itself stays canonical (no legacy field-name aliasing) since it’s also used outside the versioned API, e.g. by the CLI. This subclass adds v3_0’s backward compatibility for the legacy force_new_job_creation field name, so it can be deleted in one place, along with the rest of flexmeasures/api/v3_0/, once this API version is sunset – without needing to touch the shared domain schema.
- class flexmeasures.api.v3_0.assets.AssetTypesAPI
This API view exposes generic asset types.
- index()
- class flexmeasures.api.v3_0.assets.CopyAssetSchema(*, only: Sequence[str] | AbstractSet[str] | None = None, exclude: Sequence[str] | AbstractSet[str] = (), many: bool | None = None, load_only: Sequence[str] | AbstractSet[str] = (), dump_only: Sequence[str] | AbstractSet[str] = (), partial: bool | Sequence[str] | AbstractSet[str] | None = None, unknown: Literal['exclude', 'include', 'raise'] | None = None)
- resolve_account_and_parent(data, **kwargs)
Resolve the account/parent relationship after loading:
If
accountis explicitly given butparent_assetis not, the copy becomes a top-level asset (no parent) in the given account.If
parent_assetis explicitly given butaccountis not, the copy inherits the account of the parent asset.If both are explicitly given, the copy can belong to a different account than its parent, which is a valid cross-account parent relationship.
If neither is given, the original asset’s account and parent are preserved.
- class flexmeasures.api.v3_0.assets.KPIKwargsSchema(*, only: Sequence[str] | AbstractSet[str] | None = None, exclude: Sequence[str] | AbstractSet[str] = (), many: bool | None = None, load_only: Sequence[str] | AbstractSet[str] = (), dump_only: Sequence[str] | AbstractSet[str] = (), partial: bool | Sequence[str] | AbstractSet[str] | None = None, unknown: Literal['exclude', 'include', 'raise'] | None = None)