Descriptions¶
Descriptions are the data structures used to describe entities in the T-code fleet, including robots, tools, labware, and their component shapes.
For more information, see the following documents:
Documentation¶
TCode entity and labware description/descriptor schemas.
- class tcode_api.schemas.descriptions.AxisAlignedRectangleDescription(**data)¶
Description of an axis-aligned rectangle.
- Parameters:
schema_version (Literal[1])
type (Literal['AxisAlignedRectangle'])
x_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The length of the rectangle along the X-axis of the parent object's coordinate system. expects length units.")])
y_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The length of the rectangle along the Y-axis of the parent object's coordinate system. expects length units.")])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.AxisAlignedRectangleDescriptor(**data)¶
:class:
AxisAlignedRectangleDescriptionwith optional parameters.- Parameters:
schema_version (Literal[1])
type (Literal['AxisAlignedRectangle'])
x_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The length of the rectangle along the X-axis of the parent object's coordinate system. expects length units.")] | None)
y_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The length of the rectangle along the Y-axis of the parent object's coordinate system. expects length units.")] | None)
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.CircleDescription(**data)¶
Description of a circle.
- Parameters:
schema_version (Literal[1])
type (Literal['Circle'])
diameter (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='Maximum distance across the circle. expects length units')])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.CircleDescriptor(**data)¶
CircleDescription with optional parameters.
- Parameters:
schema_version (Literal[1])
type (Literal['Circle'])
diameter (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='Maximum distance across the circle. expects length units')] | None)
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.ConicalBottomDescription(**data)¶
Description of a conical bottom well.
- Note:
It is assumed that the conical portion of the well comes to a point at the bottom of the well
- Parameters:
schema_version (Literal[1])
type (Literal['Conical'])
offset (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The distance from the base to tip of the conical portion of the well. expects length units')])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.ConicalBottomDescriptor(**data)¶
:class:
ConicalBottomDescriptionwith optional parameters.- Parameters:
schema_version (Literal[1])
type (Literal['Conical'])
offset (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The distance from the base to tip of the conical portion of the well. expects length units')] | None)
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.EightChannelPipetteDescriptor(**data)¶
- Parameters:
schema_version (Literal[1])
serial_number (str | None)
min_volume (ValueWithUnits | None)
max_volume (ValueWithUnits | None)
max_speed (ValueWithUnits | None)
type (Literal['EightChannelPipette'])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.FlatBottomDescription(**data)¶
:class:
FlatBottomDescriptionwith optional paramters.- Parameters:
schema_version (Literal[1])
type (Literal['Flat'])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.FlatBottomDescriptor(**data)¶
Descriptor for a flat bottom well.
- Parameters:
schema_version (Literal[1])
type (Literal['Flat'])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.GridDescription(**data)¶
Description of a grid layout.
- Parameters:
schema_version (Literal[1])
type (Literal['Grid'])
row_count (Annotated[int, Gt(gt=0), FieldInfo(annotation=NoneType, required=True, description='The number of rows in the grid.')])
column_count (Annotated[int, Gt(gt=0), FieldInfo(annotation=NoneType, required=True, description='The number of columns in the grid.')])
row_pitch (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The distance between the centers of adjacent rows in the grid. Expects length units.')])
column_pitch (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The distance between the centers of adjacent columns in the grid. Expects length units.')])
row_offset (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The offset distance from the grid's origin to the center of its parent, measured along the row axis. Modify this value when creating labware whose well grids aren't symmetric.Expects length units.")])
column_offset (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The offset distance from the grid's origin to the center of its parent, measured along the column axis. Modify this value when creating labware whose well grids aren't symmetric.Expects length units.")])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.GridDescriptor(**data)¶
:class:
GridDescriptionwith optional parameters.- Parameters:
schema_version (Literal[1])
type (Literal['Grid'])
row_count (Annotated[int, Gt(gt=0), FieldInfo(annotation=NoneType, required=True, description='The number of rows in the grid.')] | None)
column_count (Annotated[int, Gt(gt=0), FieldInfo(annotation=NoneType, required=True, description='The number of columns in the grid.')] | None)
row_pitch (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The distance between the centers of adjacent rows in the grid. Expects length units.')] | None)
column_pitch (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The distance between the centers of adjacent columns in the grid. Expects length units.')] | None)
row_offset (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The offset distance from the grid's origin to the center of its parent, measured along the row axis. Modify this value when creating labware whose well grids aren't symmetric.Expects length units.")] | None)
column_offset (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The offset distance from the grid's origin to the center of its parent, measured along the column axis. Modify this value when creating labware whose well grids aren't symmetric.Expects length units.")] | None)
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.GripperDescriptor(**data)¶
- Parameters:
schema_version (Literal[1])
serial_number (str | None)
type (Literal['Gripper'])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.LabwareHolderDescriptor(**data)¶
Descriptor for an entity that can hold labware.
- Parameters:
schema_version (Literal[1])
type (Literal['LabwareHolder'])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.LidDescription(**data)¶
Description of a plate lid.
- Parameters:
schema_version (Literal[4])
tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
x_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the x-axis of it's coordinate system. Expects length units.")])
y_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the y-axis of it's coordinate system. Expects length units.")])
z_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the z-axis of it's coordinate system. Expects length units.")])
pinchable (Annotated[bool, FieldInfo(annotation=NoneType, required=True, description='Whether the labware can be lifted by a Trilobot using a pinch grip.')])
pinch_offset_transform (Annotated[list[list[float]], FieldInfo(annotation=NoneType, required=True, description='A 3D 4x4 transformation matrix represented in row-major order. Used to represent the position and orientation in 3D space.'), FieldInfo(annotation=NoneType, required=True, description="Transform from the center of the labware's footprint to the center of the pinchable location on the labware. Must be provided if `pinchable` is `True`.")] | None)
type (Literal['Lid'])
stackable (Annotated[bool, FieldInfo(annotation=NoneType, required=True, description='Whether the lid supports stacking an ANSI-SLAS-compliant labware on top of it.')])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.LidDescriptor(**data)¶
LidDescription with optional parameters.
- Parameters:
schema_version (Literal[4])
tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
x_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the x-axis of it's coordinate system. Expects length units.")] | None)
y_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the y-axis of it's coordinate system. Expects length units.")] | None)
z_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the z-axis of it's coordinate system. Expects length units.")] | None)
pinchable (Annotated[bool, FieldInfo(annotation=NoneType, required=True, description='Whether the labware can be lifted by a Trilobot using a pinch grip.')] | None)
pinch_offset_transform (Annotated[list[list[float]], FieldInfo(annotation=NoneType, required=True, description='A 3D 4x4 transformation matrix represented in row-major order. Used to represent the position and orientation in 3D space.'), FieldInfo(annotation=NoneType, required=True, description="Transform from the center of the labware's footprint to the center of the pinchable location on the labware. Must be provided if `pinchable` is `True`.")] | None)
type (Literal['Lid'])
stackable (Annotated[bool, FieldInfo(annotation=NoneType, required=True, description='Whether the lid supports stacking an ANSI-SLAS-compliant labware on top of it.')] | None)
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.PipetteTipBoxDescription(**data)¶
Description of a pipette tip box.
- Parameters:
schema_version (Literal[4])
tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
x_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the x-axis of it's coordinate system. Expects length units.")])
y_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the y-axis of it's coordinate system. Expects length units.")])
z_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the z-axis of it's coordinate system. Expects length units.")])
pinchable (Annotated[bool, FieldInfo(annotation=NoneType, required=True, description='Whether the labware can be lifted by a Trilobot using a pinch grip.')])
pinch_offset_transform (Annotated[list[list[float]], FieldInfo(annotation=NoneType, required=True, description='A 3D 4x4 transformation matrix represented in row-major order. Used to represent the position and orientation in 3D space.'), FieldInfo(annotation=NoneType, required=True, description="Transform from the center of the labware's footprint to the center of the pinchable location on the labware. Must be provided if `pinchable` is `True`.")] | None)
type (Literal['PipetteTipBox'])
grid (GridDescription)
pipette_tip (PipetteTipDescription)
pipette_tip_layout (PipetteTipLayout)
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.PipetteTipBoxDescriptor(**data)¶
PipetteTipBoxDescription with optional parameters.
- Parameters:
schema_version (Literal[4])
tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
x_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the x-axis of it's coordinate system. Expects length units.")] | None)
y_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the y-axis of it's coordinate system. Expects length units.")] | None)
z_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the z-axis of it's coordinate system. Expects length units.")] | None)
pinchable (Annotated[bool, FieldInfo(annotation=NoneType, required=True, description='Whether the labware can be lifted by a Trilobot using a pinch grip.')] | None)
pinch_offset_transform (Annotated[list[list[float]], FieldInfo(annotation=NoneType, required=True, description='A 3D 4x4 transformation matrix represented in row-major order. Used to represent the position and orientation in 3D space.'), FieldInfo(annotation=NoneType, required=True, description="Transform from the center of the labware's footprint to the center of the pinchable location on the labware. Must be provided if `pinchable` is `True`.")] | None)
type (Literal['PipetteTipBox'])
grid (GridDescriptor | None)
pipette_tip (PipetteTipDescriptor | None)
pipette_tip_layout (PipetteTipLayout | None)
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.PipetteTipDescription(**data)¶
Description of a pipette tip.
- Parameters:
schema_version (Literal[1])
tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
type (Literal['PipetteTip'])
has_filter (Annotated[bool, FieldInfo(annotation=NoneType, required=True, description='Whether the pipette tip has an internal filter.')])
height (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='total length of the pipette tip; expects length units')])
flange_height (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The distance from the top of the pipette tip to the flange which rests against the tip rack when the tip is racked. Expects length units.')])
max_volume (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The maximum working fluid volume, as recommended by the manufacturer. Expects volume units.')])
min_volume (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The minimum working fluid volume, as recommended by the manufacturer. Expects volume units.')])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.PipetteTipDescriptor(**data)¶
:class:
PipetteTipDescriptionwith optional parameters.- Parameters:
schema_version (Literal[1])
tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
type (Literal['PipetteTip'])
has_filter (Annotated[bool, FieldInfo(annotation=NoneType, required=True, description='Whether the pipette tip has an internal filter.')] | None)
height (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='total length of the pipette tip; expects length units')] | None)
flange_height (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The distance from the top of the pipette tip to the flange which rests against the tip rack when the tip is racked. Expects length units.')] | None)
max_volume (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The maximum working fluid volume, as recommended by the manufacturer. Expects volume units.')] | None)
min_volume (ValueWithUnits | None)
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.PipetteTipGroupDescriptor(**data)¶
Grid layout of pipette tips.
- Parameters:
schema_version (Literal[1])
type (Literal['PipetteTipGroup'])
row_count (Annotated[int, Gt(gt=0)])
column_count (Annotated[int, Gt(gt=0)])
pipette_tip_tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
pipette_tip_named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.ProbeDescriptor(**data)¶
- Parameters:
schema_version (Literal[1])
serial_number (str | None)
type (Literal['Probe'])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.RobotDescriptor(**data)¶
Descriptor for a robot in the fleet.
- Parameters:
schema_version (Literal[1])
serial_number (str | None)
type (Literal['Robot'])
tools (dict[str, Annotated[SingleChannelPipetteDescriptor | EightChannelPipetteDescriptor | ProbeDescriptor | GripperDescriptor, FieldInfo(annotation=NoneType, required=True, description='Union type of all valid tool descriptors.', discriminator='type')]])
tool_holders (dict[str, ToolHolderDescriptor])
labware_holders (dict[str, LabwareHolderDescriptor])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.RoundBottomDescription(**data)¶
Descriptor for a well with a spherical bottom.
- Note:
The bottom of the well is assumed to be a hemisphere whose radius is inferred from the well’s diameter.
- Parameters:
schema_version (Literal[1])
type (Literal['Round'])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.RoundBottomDescriptor(**data)¶
:class:
RoundBottomDescriptionwith optional parameters.- Parameters:
schema_version (Literal[1])
type (Literal['Round'])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.SingleChannelPipetteDescriptor(**data)¶
- Parameters:
schema_version (Literal[1])
serial_number (str | None)
min_volume (ValueWithUnits | None)
max_volume (ValueWithUnits | None)
max_speed (ValueWithUnits | None)
type (Literal['SingleChannelPipette'])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.ToolHolderDescriptor(**data)¶
Descriptor for an entity that can hold tools.
- Parameters:
schema_version (Literal[1])
type (Literal['ToolHolder'])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.TrashDescription(**data)¶
Description of a waste disposal container.
- Parameters:
schema_version (Literal[4])
tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
x_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the x-axis of it's coordinate system. Expects length units.")])
y_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the y-axis of it's coordinate system. Expects length units.")])
z_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the z-axis of it's coordinate system. Expects length units.")])
pinchable (Annotated[bool, FieldInfo(annotation=NoneType, required=True, description='Whether the labware can be lifted by a Trilobot using a pinch grip.')])
pinch_offset_transform (Annotated[list[list[float]], FieldInfo(annotation=NoneType, required=True, description='A 3D 4x4 transformation matrix represented in row-major order. Used to represent the position and orientation in 3D space.'), FieldInfo(annotation=NoneType, required=True, description="Transform from the center of the labware's footprint to the center of the pinchable location on the labware. Must be provided if `pinchable` is `True`.")] | None)
type (Literal['Trash'])
well (WellDescription)
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.TrashDescriptor(**data)¶
:class:
TrashDescriptionwith optional parameters.- Parameters:
schema_version (Literal[4])
tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
x_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the x-axis of it's coordinate system. Expects length units.")] | None)
y_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the y-axis of it's coordinate system. Expects length units.")] | None)
z_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the z-axis of it's coordinate system. Expects length units.")] | None)
pinchable (Annotated[bool, FieldInfo(annotation=NoneType, required=True, description='Whether the labware can be lifted by a Trilobot using a pinch grip.')] | None)
pinch_offset_transform (Annotated[list[list[float]], FieldInfo(annotation=NoneType, required=True, description='A 3D 4x4 transformation matrix represented in row-major order. Used to represent the position and orientation in 3D space.'), FieldInfo(annotation=NoneType, required=True, description="Transform from the center of the labware's footprint to the center of the pinchable location on the labware. Must be provided if `pinchable` is `True`.")] | None)
type (Literal['Trash'])
well (WellDescriptor | None)
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.TubeDescription(**data)¶
Description of a tube.
- Parameters:
schema_version (Literal[1])
tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
type (Literal['Tube'])
depth (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='Distance from the top of the tube to the centered bottom of the tube. Expects length units.')])
shape (Annotated[CircleDescription | AxisAlignedRectangleDescription, FieldInfo(annotation=NoneType, required=True, description='Union type of all valid well shape descriptions.', discriminator='type')])
bottom_shape (Annotated[ConicalBottomDescription | FlatBottomDescription | RoundBottomDescription | VBottomDescription, FieldInfo(annotation=NoneType, required=True, description='Union type of all valid well bottom shape descriptions.', discriminator='type')])
min_volume (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The minimum working fluid volume, as recommended by the manufacturer. Expects volume units.')])
max_volume (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The maximum working fluid volume, as recommended by the manufacturer. Expects volume units.')])
top_height (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The height of the tube cap above the top of the tube. Expects length units.')])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.TubeDescriptor(**data)¶
:class:
TubeDescriptionwith optional parameters.- Parameters:
schema_version (Literal[1])
tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
type (Literal['Tube'])
depth (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='Distance from the top of the tube to the centered bottom of the tube. Expects length units.')] | None)
shape (Annotated[CircleDescriptor | AxisAlignedRectangleDescriptor, FieldInfo(annotation=NoneType, required=True, description='Union type of all valid well shape descriptors.', discriminator='type')] | None)
bottom_shape (Annotated[ConicalBottomDescriptor | FlatBottomDescriptor | RoundBottomDescriptor | VBottomDescriptor, FieldInfo(annotation=NoneType, required=True, description='Union type of all valid well bottom shape descriptors.', discriminator='type')] | None)
min_volume (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The minimum working fluid volume, as recommended by the manufacturer. Expects volume units.')] | None)
max_volume (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The maximum working fluid volume, as recommended by the manufacturer. Expects volume units.')] | None)
top_height (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The height of the tube cap above the top of the tube. Expects length units.')] | None)
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.TubeHolderDescription(**data)¶
Description of a tube holder.
- Parameters:
schema_version (Literal[4])
tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
x_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the x-axis of it's coordinate system. Expects length units.")])
y_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the y-axis of it's coordinate system. Expects length units.")])
z_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the z-axis of it's coordinate system. Expects length units.")])
pinchable (Annotated[bool, FieldInfo(annotation=NoneType, required=True, description='Whether the labware can be lifted by a Trilobot using a pinch grip.')])
pinch_offset_transform (Annotated[list[list[float]], FieldInfo(annotation=NoneType, required=True, description='A 3D 4x4 transformation matrix represented in row-major order. Used to represent the position and orientation in 3D space.'), FieldInfo(annotation=NoneType, required=True, description="Transform from the center of the labware's footprint to the center of the pinchable location on the labware. Must be provided if `pinchable` is `True`.")] | None)
type (Literal['TubeHolder'])
grid (GridDescription)
tube (TubeDescription)
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.TubeHolderDescriptor(**data)¶
:class:
TubeHolderDescriptionwith optional parameters.- Parameters:
schema_version (Literal[4])
tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
x_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the x-axis of it's coordinate system. Expects length units.")] | None)
y_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the y-axis of it's coordinate system. Expects length units.")] | None)
z_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the z-axis of it's coordinate system. Expects length units.")] | None)
pinchable (Annotated[bool, FieldInfo(annotation=NoneType, required=True, description='Whether the labware can be lifted by a Trilobot using a pinch grip.')] | None)
pinch_offset_transform (Annotated[list[list[float]], FieldInfo(annotation=NoneType, required=True, description='A 3D 4x4 transformation matrix represented in row-major order. Used to represent the position and orientation in 3D space.'), FieldInfo(annotation=NoneType, required=True, description="Transform from the center of the labware's footprint to the center of the pinchable location on the labware. Must be provided if `pinchable` is `True`.")] | None)
type (Literal['TubeHolder'])
grid (GridDescriptor | None)
tube (TubeDescriptor | None)
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.VBottomDescription(**data)¶
Description of a V-bottom well (e.g. trough).
- Parameters:
schema_version (Literal[1])
type (Literal['V-Shape'])
direction (Annotated[Literal['x-axis', 'y-axis'], FieldInfo(annotation=NoneType, required=True, description="The axis of the well's coordinate system along which the spine of the V runs.")])
offset (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The height of the triangular portion of the well. Expects length units.')])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.VBottomDescriptor(**data)¶
:class:
VBottomDescriptionwith optional parameters.- Parameters:
schema_version (Literal[1])
type (Literal['V-Shape'])
direction (Annotated[Literal['x-axis', 'y-axis'], FieldInfo(annotation=NoneType, required=True, description="The axis of the well's coordinate system along which the spine of the V runs.")] | None)
offset (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The height of the triangular portion of the well. Expects length units.')] | None)
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.WellDescription(**data)¶
Description of a well in a labware.
- Parameters:
schema_version (Literal[1])
tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
type (Literal['Well'])
depth (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='Distance from the top of the well to the bottom of the inside of the well. expects length units')])
shape (Annotated[CircleDescription | AxisAlignedRectangleDescription, FieldInfo(annotation=NoneType, required=True, description='Union type of all valid well shape descriptions.', discriminator='type')])
bottom_shape (Annotated[ConicalBottomDescription | FlatBottomDescription | RoundBottomDescription | VBottomDescription, FieldInfo(annotation=NoneType, required=True, description='Union type of all valid well bottom shape descriptions.', discriminator='type')])
min_volume (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The minimum working fluid volume, as recommended by the manufacturer. Expects volume units.')])
max_volume (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The maximum working fluid volume, as recommended by the manufacturer. Expects volume units.')])
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.WellDescriptor(**data)¶
:class:
WellDescriptionwith optional parameters.- Parameters:
schema_version (Literal[1])
tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
type (Literal['Well'])
depth (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='Distance from the top of the well to the bottom of the inside of the well. expects length units')] | None)
shape (Annotated[CircleDescriptor | AxisAlignedRectangleDescriptor, FieldInfo(annotation=NoneType, required=True, description='Union type of all valid well shape descriptors.', discriminator='type')] | None)
bottom_shape (Annotated[ConicalBottomDescriptor | FlatBottomDescriptor | RoundBottomDescriptor | VBottomDescriptor, FieldInfo(annotation=NoneType, required=True, description='Union type of all valid well bottom shape descriptors.', discriminator='type')] | None)
min_volume (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The minimum working fluid volume, as recommended by the manufacturer. Expects volume units.')] | None)
max_volume (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The maximum working fluid volume, as recommended by the manufacturer. Expects volume units.')] | None)
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.WellPlateDescription(**data)¶
Description of a well plate.
- Note:
The exception to the ‘no optional attributes’ rule for
***Descriptionclasses- Parameters:
schema_version (Literal[4])
tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
x_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the x-axis of it's coordinate system. Expects length units.")])
y_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the y-axis of it's coordinate system. Expects length units.")])
z_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the z-axis of it's coordinate system. Expects length units.")])
pinchable (Annotated[bool, FieldInfo(annotation=NoneType, required=True, description='Whether the labware can be lifted by a Trilobot using a pinch grip.')])
pinch_offset_transform (Annotated[list[list[float]], FieldInfo(annotation=NoneType, required=True, description='A 3D 4x4 transformation matrix represented in row-major order. Used to represent the position and orientation in 3D space.'), FieldInfo(annotation=NoneType, required=True, description="Transform from the center of the labware's footprint to the center of the pinchable location on the labware. Must be provided if `pinchable` is `True`.")] | None)
type (Literal['WellPlate'])
grid (GridDescription)
well (WellDescription)
lid_offset (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The offset from the top of the labware to the bottom of the lid. Expects length units. Only applicable if the labware has a lid.')] | None)
lid (LidDescription | None)
is lid_offset and lid. These attributes default to None, assuming that a described labware has no lid.
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class tcode_api.schemas.descriptions.WellPlateDescriptor(**data)¶
:class:
WellPlateDescriptionwith optional parameters.- Parameters:
schema_version (Literal[4])
tags (Annotated[list[str], FieldInfo(annotation=NoneType, required=False, default_factory=list, description='List of additional string tags attached to the entity.')])
named_tags (Annotated[dict[str, str | int | float | bool], FieldInfo(annotation=NoneType, required=False, default_factory=dict, description='Map of names and values of named tags attached to the entity. Values can be strings, numbers, or booleans.')])
x_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the x-axis of it's coordinate system. Expects length units.")] | None)
y_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the y-axis of it's coordinate system. Expects length units.")] | None)
z_length (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description="The labware's extent along the z-axis of it's coordinate system. Expects length units.")] | None)
pinchable (Annotated[bool, FieldInfo(annotation=NoneType, required=True, description='Whether the labware can be lifted by a Trilobot using a pinch grip.')] | None)
pinch_offset_transform (Annotated[list[list[float]], FieldInfo(annotation=NoneType, required=True, description='A 3D 4x4 transformation matrix represented in row-major order. Used to represent the position and orientation in 3D space.'), FieldInfo(annotation=NoneType, required=True, description="Transform from the center of the labware's footprint to the center of the pinchable location on the labware. Must be provided if `pinchable` is `True`.")] | None)
type (Literal['WellPlate'])
grid (GridDescriptor | None)
well (WellDescriptor | None)
lid_offset (Annotated[ValueWithUnits, FieldInfo(annotation=NoneType, required=True, description='The offset from the top of the labware to the bottom of the lid. Expects length units. Only applicable if the labware has a lid.')] | None)
lid (LidDescriptor | None)
- model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'strict': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].