---
sidebar:
  label: roboto.experimental.ingest
  order: 0
title: roboto.experimental.ingest
---
Describe what an uploaded file carries, so the platform can register it without opening the file.

A caller declares the topics a file contributes data to, what each of them carries, and which files a read of each opens; the types that compose those files into sessions live in [`roboto.experimental.sessions`](/docs/reference/python-sdk/roboto/experimental/sessions).

## Submodules

- [roboto.experimental.ingest.operations](/docs/reference/python-sdk/roboto/experimental/ingest/operations)
- [roboto.experimental.ingest.schema](/docs/reference/python-sdk/roboto/experimental/ingest/schema)

## Package Contents

- [DeclaredTimelineSource](/reference/python-sdk/roboto/experimental/ingest/operations#roboto.experimental.ingest.operations.DeclaredTimelineSource) (data): One timeline source a file's topic data carries, with the bounds it spans in this file.

- [Field](/reference/python-sdk/roboto/experimental/ingest/schema#roboto.experimental.ingest.schema.Field) (class): One column of a topic's data, identified by name, type, and unit.

- [FileTopicDeclaration](/reference/python-sdk/roboto/experimental/ingest/operations#roboto.experimental.ingest.operations.FileTopicDeclaration) (class): One topic a file contributes data to, declared on the file itself rather than inside a session.

- [MAX_FILES_AND_TOPICS_PER_REQUEST](/reference/python-sdk/roboto/experimental/ingest/operations#roboto.experimental.ingest.operations.MAX_FILES_AND_TOPICS_PER_REQUEST) (data): `MAX_FILES_AND_TOPICS_PER_REQUEST = 500`. Cap on how many files and topics one request may name, counting each file entry and each topic declaration in it.

- [MESSAGE_ENVELOPE_TIMELINE_SOURCES](/reference/python-sdk/roboto/experimental/ingest/operations#roboto.experimental.ingest.operations.MESSAGE_ENVELOPE_TIMELINE_SOURCES) (data): `MESSAGE_ENVELOPE_TIMELINE_SOURCES: dict[str, tuple[roboto.domain.topics.record.TimelineSourceKind, str]]`. Stored kind and stored name of each timeline source a container stamps on its records, keyed by declared `kind`.

- [McapLogTimeSource](/reference/python-sdk/roboto/experimental/ingest/operations#roboto.experimental.ingest.operations.McapLogTimeSource) (class): MCAP's log time: when the recorder wrote each record to the file.

- [McapPublishTimeSource](/reference/python-sdk/roboto/experimental/ingest/operations#roboto.experimental.ingest.operations.McapPublishTimeSource) (class): MCAP's publish time: when each message was published on the bus.

- [Mp4PresentationTimeSource](/reference/python-sdk/roboto/experimental/ingest/operations#roboto.experimental.ingest.operations.Mp4PresentationTimeSource) (class): Presentation time: when each frame is shown, relative to the start of the media.

- [RepresentationDeclaration](/reference/python-sdk/roboto/experimental/ingest/operations#roboto.experimental.ingest.operations.RepresentationDeclaration) (class): One representation of a topic's data: a file a read of the topic can open, and how that file holds the data.

- [Schema](/reference/python-sdk/roboto/experimental/ingest/schema#roboto.experimental.ingest.schema.Schema) (class): The structure of one topic's data: the columns it carries.

- [SchemaFieldSource](/reference/python-sdk/roboto/experimental/ingest/operations#roboto.experimental.ingest.operations.SchemaFieldSource) (class): Timestamps read from a column of the topic's own data, such as a `timestamp` field.

- [TopicDeclaration](/reference/python-sdk/roboto/experimental/ingest/operations#roboto.experimental.ingest.operations.TopicDeclaration) (class): A topic a file contributes data to.

- [TopicRepresentations](/reference/python-sdk/roboto/experimental/ingest/operations#roboto.experimental.ingest.operations.TopicRepresentations) (class): The complete set of representations one topic's data on a file is read from.
