{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/benchling/main/json-schema/benchling-container-update-schema.json", "title": "ContainerUpdate", "x-generated": "2026-10-12", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/benchling-containers-api-openapi.yml#/components/schemas/ContainerUpdate", "additionalProperties": false, "allOf": [ { "$ref": "#/$defs/ContainerWriteBase" }, { "properties": { "projectId": { "type": [ "string", "null" ] }, "quantity": { "$ref": "#/$defs/ContainerQuantity" }, "role": { "allOf": [ { "$ref": "#/$defs/ExperimentalWellRole" } ], "description": "Role of a well in a well plate." }, "volume": { "$ref": "#/$defs/DeprecatedContainerVolumeForInput" } } } ], "$defs": { "ContainerQuantity": { "description": "Quantity of a container, well, or transfer. Supports mass, volume, and other quantities.", "properties": { "units": { "enum": [ "L", "mL", "uL", "nL", "pL", "gal (US)", "qt (US)", "pt (US)", "kg", "g", "mg", "ug", "ng", "pg", "lb", "oz", "mol", "mmol", "umol", "nmol", "pmol", "cells", "(x10^3) cells", "(x10^4) cells", "(x10^5) cells", "(x10^6) cells", "(x10^7) cells", "(x10^8) cells", "(x10^9) cells", "items", "units", null ], "type": [ "string", "null" ] }, "value": { "type": [ "number", "null" ] } }, "type": "object" }, "ContainerWriteBase": { "properties": { "fields": { "$ref": "#/$defs/Fields" }, "name": { "type": "string" }, "parentStorageId": { "description": "ID of containing parent inventory, can also specify a coordinate for plates and boxes (e.g. plt_2bAks9dx:a2).", "type": "string" }, "restrictedSamplePartyIds": { "description": "IDs of users or teams who have access to use a restricted container. Well plate wells and unrestricted containers do not have restricted sample parties.\n", "items": { "type": "string" }, "type": "array" }, "restrictionStatus": { "allOf": [ { "$ref": "#/$defs/SampleRestrictionStatus" } ], "description": "Either RESTRICTED or UNRESTRICTED. This only applies to stand-alone containers (Plate wells are always set to NOT_APPLICABLE).\n" }, "sampleOwnerIds": { "description": "IDs of users or teams who are sample owners for the container. Well plate wells do not have sample owners.\n", "items": { "type": "string" }, "type": "array" } } }, "DeprecatedContainerVolumeForInput": { "description": "Desired volume for a container, well, or transfer. \"volume\" type keys are deprecated in API requests; use the more permissive \"quantity\" type key instead.\n", "properties": { "units": { "enum": [ "pL", "nL", "uL", "mL", "L", null ], "type": [ "string", "null" ] }, "value": { "type": [ "number", "null" ] } }, "type": "object" }, "ExperimentalWellRole": { "properties": { "group": { "type": "integer" }, "primaryRole": { "enum": [ "SAMPLE", "CONTROL", "STANDARD", "BLANK" ], "type": "string" }, "subrole": { "type": [ "string", "null" ] } }, "type": "object" }, "Field": { "properties": { "displayValue": { "readOnly": true, "type": [ "string", "null" ] }, "isMulti": { "readOnly": true, "type": "boolean" }, "textValue": { "readOnly": true, "type": [ "string", "null" ] }, "type": { "allOf": [ { "$ref": "#/$defs/FieldType" } ], "readOnly": true }, "value": { "description": "For single link fields, use the id of the item you want to link (eg. \"seq_jdf8BV24\").\nFor multi-link fields, use an array of ids of the items you want to link (eg. [\"seq_jdf8BV24\"])\n", "oneOf": [ { "type": "string" }, { "type": "boolean" }, { "type": "number" }, { "type": "object" }, { "items": { "type": "string" }, "type": "array" } ] } }, "required": [ "value" ], "type": "object" }, "FieldType": { "enum": [ "dna_sequence_link", "aa_sequence_link", "custom_entity_link", "entity_link", "mixture_link", "molecule_link", "dropdown", "part_link", "translation_link", "aa_part_link", "base_molecule_link", "blob_link", "text", "long_text", "batch_link", "storage_link", "entry_link", "assay_request_link", "assay_result_link", "assay_run_link", "boolean", "float", "integer", "datetime", "date", "json" ], "type": "string" }, "Fields": { "additionalProperties": { "$ref": "#/$defs/Field" }, "type": "object" }, "SampleRestrictionStatus": { "enum": [ "RESTRICTED", "UNRESTRICTED", "NOT_APPLICABLE" ], "type": "string" } } }