Delete instances

async AsyncCogniteClient.data_modeling.instances.delete(
nodes: NodeId | Sequence[NodeId] | tuple[str, str] | Sequence[tuple[str, str]] | None = None,
edges: EdgeId | Sequence[EdgeId] | tuple[str, str] | Sequence[tuple[str, str]] | None = None,
) InstancesDeleteResult

Delete one or more instances.

Parameters:
  • nodes (NodeId | Sequence[NodeId] | tuple[str, str] | Sequence[tuple[str, str]] | None) – Node ids

  • edges (EdgeId | Sequence[EdgeId] | tuple[str, str] | Sequence[tuple[str, str]] | None) – Edge ids

Returns:

The instance ID(s) that was deleted. Empty list if nothing was deleted.

Return type:

InstancesDeleteResult

Examples

Delete instances by id:

>>> from cognite.client import CogniteClient, AsyncCogniteClient
>>> client = CogniteClient()
>>> # async_client = AsyncCogniteClient()  # another option
>>> client.data_modeling.instances.delete(nodes=("mySpace", "myNode"))

Delete nodes and edges using the built in data class

>>> from cognite.client.data_classes.data_modeling import NodeId, EdgeId
>>> client.data_modeling.instances.delete(
...     NodeId("mySpace", "myNode"), EdgeId("mySpace", "myEdge")
... )

Delete all nodes from a NodeList

>>> from cognite.client.data_classes.data_modeling import NodeId, EdgeId
>>> my_view = client.data_modeling.views.retrieve(("mySpace", "myView"))
>>> my_nodes = client.data_modeling.instances.list(
...     instance_type="node", sources=my_view, limit=None
... )
>>> client.data_modeling.instances.delete(nodes=my_nodes.as_ids())