Asset API#
Assets#
Example Use Inside of an Adapter Action
@action()
async def create_assets(self, actx: ActionExecutionContext, loading_config_id: str) -> t.List[str]:
assets = await self.artificial_api.asset_api_v1.fetch_loading_config(actx=actx, load_config_id=loading_config_id)
return await self.artificial_api.asset_api_v1.create(actx=actx, assets=assets, cleanup_with_job=True)
For more information on asset states, see Asset States.
- class Asset(
- definition_id: str,
- id: str = '',
- parent_id: str = '',
- parent_socket_idx: int = 0,
- offset_translation: ~typing.Tuple[float,
- float,
- float] = (0,
- 0,
- 0),
- offset_rotation: ~typing.Tuple[float,
- float,
- float] = (0,
- 0,
- 0),
- display_name: str = '',
- lab_id: str = '',
- ops_state: int = 0,
- assistance_state: int = 0,
- properties: ~typing.MutableMapping[str,
- None | str | int | float | bool | bytes | ~google.protobuf.message.Message] = <factory>,
- invisible: bool = False,
- archived: bool = False,
- color: str = '',
- temporal_job_id: str = '',
Data representing an asset in the Artificial Digital Twin.
- Variables:
definition_id – The ID of the definitional asset, or type of asset this is
id – The ID of this asset
parent_id – The ID of the parent asset it is socketed into
parent_socket_idx – The index of the parent socket this asset is socketed into
offset_translation – The translation offset of the asset
offset_rotation – The rotation offset of the asset
display_name – The display name of the asset
lab_id – The ID of the lab the asset is in
ops_state – The operational state of the asset
assistance_state – The assistance state of the asset
properties – The properties of the asset
invisible – Whether the asset is invisible
archived – Whether the asset is archived
color – The color of the asset
temporal_job_id – Set this to the ID of the job that when completed or cancelled will remove the asset from the scene
- class Create(
- definition_id: str,
- parent_id: str = '',
- parent_socket_idx: int = 0,
- offset_translation: ~typing.Tuple[float,
- float,
- float] = (0,
- 0,
- 0),
- offset_rotation: ~typing.Tuple[float,
- float,
- float] = (0,
- 0,
- 0),
- display_name: str = '',
- lab_id: str = '',
- ops_state: int = 0,
- assistance_state: int = 0,
- properties: ~typing.Dict[str,
- None | str | int | float | bool | bytes | ~google.protobuf.message.Message] = <factory>,
- invisible: bool = False,
- color: str = '',
- temporal_job_id: str = '',
Data for creating a new asset in the Artificial Digital Twin Shares a subset of fields of an Asset. Definition ID must be set on create
- class Match(
- display_name: str | None = None,
- definition_id: str | None = None,
- parent_id: str | None = None,
- parent_socket_idx: int | None = None,
- ops_state: int | None = None,
- assistance_state: int | None = None,
- properties: ~typing.MutableMapping[str,
- None | str | int | float | bool | bytes | ~google.protobuf.message.Message] = <factory>,
- invisible: bool | None = None,
- archived: bool | None = None,
- color: str | None = None,
- temporal_job_id: str | None = None,
Data for querying assets. Any asset that matches a field set will be returned Shares a subset of fields of an Asset.
- class Update(
- id: str,
- display_name: str | None = None,
- parent_id: str | None = None,
- parent_socket_idx: int | None = None,
- offset_translation: ~typing.Tuple[float,
- float,
- float] | None = None,
- offset_rotation: ~typing.Tuple[float,
- float,
- float] | None = None,
- ops_state: int | None = None,
- assistance_state: int | None = None,
- properties: ~typing.MutableMapping[str,
- None | str | int | float | bool | bytes | ~google.protobuf.message.Message] = <factory>,
- invisible: bool | None = None,
- color: str | None = None,
- temporal_job_id: str | None = None,
Data for updating an asset in the Artificial Digital Twin Shares a subset of fields of an Asset. ID must be specified to update an asset
- class AssetApi(
- connections: Connections,
- *args,
- **kwargs,
Provides an interface to interact with assets in the Artificial Digital Twin
- async create(
- *,
- actx: ActionContext,
- assets: t.List[Asset.Create],
- cleanup_with_job: bool = False,
- async create(
- *,
- lab_id: str,
- job_id: str,
- assets: t.List[Asset.Create],
- async create(*, lab_id: str, assets: t.List[Asset.Create]) t.List[str]
Creates assets in Artificial Digital Twin
- Parameters:
actx – ActionContext or ActionExecutionContext of the action
assets – List of Assets to create, if Asset is passed in not all fields may be skipped
cleanup_with_job – If True, the assets will be cleaned up when the job completes or is cancelled
- Returns:
List of Asset IDs created
- async delete(*, actx: ActionContext, ids: t.List[str]) t.List[str] #
- async delete(*, lab_id: str, ids: t.List[str]) t.List[str]
Deletes assets in Artificial Digital Twin
- Parameters:
actx – ActionContext or ActionExecutionContext of the action
ids – Asset IDs to delete in the lab
- Returns:
Deleted IDs
- async fetch_loading_config(
- *,
- actx: ActionContext,
- load_config_id: str,
- async fetch_loading_config( ) t.List[Asset.Create]
Fetch a Loading Config for a lab
- Parameters:
actx – ActionContext or ActionExecutionContext of the action
load_config_id – ID of the loading config to fetch
- Raises:
ValueError – Raises if it does not find the loading config
- Returns:
Returns a list containing data to create assets
- async get(*, actx: ActionContext, ids: t.List[str]) t.List[Asset] #
- async get(*, lab_id: str, ids: t.List[str]) t.List[Asset]
Retrieve assets from Artificial Digital Twin
- Parameters:
actx – ActionContext or ActionExecutionContext of the action
ids – ID’s to fetch
- Returns:
List of Assets and their properties
- async query(*, actx: ActionContext, match: Asset.Match) t.List[Asset] #
- async query(*, lab_id: str, match: Asset.Match) t.List[Asset]
Query for assets in the Artificial Digital Twin based on the match criteria
- Parameters:
actx – ActionContext or ActionExecutionContext of the action
match – The criteria to match assets on
- Returns:
A list of matching Assets and their properties
- async update(*, actx: ActionContext, updates: t.List[Asset.Update]) None #
- async update(*, lab_id: str, updates: t.List[Asset.Update]) None
Updates assets in the Artificial Digital Twin
- Parameters:
actx – ActionContext or ActionExecutionContext of the action
updates – List of asset updates to apply