---
sidebar:
  label: roboto.experimental.topics
  order: 4
title: roboto.experimental.topics
---
Topics APIs in active refinement; see [`roboto.experimental`](/docs/reference/python-sdk/roboto/experimental) for the stability contract.

## Submodules

- [roboto.experimental.topics.batch_transforms](/docs/reference/python-sdk/roboto/experimental/topics/batch_transforms)
- [roboto.experimental.topics.decode](/docs/reference/python-sdk/roboto/experimental/topics/decode)
- [roboto.experimental.topics.operations](/docs/reference/python-sdk/roboto/experimental/topics/operations)
- [roboto.experimental.topics.plan_execution](/docs/reference/python-sdk/roboto/experimental/topics/plan_execution)
- [roboto.experimental.topics.read_plan](/docs/reference/python-sdk/roboto/experimental/topics/read_plan)
- [roboto.experimental.topics.record](/docs/reference/python-sdk/roboto/experimental/topics/record)
- [roboto.experimental.topics.split_partition](/docs/reference/python-sdk/roboto/experimental/topics/split_partition)
- [roboto.experimental.topics.topic](/docs/reference/python-sdk/roboto/experimental/topics/topic)

## Package Contents

- [DatasetContext](/reference/python-sdk/roboto/experimental/topics/topic#roboto.experimental.topics.topic.DatasetContext) (class): The dataset a Topic is scoped to: limits topic operations to the topic's data in the dataset's files.

- [DeviceContext](/reference/python-sdk/roboto/experimental/topics/topic#roboto.experimental.topics.topic.DeviceContext) (class): The device a Topic is scoped to: limits topic operations to the topic's data in the device's files.

- [FieldAddress](/reference/python-sdk/roboto/experimental/topics/operations#roboto.experimental.topics.operations.FieldAddress) (class): Addresses a schema field, and the subtree nested under it, by exactly one of two forms.

- [FieldAddressLike](/reference/python-sdk/roboto/experimental/topics/topic#roboto.experimental.topics.topic.FieldAddressLike) (data): A field-subtree address, as a [`FieldAddress`](/reference/python-sdk/roboto/experimental/topics/operations#roboto.experimental.topics.operations.FieldAddress) or explicit path components (`("pose", "position")` for a nested field, `("angular_velocity",)` for a top-level one).

- [FileContext](/reference/python-sdk/roboto/experimental/topics/topic#roboto.experimental.topics.topic.FileContext) (class): The file a Topic is scoped to: limits topic operations to the topic's data in that file.

- [PLAN_VERSION](/reference/python-sdk/roboto/experimental/topics/read_plan#roboto.experimental.topics.read_plan.PLAN_VERSION) (data): `PLAN_VERSION: int = 1`. Contract version stamped on every plan.

- [ReadPlan](/reference/python-sdk/roboto/experimental/topics/read_plan#roboto.experimental.topics.read_plan.ReadPlan) (class): Resolves a read of one topic over a time window into the files to fetch and how to interpret them.

- [ReadPlanFieldRef](/reference/python-sdk/roboto/experimental/topics/read_plan#roboto.experimental.topics.read_plan.ReadPlanFieldRef) (class): A schema field named by both its id and its path components in the schema.

- [ReadPlanObjectRef](/reference/python-sdk/roboto/experimental/topics/read_plan#roboto.experimental.topics.read_plan.ReadPlanObjectRef) (class): Points to the file backing a scan task. A consumer fetches the file's bytes from it.

- [ReadPlanPartition](/reference/python-sdk/roboto/experimental/topics/read_plan#roboto.experimental.topics.read_plan.ReadPlanPartition) (class): Everything needed to fetch and interpret one in-window partition's bytes.

- [ReadPlanProjection](/reference/python-sdk/roboto/experimental/topics/read_plan#roboto.experimental.topics.read_plan.ReadPlanProjection) (class): The output fields the plan resolves rows to.

- [ReadPlanRequest](/reference/python-sdk/roboto/experimental/topics/operations#roboto.experimental.topics.operations.ReadPlanRequest) (class): The body of a read-plan request: the logical read question to resolve into a physical plan.

- [ReadPlanScanTask](/reference/python-sdk/roboto/experimental/topics/read_plan#roboto.experimental.topics.read_plan.ReadPlanScanTask) (class): One file to open, with the topic to read from it and the format and transformations needed to interpret it.

- [ReadPlanSchemaRef](/reference/python-sdk/roboto/experimental/topics/read_plan#roboto.experimental.topics.read_plan.ReadPlanSchemaRef) (class): Identifies the single topic schema the plan uses.

- [ReadPlanTimestamp](/reference/python-sdk/roboto/experimental/topics/read_plan#roboto.experimental.topics.read_plan.ReadPlanTimestamp) (class): Where a partition's row timestamps come from.

- [RepresentationOverride](/reference/python-sdk/roboto/experimental/topics/operations#roboto.experimental.topics.operations.RepresentationOverride) (class): Applies a representation selector to one field subtree, overriding the request default.

- [RepresentationPreference](/reference/python-sdk/roboto/experimental/topics/operations#roboto.experimental.topics.operations.RepresentationPreference) (class): Selects which stored variant of each field to read, per subtree.

- [RepresentationRecord](/reference/python-sdk/roboto/experimental/topics/record#roboto.experimental.topics.record.RepresentationRecord) (class): One stored variant of a topic partition's data, optionally narrowed to a subset of its fields.

- [RepresentationSelector](/reference/python-sdk/roboto/experimental/topics/record#roboto.experimental.topics.record.RepresentationSelector) (class): Selects which stored variant of a field to read when several are available.

- [SessionContext](/reference/python-sdk/roboto/experimental/topics/topic#roboto.experimental.topics.topic.SessionContext) (class): The Session a Topic is scoped to: limits topic operations to the Session's associated files and supplies the Session's aggregate time window as the default window for those operations.

- [SetTopicUnixOffsetRequest](/reference/python-sdk/roboto/experimental/topics/operations#roboto.experimental.topics.operations.SetTopicUnixOffsetRequest) (class): Request body for `POST /v2/topics/id/<topic_id>/unix-offset`.

- [TIMESTAMP_FIELD_METADATA_KEY](/reference/python-sdk/roboto/experimental/topics/batch_transforms#roboto.experimental.topics.batch_transforms.TIMESTAMP_FIELD_METADATA_KEY) (data): `TIMESTAMP_FIELD_METADATA_KEY = b'roboto.topic_data.timestamp'`. Arrow field-metadata key marking the per-row timestamp column of a topic-data batch.

- [TimeWindow](/reference/python-sdk/roboto/experimental/topics/read_plan#roboto.experimental.topics.read_plan.TimeWindow) (class): A closed time window in absolute nanoseconds since the Unix epoch; both bounds inclusive.

- [Topic](/reference/python-sdk/roboto/experimental/topics/topic#roboto.experimental.topics.topic.Topic) (class): A logical stream of robotics data, identified durably across the files that carry it.

- [TopicContext](/reference/python-sdk/roboto/experimental/topics/topic#roboto.experimental.topics.topic.TopicContext) (data): The scope a [`Topic`](/reference/python-sdk/roboto/experimental/topics/topic#roboto.experimental.topics.topic.Topic) reads within: one Session, file, dataset or device.

- [timestamp_column_index()](/reference/python-sdk/roboto/experimental/topics/batch_transforms#roboto.experimental.topics.batch_transforms.timestamp_column_index) (function): Locate the timestamp column: the field whose [`TIMESTAMP_FIELD_METADATA_KEY`](/reference/python-sdk/roboto/experimental/topics/batch_transforms#roboto.experimental.topics.batch_transforms.TIMESTAMP_FIELD_METADATA_KEY) metadata is `b"true"`.
