Benchling · Schema

DnaOligoCreate

Life SciencesBiotechnologyR&DMolecular BiologyLaboratory Information ManagementElectronic Lab NotebookAssay ManagementInventorySequence ManagementExperiment WorkflowsRESTWebhook

Properties

Name Type Description
aliases array Aliases to add to the Oligo
authorIds array IDs of users to set as the Oligo's authors.
bases string Base pairs of the oligo.
customFields object Custom fields to add to the Oligo. Every field should have its name as a key, mapping to an object with information about the value of the field.
fields object Fields to set on the Oligo. Must correspond with the schema's field definitions. Every field should have its name as a key, mapping to an object with information about the value of the field.
folderId string ID of the folder containing the entity. Can be left empty when registryId is present.
name string Name of the Oligo.
schemaId string ID of the oligo's schema.
entityRegistryId string Entity registry ID to set for the registered entity. Cannot specify both entityRegistryId and namingStrategy at the same time.
namingStrategy object
registryId string Registry ID into which entity should be registered. this is the ID of the registry which was configured for a particular organization To get available registryIds, use the [/registries endpoint](#/Reg
annotations array Annotations on the Oligo.
helm string Representation of the oligo in HELM syntax, including any chemical modifications
customNotation string Representation of the sequence or oligo in the custom notation specified by customNotationId
customNotationId string ID of the notation used to interpret the string provided in the customNotation field
View JSON Schema on GitHub

JSON Schema

benchling-dna-oligo-create-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/benchling/main/json-schema/benchling-dna-oligo-create-schema.json",
  "title": "DnaOligoCreate",
  "x-generated": "2026-10-12",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/benchling-dna-oligos-api-openapi.yml#/components/schemas/DnaOligoCreate",
  "allOf": [
    {
      "$ref": "#/$defs/OligoCreate"
    },
    {
      "properties": {
        "annotations": {
          "description": "Annotations on the Oligo.",
          "items": {
            "$ref": "#/$defs/DnaAnnotation"
          },
          "type": "array"
        },
        "helm": {
          "description": "Representation of the oligo in HELM syntax, including any chemical modifications",
          "type": "string"
        }
      }
    },
    {
      "$ref": "#/$defs/CustomNotationRequest"
    },
    {
      "required": [
        "name"
      ]
    }
  ],
  "$defs": {
    "CreateEntityIntoRegistry": {
      "properties": {
        "entityRegistryId": {
          "description": "Entity registry ID to set for the registered entity. Cannot specify both entityRegistryId and namingStrategy at the same time.\n",
          "type": "string"
        },
        "folderId": {
          "description": "ID of the folder containing the entity. Can be left empty when registryId is present.",
          "type": "string"
        },
        "namingStrategy": {
          "$ref": "#/$defs/NamingStrategy"
        },
        "registryId": {
          "description": "Registry ID into which entity should be registered. this is the ID of the registry which was configured for a particular organization\nTo get available registryIds, use the [/registries endpoint](#/Registry/listRegistries)\n\nRequired in order for entities to be created directly in the registry.\n",
          "type": "string"
        }
      },
      "type": "object"
    },
    "CustomField": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "CustomFields": {
      "additionalProperties": {
        "$ref": "#/$defs/CustomField"
      },
      "type": "object"
    },
    "CustomNotationRequest": {
      "properties": {
        "customNotation": {
          "description": "Representation of the sequence or oligo in the custom notation specified by customNotationId",
          "type": "string"
        },
        "customNotationId": {
          "description": "ID of the notation used to interpret the string provided in the customNotation field",
          "type": "string"
        }
      },
      "type": "object"
    },
    "DnaAnnotation": {
      "allOf": [
        {
          "$ref": "#/$defs/SequenceFeatureBase"
        },
        {
          "properties": {
            "end": {
              "description": "0-based exclusive end index. The end of the sequence is always represented as 0.",
              "type": "integer"
            },
            "start": {
              "description": "0-based inclusive start index.",
              "type": "integer"
            },
            "strand": {
              "maximum": 1,
              "minimum": -1,
              "type": "integer"
            },
            "type": {
              "type": "string"
            }
          },
          "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"
    },
    "NamingStrategy": {
      "description": "Specifies the behavior for automatically generated names when registering an entity.\n- NEW_IDS: Generate new registry IDs\n- IDS_FROM_NAMES: Generate registry IDs based on entity names\n- DELETE_NAMES: Generate new registry IDs and replace name with registry ID\n- SET_FROM_NAME_PARTS: Generate new registry IDs, rename according to name template, and keep old name as alias\n- REPLACE_NAMES_FROM_PARTS: Generate new registry IDs, and replace name according to name template\n- KEEP_NAMES: Keep existing entity names as registry IDs\n- REPLACE_ID_AND_NAME_FROM_PARTS: Generate registry IDs and names according to name template\n",
      "enum": [
        "NEW_IDS",
        "IDS_FROM_NAMES",
        "DELETE_NAMES",
        "SET_FROM_NAME_PARTS",
        "REPLACE_NAMES_FROM_PARTS",
        "KEEP_NAMES",
        "REPLACE_ID_AND_NAME_FROM_PARTS"
      ],
      "type": "string"
    },
    "OligoBaseRequest": {
      "properties": {
        "aliases": {
          "description": "Aliases to add to the Oligo",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "authorIds": {
          "description": "IDs of users to set as the Oligo's authors.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "bases": {
          "description": "Base pairs of the oligo.\n",
          "type": "string"
        },
        "customFields": {
          "allOf": [
            {
              "$ref": "#/$defs/CustomFields"
            }
          ],
          "description": "Custom fields to add to the Oligo. Every field should have its name as a key, mapping to an object with information about the value of the field.\n"
        },
        "fields": {
          "allOf": [
            {
              "$ref": "#/$defs/Fields"
            }
          ],
          "description": "Fields to set on the Oligo. Must correspond with the schema's field definitions. Every field should have its name as a key, mapping to an object with information about the value of the field.\n"
        },
        "folderId": {
          "description": "ID of the folder containing the Oligo.\n",
          "type": "string"
        },
        "name": {
          "description": "Name of the Oligo.\n",
          "type": "string"
        },
        "schemaId": {
          "description": "ID of the oligo's schema.\n",
          "type": "string"
        }
      },
      "type": "object"
    },
    "OligoBaseRequestForCreate": {
      "allOf": [
        {
          "$ref": "#/$defs/OligoBaseRequest"
        },
        {
          "required": [
            "name"
          ]
        }
      ]
    },
    "OligoCreate": {
      "additionalProperties": false,
      "allOf": [
        {
          "$ref": "#/$defs/OligoBaseRequestForCreate"
        },
        {
          "$ref": "#/$defs/CreateEntityIntoRegistry"
        }
      ]
    },
    "SequenceFeatureBase": {
      "properties": {
        "color": {
          "description": "Hex color code used when displaying this feature in the UI.",
          "type": "string"
        },
        "customFields": {
          "items": {
            "$ref": "#/$defs/SequenceFeatureCustomField"
          },
          "maxItems": 100,
          "type": "array"
        },
        "name": {
          "maxLength": 2048,
          "type": "string"
        },
        "notes": {
          "maxLength": 10000,
          "type": "string"
        }
      },
      "type": "object"
    },
    "SequenceFeatureCustomField": {
      "description": "A name and value pair associated with a sequence feature (annotation or translation). For genbank imports, these are the qualifiers associated with each feature.",
      "properties": {
        "name": {
          "description": "Name of the custom field",
          "type": "string"
        },
        "value": {
          "description": "Value of the custom field",
          "type": "string"
        }
      },
      "type": "object"
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/benchling-dna-oligo-create"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.