Platform

client.platform is the SDK surface for durable artifacts including navigation configs, maps, rosbags, and navigation deployment lifecycle.

Navigation config and map listing appear in Simple navigation. Cloud archive catalog listing appears in Cloud archive catalog.

Platform catalog APIs — durable org artifacts via server Connect RPC.

Client interfaces

class olo.platform.Platform[source]

Bases: object

Server-direct platform surface (client.platform).

__init__(url=None, token=None, *, namespace_resolver=None)[source]
Parameters:
property robot_id: str

Platform robot UUID for this runtime (from OLO_SDK_ROBOT_ID).

class olo.platform.PlatformNavigation[source]

Bases: object

Durable navigation artifact catalogs.

__init__(transport, namespace_resolver=None)[source]
Parameters:
  • transport (ConnectUnaryTransport)

  • namespace_resolver (Callable[[str | None], str] | None)

deployment(robot_id=None, *, namespace=None, timeout=30.0)[source]

Get current navigation deployment state for a robot.

robot_id defaults to OLO_SDK_ROBOT_ID. namespace resolves like start().

Return type:

NavigationDeploymentInfo

Parameters:
  • robot_id (str | None)

  • namespace (str | None)

  • timeout (float)

get_configs(mode, *, timeout=30.0)[source]

List org nav config summaries for a navigation mode (metadata only, never YAML).

Return type:

list[NavConfigInfo]

Parameters:
list_maps(*, timeout=30.0)[source]

List org map summaries (metadata only, never map blobs).

Return type:

list[MapInfo]

Parameters:

timeout (float)

save_map(name, robot_id=None, *, description='', namespace=None, timeout=65.0)[source]

Persist the robot’s current SLAM map to the org catalog.

robot_id defaults to OLO_SDK_ROBOT_ID. namespace resolves like start() (same as client.robot()).

Return type:

MapInfo

Parameters:
  • name (str)

  • robot_id (str | None)

  • description (str)

  • namespace (str | None)

  • timeout (float)

start(robot_id=None, *, mode, config_id, map_id='', initial_pose=None, lidar3d=False, has_laser_scan=False, namespace=None, timeout=30.0)[source]

Start a navigation deployment.

robot_id defaults to OLO_SDK_ROBOT_ID (Appliance-managed runs inject this automatically). namespace defaults to the unambiguous appliance robot namespace (same as client.robot()); pass "" for a global launch or an explicit value when multiple robots share the appliance.

Return type:

NavigationDeploymentInfo

Parameters:
stop(robot_id=None, *, namespace=None, timeout=30.0)[source]

Stop a navigation deployment.

robot_id defaults to OLO_SDK_ROBOT_ID. namespace resolves like start().

Return type:

NavigationDeploymentInfo

Parameters:
  • robot_id (str | None)

  • namespace (str | None)

  • timeout (float)

class olo.platform.PlatformArchive[source]

Bases: object

Cloud archive catalog (bags, videos, and images).

__init__(transport)[source]
Parameters:

transport (ConnectUnaryTransport)

Catalog types

class olo.platform.NavConfigInfo[source]

Bases: object

NavConfigInfo(id: str, name: str, is_default: bool, source: olo.platform.types.NavConfigSource, updated_at: Optional[datetime.datetime], supported_modes: tuple[olo.platform.types.NavigationMode, …] = ())

__init__(id, name, is_default, source, updated_at, supported_modes=())
Parameters:
Return type:

None

class olo.platform.MapInfo[source]

Bases: object

MapInfo(id: str, name: str, description: str, map_type: str, file_size: int, is_active: bool, created_at: Optional[datetime.datetime], updated_at: Optional[datetime.datetime])

__init__(id, name, description, map_type, file_size, is_active, created_at, updated_at)
Parameters:
Return type:

None

class olo.platform.BagInfo[source]

Bases: object

BagInfo(name: str, robot_id: str, robot_name: str, total_bytes: int, file_count: int, category: str, location: olo.platform.types.CatalogLocation, updated_at: Optional[datetime.datetime])

__init__(name, robot_id, robot_name, total_bytes, file_count, category, location, updated_at)
Parameters:
Return type:

None

Navigation deployment types

class olo.platform.NavigationDeploymentInfo[source]

Bases: object

NavigationDeploymentInfo(robot_id: str, namespace: str, desired: Optional[olo.platform.types.NavigationDesiredSpec], observed: Optional[olo.platform.types.NavigationObservedStatus])

__init__(robot_id, namespace, desired, observed)
Parameters:
Return type:

None

class olo.platform.NavigationDesiredSpec[source]

Bases: object

NavigationDesiredSpec(state: olo.platform.types.NavigationDesiredState, mode: olo.platform.types.NavigationMode, config_id: str, map_id: str = ‘’, initial_pose: Optional[olo.platform.types.Pose2D] = None, lidar3d: bool = False, has_laser_scan: bool = False, generation: int = 0)

__init__(state, mode, config_id, map_id='', initial_pose=None, lidar3d=False, has_laser_scan=False, generation=0)
Parameters:
Return type:

None

class olo.platform.NavigationObservedStatus[source]

Bases: object

NavigationObservedStatus(state: olo.platform.types.NavigationObservedState, mode: olo.platform.types.NavigationMode = <NavigationMode.UNSPECIFIED: ‘unspecified’>, config_id: str = ‘’, map_id: str = ‘’, generation: int = 0, error_message: str = ‘’)

__init__(state, mode=NavigationMode.UNSPECIFIED, config_id='', map_id='', generation=0, error_message='')
Parameters:
Return type:

None

class olo.platform.Pose2D[source]

Bases: object

Planar pose. yaw maps to proto theta.

__init__(x, y, yaw)
Parameters:
Return type:

None

Enums

class olo.platform.NavConfigSource[source]

Bases: Enum

class olo.platform.CatalogLocation[source]

Bases: Enum

class olo.platform.NavigationMode[source]

Bases: Enum

class olo.platform.NavigationDesiredState[source]

Bases: Enum

class olo.platform.NavigationObservedState[source]

Bases: Enum

client.platform on Client:

Client interfaces

Catalog types

Navigation deployment types