{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/benchling/main/json-schema/benchling-back-translate-schema.json", "title": "BackTranslate", "x-generated": "2026-10-12", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/benchling-aa-sequences-api-openapi.yml#/components/schemas/BackTranslate", "additionalProperties": false, "properties": { "aaSequenceIds": { "description": "IDs of AA sequences to back-translate.", "items": { "type": "string" }, "type": "array" }, "avoidedCutsiteEnzymeIds": { "description": "List of enzyme IDs whose recognition sites will be avoided when creating the back-translated sequence.\n", "items": { "type": "string" }, "type": "array" }, "codonUsageTableId": { "description": "ID of the codon usage table representing the target organism.", "type": "string" }, "folderId": { "description": "ID of the folder in which the back-translated sequences will be saved.\n", "type": "string" }, "gcContent": { "default": "ANY", "description": "The amount of GC content in the optimized sequence. LOW is defined as below 0.33, MEDIUM as 0.33-0.66, and HIGH as above 0.66. If neither gcContent nor gcContentRange is specified, the optimization will default to ANY (0-1). Cannot be specified together with gcContentRange.\n", "enum": [ "ANY", "LOW", "MEDIUM", "HIGH" ], "type": "string" }, "gcContentRange": { "additionalProperties": false, "description": "Custom GC content range for the optimized sequence, specified as decimal values between 0 and 1. The maximum must be greater than the minimum. Cannot be specified together with gcContent.\n", "properties": { "max": { "description": "Maximum GC content ratio (e.g., 0.6 for 60%)", "maximum": 1, "minimum": 0, "type": "number" }, "min": { "description": "Minimum GC content ratio (e.g., 0.4 for 40%)", "maximum": 1, "minimum": 0, "type": "number" } }, "type": "object" }, "hairpinParameters": { "additionalProperties": false, "description": "These parameters are applied in the AvoidHairpins specification in DNAChisel. If hairpinParameters is not specified, hairpins will not be avoided.\n", "properties": { "stem": { "default": 20, "type": "integer" }, "window": { "default": 200, "type": "integer" } }, "type": "object" }, "method": { "default": "MATCH_CODON_USAGE", "description": "The codon optimization algorithm to use. Requires codonUsageTableId to be specified. MATCH_CODON_USAGE selects codons probabilistically based on the organism's codon usage frequencies. USE_BEST_CODON always selects the most frequently used codon for each amino acid.\n", "enum": [ "MATCH_CODON_USAGE", "USE_BEST_CODON" ], "type": "string" }, "reducedPatterns": { "description": "List of patterns to avoid when creating the back-translated sequence, on the coding strand only.\n", "items": { "$ref": "#/$defs/ReducedPattern" }, "type": "array" }, "schemaId": { "description": "ID of the resulting DNA sequences' schemas", "type": "string" }, "shouldDepleteUridine": { "default": false, "description": "If not specified, the back-translation will default to false, and mRNA uridine depletion will not be performed.\n", "type": "boolean" } }, "required": [ "aaSequenceIds", "folderId" ], "type": "object", "$defs": { "ReducedPattern": { "additionalProperties": false, "description": "DNA patterns to avoid during optimization. Supports two formats: 1) DNA base patterns: strings of ATGC bases (case-insensitive, e.g., \"ATGC\" or \"gat\") 2) Repeat patterns: format \"nxkmer\" specifying n repeats of k-sized sequences (e.g., \"3x4mer\" matches 3 consecutive 4-base repeats). Maximum total length for repeat patterns is 50 bases (n * k ≤ 50).\nIf avoidReverseComplement is true, the pattern's reverse complement will also be avoided. Note: avoidReverseComplement cannot be true for repeat patterns (nxkmer format).\n", "properties": { "avoidReverseComplement": { "default": false, "type": "boolean" }, "pattern": { "type": "string" } }, "type": "object" } } }