Skip to content
Go to Boltz API

Start a protein de novo design run

client.Protein.Design.Start(ctx, body) (*ProteinDesignStartResponse, error)
POST/compute/v1/protein/design

Create a new design run that generates novel protein binder candidates

ParametersExpand Collapse
body ProteinDesignStartParams
BinderSpecification param.Field[ProteinDesignStartParamsBinderSpecificationUnion]

Binder specification for protein design. Use no_template for sequence-defined binders, structure_template for uploaded binder structures, or boltz_curated for Boltz-managed nanobody and antibody defaults.

type ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpec struct{…}

Binder specification starting from an existing 3D structure. Upload a CIF/PDB file and select which chains to include, which residues to keep, and which regions to redesign. Only chains included in chain_selection are part of the pipeline run.

ChainSelection map[string, ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecChainSelectionUnion]

Chains selected from the uploaded binder structure, keyed by chain ID. Only chains listed here are included in the pipeline run — any chains omitted from this mapping are ignored. Each value defines which residues to keep (crop_residues). Omit design_motifs to include the chain as fixed scaffold context.

One of the following:
type ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpec struct{…}

Per-chain crop and design specification for a polymer chain in structure_template mode.

ChainType Polymer
CropResidues ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecCropResiduesUnion

0-indexed residue indices to retain from this chain, or ‘all’ to keep all residues. Residues not listed are removed before design.

One of the following:
type ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecCropResiduesArray []int64
type All string
DesignMotifs []ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifUnionOptional

Optional motifs (replacement or insertion) defining which regions to redesign on this chain. Omit this field to include the chain as fixed scaffold context.

One of the following:
type ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifReplacementMotif struct{…}

Replace a contiguous region of the sequence with a designed segment. Residues from start_index to end_index (inclusive) are replaced with a new sequence of the specified length.

DesignLengthRange ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifReplacementMotifDesignLengthRange

Allowed sequence length range for designed regions

Max int64

Maximum sequence length in residues. Must be >= min.

minimum0
Min int64

Minimum sequence length in residues

minimum0
EndIndex int64

0-indexed end residue (inclusive)

minimum0
StartIndex int64

0-indexed start residue (inclusive)

minimum0
Type Replacement
type ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifInsertionMotif struct{…}

Insert a designed segment at a specific position in the sequence.

AfterResidueIndex int64

0-indexed position after which to insert. Use -1 to insert before the first residue.

minimum-1
DesignLengthRange ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifInsertionMotifDesignLengthRange

Allowed sequence length range for designed regions

Max int64

Maximum sequence length in residues. Must be >= min.

minimum0
Min int64

Minimum sequence length in residues

minimum0
Type Insertion
type ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplateLigandChainSpec struct{…}

Per-chain specification for a ligand chain in structure_template mode. The full ligand is always included.

ChainType Ligand
Modality ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecModality
One of the following:
const ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecModalityPeptide ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecModality = "peptide"
const ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecModalityAntibody ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecModality = "antibody"
const ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecModalityNanobody ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecModality = "nanobody"
const ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecModalityCustomProtein ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecModality = "custom_protein"
Structure ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecStructureUnion

How to provide a CIF structure file. URLs are auto-detected; base64 uploads must use chemical/x-cif media type.

One of the following:
type ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecStructureURLSource struct{…}
Type URL
URL string
formaturi
type ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecStructureCifBase64Source struct{…}
Data string

Base64-encoded CIF file contents

MediaType ChemicalXCif

Must be chemical/x-cif for CIF files

Type Base64
Type StructureTemplate
Rules ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecRulesOptional

Constraints applied during sequence design

ExcludedAminoAcids []stringOptional

Single-letter amino acid codes to exclude from design (e.g. [‘C’, ‘P’] to exclude cysteine and proline)

ExcludedSequenceMotifs []stringOptional

Sequence motifs to exclude from designed regions. Designs containing any of these motifs are filtered out before scoring. Use X as a single-residue wildcard (e.g. “NGS”, “NXS”).

MaxHydrophobicFraction float64Optional

Maximum allowed fraction of hydrophobic residues (I, L, V, M, F, W, Y) in designed regions. Designs exceeding this threshold are filtered out before scoring. Leave empty to disable.

minimum0
maximum1
type ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpec struct{…}

Binder specification without a structural template. Define the binder from sequence components (fixed and designed segments) without providing a starting 3D structure.

Entities []ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecEntityUnion

Binder entities composing the design. At least one must be a designed_protein entity. Additional fixed entities (RNA, DNA, ligands) can be included as part of the complex.

One of the following:
type ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecEntityDesignedProteinEntity struct{…}

Protein binder entity with designed and/or fixed segments.

ChainIDs []string

Chain IDs to assign to this entity

Type DesignedProtein
Value string

Binder sequence specification. Fixed amino acids are written as literal single-letter codes. Designed regions are written as a length (fixed) or a length range (min..max). Example: “MKTAYI5..10VKSHFSRQ” means fixed MKTAYI, then 5-10 designed residues, then fixed VKSHFSRQ. “20” means 20 fully designed residues. “ACDE8GHI” means fixed ACDE, then 8 designed residues, then fixed GHI.

Cyclic boolOptional

Whether the sequence is cyclic

Modifications []ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecEntityDesignedProteinEntityModificationOptional

Optional CCD polymer modifications. Defaults to [] when omitted. SMILES modifications are not supported.

ResidueIndex int64

0-based index of the residue to modify

minimum0
Type Ccd

Modification format. Only CCD polymer modifications are supported.

Value string

CCD code from RCSB PDB (e.g. ‘MSE’ for selenomethionine, ‘SEP’ for phosphoserine)

type ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecEntityFixedProteinEntity struct{…}

A fixed protein entity whose sequence is not redesigned.

ChainIDs []string

Chain IDs to assign to this entity

Type Protein
Value string

Amino acid sequence (one-letter codes)

Cyclic boolOptional

Whether the sequence is cyclic

Modifications []ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecEntityFixedProteinEntityModificationOptional

Optional CCD polymer modifications. Defaults to [] when omitted. SMILES modifications are not supported.

ResidueIndex int64

0-based index of the residue to modify

minimum0
Type Ccd

Modification format. Only CCD polymer modifications are supported.

Value string

CCD code from RCSB PDB (e.g. ‘MSE’ for selenomethionine, ‘SEP’ for phosphoserine)

type ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecEntityFixedRnaEntity struct{…}
ChainIDs []string

Chain IDs to assign to this entity

Type Rna
Value string

RNA nucleotide sequence (A, C, G, U, N)

Cyclic boolOptional

Whether the sequence is cyclic

Modifications []ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecEntityFixedRnaEntityModificationOptional

Optional CCD polymer modifications. Defaults to [] when omitted. SMILES modifications are not supported.

ResidueIndex int64

0-based index of the residue to modify

minimum0
Type Ccd

Modification format. Only CCD polymer modifications are supported.

Value string

CCD code from RCSB PDB (e.g. ‘MSE’ for selenomethionine, ‘SEP’ for phosphoserine)

type ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecEntityFixedDnaEntity struct{…}
ChainIDs []string

Chain IDs to assign to this entity

Type Dna
Value string

DNA nucleotide sequence (A, C, G, T, N)

Cyclic boolOptional

Whether the sequence is cyclic

Modifications []ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecEntityFixedDnaEntityModificationOptional

Optional CCD polymer modifications. Defaults to [] when omitted. SMILES modifications are not supported.

ResidueIndex int64

0-based index of the residue to modify

minimum0
Type Ccd

Modification format. Only CCD polymer modifications are supported.

Value string

CCD code from RCSB PDB (e.g. ‘MSE’ for selenomethionine, ‘SEP’ for phosphoserine)

type ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecEntityFixedLigandSmilesEntity struct{…}
ChainIDs []string

Chain IDs to assign to this entity

Type LigandSmiles
Value string

SMILES string representing the ligand

type ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecEntityFixedLigandCcdEntity struct{…}
ChainIDs []string

Chain IDs to assign to this entity

Type LigandCcd
Value string

CCD code from RCSB PDB (e.g. ‘ATP’, ‘ADP’)

Modality ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecModality
One of the following:
const ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecModalityPeptide ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecModality = "peptide"
const ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecModalityAntibody ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecModality = "antibody"
const ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecModalityNanobody ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecModality = "nanobody"
const ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecModalityCustomProtein ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecModality = "custom_protein"
Type NoTemplate
Bonds []ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecBondOptional

Covalent bond constraints between atoms in the binder complex. If defining bonds where an atom is part of a designed protein chain, assume residue indices count designed regions as the minimum length. Example: designed protein “1..3C1..2”, “C” is residue 1 (0-indexed) of the designed protein.

Atom1 ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecBondAtom1Union

Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

One of the following:
type ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecBondAtom1LigandAtom struct{…}

Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

AtomName string

Standardized atom name (verifiable in CIF file on RCSB). Atom-level references to ligand_smiles entities are currently unsupported; use ligand_ccd instead.

ChainID string

Chain ID containing the atom

Type LigandAtom
type ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecBondAtom1PolymerAtom struct{…}
AtomName string

Standardized atom name (verifiable in CIF file on RCSB)

ChainID string

Chain ID containing the atom

ResidueIndex int64

0-based residue index

minimum0
Type PolymerAtom
Atom2 ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecBondAtom2Union

Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

One of the following:
type ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecBondAtom2LigandAtom struct{…}

Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

AtomName string

Standardized atom name (verifiable in CIF file on RCSB). Atom-level references to ligand_smiles entities are currently unsupported; use ligand_ccd instead.

ChainID string

Chain ID containing the atom

Type LigandAtom
type ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecBondAtom2PolymerAtom struct{…}
AtomName string

Standardized atom name (verifiable in CIF file on RCSB)

ChainID string

Chain ID containing the atom

ResidueIndex int64

0-based residue index

minimum0
Type PolymerAtom
Rules ProteinDesignStartParamsBinderSpecificationNoTemplateBinderSpecRulesOptional

Constraints applied during sequence design

ExcludedAminoAcids []stringOptional

Single-letter amino acid codes to exclude from design (e.g. [‘C’, ‘P’] to exclude cysteine and proline)

ExcludedSequenceMotifs []stringOptional

Sequence motifs to exclude from designed regions. Designs containing any of these motifs are filtered out before scoring. Use X as a single-residue wildcard (e.g. “NGS”, “NXS”).

MaxHydrophobicFraction float64Optional

Maximum allowed fraction of hydrophobic residues (I, L, V, M, F, W, Y) in designed regions. Designs exceeding this threshold are filtered out before scoring. Leave empty to disable.

minimum0
maximum1
type ProteinDesignStartParamsBinderSpecificationBoltzCuratedBinderSpec struct{…}

Boltz-managed curated binder specification. Choose a curated nanobody or antibody family and Boltz will select from maintained template lists during design. The curated lists are managed by Boltz and may be updated over time to improve quality and coverage.

Binder ProteinDesignStartParamsBinderSpecificationBoltzCuratedBinderSpecBinder

Boltz-managed curated binder family. Boltz maintains and may update the underlying template lists on behalf of customers.

One of the following:
const ProteinDesignStartParamsBinderSpecificationBoltzCuratedBinderSpecBinderBoltzNanobody ProteinDesignStartParamsBinderSpecificationBoltzCuratedBinderSpecBinder = "boltz_nanobody"
const ProteinDesignStartParamsBinderSpecificationBoltzCuratedBinderSpecBinderBoltzAntibody ProteinDesignStartParamsBinderSpecificationBoltzCuratedBinderSpecBinder = "boltz_antibody"
Type BoltzCurated
Rules ProteinDesignStartParamsBinderSpecificationBoltzCuratedBinderSpecRulesOptional

Constraints applied during sequence design

ExcludedAminoAcids []stringOptional

Single-letter amino acid codes to exclude from design (e.g. [‘C’, ‘P’] to exclude cysteine and proline)

ExcludedSequenceMotifs []stringOptional

Sequence motifs to exclude from designed regions. Designs containing any of these motifs are filtered out before scoring. Use X as a single-residue wildcard (e.g. “NGS”, “NXS”).

MaxHydrophobicFraction float64Optional

Maximum allowed fraction of hydrophobic residues (I, L, V, M, F, W, Y) in designed regions. Designs exceeding this threshold are filtered out before scoring. Leave empty to disable.

minimum0
maximum1
NumProteins param.Field[int64]

Number of protein designs to generate. Must be between 10 and 1,000,000.

minimum10
maximum1000000

Target specification (structure template or template-free)

type ProteinDesignStartParamsTargetStructureTemplateTarget struct{…}

Target defined by an uploaded 3D structure (CIF or PDB file). Only chains included in chain_selection are used.

ChainSelection map[string, ProteinDesignStartParamsTargetStructureTemplateTargetChainSelectionUnion]

Chains selected from the uploaded structure, keyed by chain ID. Only chains listed here are included in the pipeline run — any chains omitted from this mapping are ignored. Each value defines which residues to keep, which are epitope residues, which are non-binding residues, and which are flexible.

One of the following:
type ProteinDesignStartParamsTargetStructureTemplateTargetChainSelectionStructureTemplateTargetPolymerChainSpec struct{…}

Per-chain specification for a polymer (protein/RNA/DNA) chain in a structure template target.

ChainType Polymer
CropResidues ProteinDesignStartParamsTargetStructureTemplateTargetChainSelectionStructureTemplateTargetPolymerChainSpecCropResiduesUnion

0-indexed residue indices to retain from this chain, or ‘all’ to keep all residues. Residues not listed are excluded from the pipeline run.

One of the following:
type ProteinDesignStartParamsTargetStructureTemplateTargetChainSelectionStructureTemplateTargetPolymerChainSpecCropResiduesArray []int64

0-indexed residue indices to keep

type All string
EpitopeResidues []int64Optional

0-indexed residue indices where binder contact is desired (the epitope). All indices must be present in crop_residues and must not overlap non_binding_residues.

FlexibleResidues []int64Optional

0-indexed residue indices allowed to move during design (e.g. flexible loop regions). All indices must be present in crop_residues.

NonBindingResidues []int64Optional

0-indexed residue indices where binder contact should be discouraged. All indices must be present in crop_residues and must not overlap epitope_residues.

type ProteinDesignStartParamsTargetStructureTemplateTargetChainSelectionStructureTemplateTargetLigandChainSpec struct{…}

Per-chain specification for a ligand chain in a structure template target. The full ligand is always included.

ChainType Ligand
Structure ProteinDesignStartParamsTargetStructureTemplateTargetStructureUnion

How to provide a CIF structure file. URLs are auto-detected; base64 uploads must use chemical/x-cif media type.

One of the following:
type ProteinDesignStartParamsTargetStructureTemplateTargetStructureURLSource struct{…}
Type URL
URL string
formaturi
type ProteinDesignStartParamsTargetStructureTemplateTargetStructureCifBase64Source struct{…}
Data string

Base64-encoded CIF file contents

MediaType ChemicalXCif

Must be chemical/x-cif for CIF files

Type Base64
Type StructureTemplate
type ProteinDesignStartParamsTargetNoTemplateTarget struct{…}

Target defined by sequences only, without a 3D structure template

Entities []ProteinDesignStartParamsTargetNoTemplateTargetEntityUnion

Entities (proteins, RNA, DNA, ligands) defining the target complex.

One of the following:
type ProteinDesignStartParamsTargetNoTemplateTargetEntityProteinEntity struct{…}
ChainIDs []string

Chain IDs for this entity

Type Protein
Value string

Amino acid sequence (one-letter codes)

Cyclic boolOptional

Whether the sequence is cyclic

Modifications []ProteinDesignStartParamsTargetNoTemplateTargetEntityProteinEntityModificationOptional

CCD post-translational modifications. Optional; defaults to an empty list when omitted. SMILES modifications are not supported.

ResidueIndex int64

0-based index of the residue to modify

minimum0
Type Ccd

Modification format. Only CCD polymer modifications are supported.

Value string

CCD code from RCSB PDB (e.g. ‘MSE’ for selenomethionine, ‘SEP’ for phosphoserine)

type ProteinDesignStartParamsTargetNoTemplateTargetEntityRnaEntity struct{…}
ChainIDs []string

Chain IDs for this entity

Type Rna
Value string

RNA nucleotide sequence (A, C, G, U, N)

Cyclic boolOptional

Whether the sequence is cyclic

Modifications []ProteinDesignStartParamsTargetNoTemplateTargetEntityRnaEntityModificationOptional

CCD chemical modifications. Optional; defaults to an empty list when omitted. SMILES modifications are not supported.

ResidueIndex int64

0-based index of the residue to modify

minimum0
Type Ccd

Modification format. Only CCD polymer modifications are supported.

Value string

CCD code from RCSB PDB (e.g. ‘MSE’ for selenomethionine, ‘SEP’ for phosphoserine)

type ProteinDesignStartParamsTargetNoTemplateTargetEntityDnaEntity struct{…}
ChainIDs []string

Chain IDs for this entity

Type Dna
Value string

DNA nucleotide sequence (A, C, G, T, N)

Cyclic boolOptional

Whether the sequence is cyclic

Modifications []ProteinDesignStartParamsTargetNoTemplateTargetEntityDnaEntityModificationOptional

CCD chemical modifications. Optional; defaults to an empty list when omitted. SMILES modifications are not supported.

ResidueIndex int64

0-based index of the residue to modify

minimum0
Type Ccd

Modification format. Only CCD polymer modifications are supported.

Value string

CCD code from RCSB PDB (e.g. ‘MSE’ for selenomethionine, ‘SEP’ for phosphoserine)

type ProteinDesignStartParamsTargetNoTemplateTargetEntityLigandCcdEntity struct{…}
ChainIDs []string

Chain IDs for this ligand

Type LigandCcd
Value string

CCD code (e.g., ATP, ADP)

type ProteinDesignStartParamsTargetNoTemplateTargetEntityLigandSmilesEntity struct{…}
ChainIDs []string

Chain IDs for this ligand

Type LigandSmiles
Value string

SMILES string representing the ligand

Type NoTemplate
Bonds []ProteinDesignStartParamsTargetNoTemplateTargetBondOptional

Covalent bond constraints between atoms in the target complex. Atom-level ligand references currently support ligand_ccd only; ligand_smiles is unsupported.

Atom1 ProteinDesignStartParamsTargetNoTemplateTargetBondAtom1Union

Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

One of the following:
type ProteinDesignStartParamsTargetNoTemplateTargetBondAtom1LigandAtom struct{…}

Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

AtomName string

Standardized atom name (verifiable in CIF file on RCSB). Atom-level references to ligand_smiles entities are currently unsupported; use ligand_ccd instead.

ChainID string

Chain ID containing the atom

Type LigandAtom
type ProteinDesignStartParamsTargetNoTemplateTargetBondAtom1PolymerAtom struct{…}
AtomName string

Standardized atom name (verifiable in CIF file on RCSB)

ChainID string

Chain ID containing the atom

ResidueIndex int64

0-based residue index

minimum0
Type PolymerAtom
Atom2 ProteinDesignStartParamsTargetNoTemplateTargetBondAtom2Union

Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

One of the following:
type ProteinDesignStartParamsTargetNoTemplateTargetBondAtom2LigandAtom struct{…}

Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

AtomName string

Standardized atom name (verifiable in CIF file on RCSB). Atom-level references to ligand_smiles entities are currently unsupported; use ligand_ccd instead.

ChainID string

Chain ID containing the atom

Type LigandAtom
type ProteinDesignStartParamsTargetNoTemplateTargetBondAtom2PolymerAtom struct{…}
AtomName string

Standardized atom name (verifiable in CIF file on RCSB)

ChainID string

Chain ID containing the atom

ResidueIndex int64

0-based residue index

minimum0
Type PolymerAtom
Constraints []ProteinDesignStartParamsTargetNoTemplateTargetConstraintUnionOptional

Structural constraints (pocket and contact). Atom-level ligand references currently support ligand_ccd only; ligand_smiles is unsupported.

One of the following:
type ProteinDesignStartParamsTargetNoTemplateTargetConstraintPocketConstraint struct{…}

Constrains the binder to interact with specific pocket residues on the target.

BinderChainID string

Chain ID of the binder molecule

ContactResidues map[string, []int64]

Binding pocket residues keyed by chain ID. Each key is a chain ID (e.g. “A”) and the value is an array of 0-indexed residue indices that define the pocket on that chain.

MaxDistanceAngstrom float64

Maximum allowed distance in Angstroms between binder and pocket residues. Typical range: 4-8 A.

Type Pocket
Force boolOptional

Whether to force the constraint

type ProteinDesignStartParamsTargetNoTemplateTargetConstraintContactConstraint struct{…}

Contact constraint between two tokens. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

MaxDistanceAngstrom float64

Maximum distance in Angstroms

Token1 ProteinDesignStartParamsTargetNoTemplateTargetConstraintContactConstraintToken1Union

Ligand contact token. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

One of the following:
type ProteinDesignStartParamsTargetNoTemplateTargetConstraintContactConstraintToken1PolymerContactToken struct{…}
ChainID string

Chain ID

ResidueIndex int64

0-based residue index

minimum0
Type PolymerContact
type ProteinDesignStartParamsTargetNoTemplateTargetConstraintContactConstraintToken1LigandContactToken struct{…}

Ligand contact token. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

AtomName string

Atom name. Atom-level references to ligand_smiles entities are currently unsupported; use ligand_ccd instead.

ChainID string

Chain ID

Type LigandContact
Token2 ProteinDesignStartParamsTargetNoTemplateTargetConstraintContactConstraintToken2Union

Ligand contact token. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

One of the following:
type ProteinDesignStartParamsTargetNoTemplateTargetConstraintContactConstraintToken2PolymerContactToken struct{…}
ChainID string

Chain ID

ResidueIndex int64

0-based residue index

minimum0
Type PolymerContact
type ProteinDesignStartParamsTargetNoTemplateTargetConstraintContactConstraintToken2LigandContactToken struct{…}

Ligand contact token. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

AtomName string

Atom name. Atom-level references to ligand_smiles entities are currently unsupported; use ligand_ccd instead.

ChainID string

Chain ID

Type LigandContact
Type Contact
Force boolOptional

Whether to force the constraint

EpitopeLigandChains []stringOptional

Chain IDs of ligand entities that are part of the binding epitope. Ligands are marked as epitope in full (no residue-level selection).

EpitopeResidues map[string, []int64]Optional

Polymer chain residues where binder contact is desired (the epitope). Each key is a chain ID of a polymer entity, each value is an array of 0-indexed residue indices. Residues must not overlap non_binding_residues on the same chain.

NonBindingResidues map[string, []int64]Optional

Polymer chain residues where binder contact should be discouraged. Each key is a chain ID of a polymer entity, each value is an array of 0-indexed residue indices. Residues must not overlap epitope_residues on the same chain.

IdempotencyKey param.Field[string]Optional

Client-provided key to prevent duplicate submissions on retries

maxLength255
WorkspaceID param.Field[string]Optional

Target workspace ID (admin keys only; ignored for workspace keys)

ReturnsExpand Collapse
type ProteinDesignStartResponse struct{…}

A protein design pipeline run that generates novel protein binders

ID string

Unique ProteinDesignRun identifier

CompletedAt Time
formatdate-time
CreatedAt Time
formatdate-time
DataDeletedAt Time

When the input, output, and result data was permanently deleted. Null if data has not been deleted.

formatdate-time
DeprecatedEngine Boltzprot
Use pipeline instead.

Deprecated. Use pipeline instead.

DeprecatedEngineVersion String1_0
Use pipeline_version instead.

Deprecated. Use pipeline_version instead.

Error ProteinDesignStartResponseError
Code string

Machine-readable error code

Message string

Human-readable error message

Details anyOptional

Additional field-level error details keyed by input path, when available.

Input ProteinDesignStartResponseInput

Pipeline input (null if data deleted)

BinderSpecification ProteinDesignStartResponseInputBinderSpecificationUnion

Binder specification for protein design. Use no_template for sequence-defined binders, structure_template for uploaded binder structures, or boltz_curated for Boltz-managed nanobody and antibody defaults.

One of the following:
type ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponse struct{…}

Binder specification starting from an existing 3D structure. Upload a CIF/PDB file and select which chains to include, which residues to keep, and which regions to redesign. Only chains included in chain_selection are part of the pipeline run.

ChainSelection map[string, ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseChainSelectionUnion]

Chains selected from the uploaded binder structure, keyed by chain ID. Only chains listed here are included in the pipeline run — any chains omitted from this mapping are ignored. Each value defines which residues to keep (crop_residues). Omit design_motifs to include the chain as fixed scaffold context.

One of the following:
type ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseChainSelectionStructureTemplatePolymerChainSpec struct{…}

Per-chain crop and design specification for a polymer chain in structure_template mode.

ChainType Polymer
CropResidues ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseChainSelectionStructureTemplatePolymerChainSpecCropResiduesUnion

0-indexed residue indices to retain from this chain, or ‘all’ to keep all residues. Residues not listed are removed before design.

One of the following:
type ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseChainSelectionStructureTemplatePolymerChainSpecCropResiduesArray []int64
type All string
DesignMotifs []ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseChainSelectionStructureTemplatePolymerChainSpecDesignMotifUnionOptional

Optional motifs (replacement or insertion) defining which regions to redesign on this chain. Omit this field to include the chain as fixed scaffold context.

One of the following:
type ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseChainSelectionStructureTemplatePolymerChainSpecDesignMotifReplacementMotif struct{…}

Replace a contiguous region of the sequence with a designed segment. Residues from start_index to end_index (inclusive) are replaced with a new sequence of the specified length.

DesignLengthRange ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseChainSelectionStructureTemplatePolymerChainSpecDesignMotifReplacementMotifDesignLengthRange

Allowed sequence length range for designed regions

Max int64

Maximum sequence length in residues. Must be >= min.

minimum0
Min int64

Minimum sequence length in residues

minimum0
EndIndex int64

0-indexed end residue (inclusive)

minimum0
StartIndex int64

0-indexed start residue (inclusive)

minimum0
Type Replacement
type ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseChainSelectionStructureTemplatePolymerChainSpecDesignMotifInsertionMotif struct{…}

Insert a designed segment at a specific position in the sequence.

AfterResidueIndex int64

0-indexed position after which to insert. Use -1 to insert before the first residue.

minimum-1
DesignLengthRange ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseChainSelectionStructureTemplatePolymerChainSpecDesignMotifInsertionMotifDesignLengthRange

Allowed sequence length range for designed regions

Max int64

Maximum sequence length in residues. Must be >= min.

minimum0
Min int64

Minimum sequence length in residues

minimum0
Type Insertion
type ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseChainSelectionStructureTemplateLigandChainSpec struct{…}

Per-chain specification for a ligand chain in structure_template mode. The full ligand is always included.

ChainType Ligand
Modality ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseModality
One of the following:
const ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseModalityPeptide ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseModality = "peptide"
const ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseModalityAntibody ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseModality = "antibody"
const ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseModalityNanobody ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseModality = "nanobody"
const ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseModalityCustomProtein ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseModality = "custom_protein"
Structure ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseStructure
URL string

URL to download the file

formaturi
URLExpiresAt Time

When the presigned URL expires

formatdate-time
Type StructureTemplate
Rules ProteinDesignStartResponseInputBinderSpecificationStructureTemplateBinderSpecResponseRulesOptional

Constraints applied during sequence design

ExcludedAminoAcids []stringOptional

Single-letter amino acid codes to exclude from design (e.g. [‘C’, ‘P’] to exclude cysteine and proline)

ExcludedSequenceMotifs []stringOptional

Sequence motifs to exclude from designed regions. Designs containing any of these motifs are filtered out before scoring. Use X as a single-residue wildcard (e.g. “NGS”, “NXS”).

MaxHydrophobicFraction float64Optional

Maximum allowed fraction of hydrophobic residues (I, L, V, M, F, W, Y) in designed regions. Designs exceeding this threshold are filtered out before scoring. Leave empty to disable.

minimum0
maximum1
type ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponse struct{…}

Binder specification without a structural template. Define the binder from sequence components (fixed and designed segments) without providing a starting 3D structure.

Entities []ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseEntityUnion

Binder entities composing the design. At least one must be a designed_protein entity. Additional fixed entities (RNA, DNA, ligands) can be included as part of the complex.

One of the following:
type ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseEntityDesignedProteinEntityResponse struct{…}

Protein binder entity with designed and/or fixed segments.

ChainIDs []string

Chain IDs to assign to this entity

Type DesignedProtein
Value string

Binder sequence specification. Fixed amino acids are written as literal single-letter codes. Designed regions are written as a length (fixed) or a length range (min..max). Example: “MKTAYI5..10VKSHFSRQ” means fixed MKTAYI, then 5-10 designed residues, then fixed VKSHFSRQ. “20” means 20 fully designed residues. “ACDE8GHI” means fixed ACDE, then 8 designed residues, then fixed GHI.

Cyclic boolOptional

Whether the sequence is cyclic

Modifications []ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseEntityDesignedProteinEntityResponseModificationOptional

Optional CCD polymer modifications. Defaults to [] when omitted. SMILES modifications are not supported.

ResidueIndex int64

0-based index of the residue to modify

minimum0
Type Ccd

Modification format. Only CCD polymer modifications are supported.

Value string

CCD code from RCSB PDB (e.g. ‘MSE’ for selenomethionine, ‘SEP’ for phosphoserine)

type ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseEntityFixedProteinEntityResponse struct{…}

A fixed protein entity whose sequence is not redesigned.

ChainIDs []string

Chain IDs to assign to this entity

Type Protein
Value string

Amino acid sequence (one-letter codes)

Cyclic boolOptional

Whether the sequence is cyclic

Modifications []ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseEntityFixedProteinEntityResponseModificationOptional

Optional CCD polymer modifications. Defaults to [] when omitted. SMILES modifications are not supported.

ResidueIndex int64

0-based index of the residue to modify

minimum0
Type Ccd

Modification format. Only CCD polymer modifications are supported.

Value string

CCD code from RCSB PDB (e.g. ‘MSE’ for selenomethionine, ‘SEP’ for phosphoserine)

type ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseEntityFixedRnaEntityResponse struct{…}
ChainIDs []string

Chain IDs to assign to this entity

Type Rna
Value string

RNA nucleotide sequence (A, C, G, U, N)

Cyclic boolOptional

Whether the sequence is cyclic

Modifications []ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseEntityFixedRnaEntityResponseModificationOptional

Optional CCD polymer modifications. Defaults to [] when omitted. SMILES modifications are not supported.

ResidueIndex int64

0-based index of the residue to modify

minimum0
Type Ccd

Modification format. Only CCD polymer modifications are supported.

Value string

CCD code from RCSB PDB (e.g. ‘MSE’ for selenomethionine, ‘SEP’ for phosphoserine)

type ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseEntityFixedDnaEntityResponse struct{…}
ChainIDs []string

Chain IDs to assign to this entity

Type Dna
Value string

DNA nucleotide sequence (A, C, G, T, N)

Cyclic boolOptional

Whether the sequence is cyclic

Modifications []ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseEntityFixedDnaEntityResponseModificationOptional

Optional CCD polymer modifications. Defaults to [] when omitted. SMILES modifications are not supported.

ResidueIndex int64

0-based index of the residue to modify

minimum0
Type Ccd

Modification format. Only CCD polymer modifications are supported.

Value string

CCD code from RCSB PDB (e.g. ‘MSE’ for selenomethionine, ‘SEP’ for phosphoserine)

type ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseEntityFixedLigandSmilesEntityResponse struct{…}
ChainIDs []string

Chain IDs to assign to this entity

Type LigandSmiles
Value string

SMILES string representing the ligand

type ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseEntityFixedLigandCcdEntityResponse struct{…}
ChainIDs []string

Chain IDs to assign to this entity

Type LigandCcd
Value string

CCD code from RCSB PDB (e.g. ‘ATP’, ‘ADP’)

Modality ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseModality
One of the following:
const ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseModalityPeptide ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseModality = "peptide"
const ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseModalityAntibody ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseModality = "antibody"
const ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseModalityNanobody ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseModality = "nanobody"
const ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseModalityCustomProtein ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseModality = "custom_protein"
Type NoTemplate
Bonds []ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseBondOptional

Covalent bond constraints between atoms in the binder complex. If defining bonds where an atom is part of a designed protein chain, assume residue indices count designed regions as the minimum length. Example: designed protein “1..3C1..2”, “C” is residue 1 (0-indexed) of the designed protein.

Atom1 ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseBondAtom1Union

Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

One of the following:
type ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseBondAtom1LigandAtomResponse struct{…}

Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

AtomName string

Standardized atom name (verifiable in CIF file on RCSB). Atom-level references to ligand_smiles entities are currently unsupported; use ligand_ccd instead.

ChainID string

Chain ID containing the atom

Type LigandAtom
type ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseBondAtom1PolymerAtomResponse struct{…}
AtomName string

Standardized atom name (verifiable in CIF file on RCSB)

ChainID string

Chain ID containing the atom

ResidueIndex int64

0-based residue index

minimum0
Type PolymerAtom
Atom2 ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseBondAtom2Union

Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

One of the following:
type ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseBondAtom2LigandAtomResponse struct{…}

Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

AtomName string

Standardized atom name (verifiable in CIF file on RCSB). Atom-level references to ligand_smiles entities are currently unsupported; use ligand_ccd instead.

ChainID string

Chain ID containing the atom

Type LigandAtom
type ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseBondAtom2PolymerAtomResponse struct{…}
AtomName string

Standardized atom name (verifiable in CIF file on RCSB)

ChainID string

Chain ID containing the atom

ResidueIndex int64

0-based residue index

minimum0
Type PolymerAtom
Rules ProteinDesignStartResponseInputBinderSpecificationNoTemplateBinderSpecResponseRulesOptional

Constraints applied during sequence design

ExcludedAminoAcids []stringOptional

Single-letter amino acid codes to exclude from design (e.g. [‘C’, ‘P’] to exclude cysteine and proline)

ExcludedSequenceMotifs []stringOptional

Sequence motifs to exclude from designed regions. Designs containing any of these motifs are filtered out before scoring. Use X as a single-residue wildcard (e.g. “NGS”, “NXS”).

MaxHydrophobicFraction float64Optional

Maximum allowed fraction of hydrophobic residues (I, L, V, M, F, W, Y) in designed regions. Designs exceeding this threshold are filtered out before scoring. Leave empty to disable.

minimum0
maximum1
type ProteinDesignStartResponseInputBinderSpecificationBoltzCuratedBinderSpecResponse struct{…}

Boltz-managed curated binder specification. Choose a curated nanobody or antibody family and Boltz will select from maintained template lists during design. The curated lists are managed by Boltz and may be updated over time to improve quality and coverage.

Binder ProteinDesignStartResponseInputBinderSpecificationBoltzCuratedBinderSpecResponseBinder

Boltz-managed curated binder family. Boltz maintains and may update the underlying template lists on behalf of customers.

One of the following:
const ProteinDesignStartResponseInputBinderSpecificationBoltzCuratedBinderSpecResponseBinderBoltzNanobody ProteinDesignStartResponseInputBinderSpecificationBoltzCuratedBinderSpecResponseBinder = "boltz_nanobody"
const ProteinDesignStartResponseInputBinderSpecificationBoltzCuratedBinderSpecResponseBinderBoltzAntibody ProteinDesignStartResponseInputBinderSpecificationBoltzCuratedBinderSpecResponseBinder = "boltz_antibody"
Type BoltzCurated
Rules ProteinDesignStartResponseInputBinderSpecificationBoltzCuratedBinderSpecResponseRulesOptional

Constraints applied during sequence design

ExcludedAminoAcids []stringOptional

Single-letter amino acid codes to exclude from design (e.g. [‘C’, ‘P’] to exclude cysteine and proline)

ExcludedSequenceMotifs []stringOptional

Sequence motifs to exclude from designed regions. Designs containing any of these motifs are filtered out before scoring. Use X as a single-residue wildcard (e.g. “NGS”, “NXS”).

MaxHydrophobicFraction float64Optional

Maximum allowed fraction of hydrophobic residues (I, L, V, M, F, W, Y) in designed regions. Designs exceeding this threshold are filtered out before scoring. Leave empty to disable.

minimum0
maximum1
NumProteins int64

Number of protein designs to generate. Must be between 10 and 1,000,000.

minimum10
maximum1000000
Target ProteinDesignStartResponseInputTargetUnion

Target specification (structure template or template-free)

One of the following:
type ProteinDesignStartResponseInputTargetStructureTemplateTargetResponse struct{…}

Target defined by an uploaded 3D structure (CIF or PDB file). Only chains included in chain_selection are used.

ChainSelection map[string, ProteinDesignStartResponseInputTargetStructureTemplateTargetResponseChainSelectionUnion]

Chains selected from the uploaded structure, keyed by chain ID. Only chains listed here are included in the pipeline run — any chains omitted from this mapping are ignored. Each value defines which residues to keep, which are epitope residues, which are non-binding residues, and which are flexible.

One of the following:
type ProteinDesignStartResponseInputTargetStructureTemplateTargetResponseChainSelectionStructureTemplateTargetPolymerChainSpec struct{…}

Per-chain specification for a polymer (protein/RNA/DNA) chain in a structure template target.

ChainType Polymer
CropResidues ProteinDesignStartResponseInputTargetStructureTemplateTargetResponseChainSelectionStructureTemplateTargetPolymerChainSpecCropResiduesUnion

0-indexed residue indices to retain from this chain, or ‘all’ to keep all residues. Residues not listed are excluded from the pipeline run.

One of the following:
type ProteinDesignStartResponseInputTargetStructureTemplateTargetResponseChainSelectionStructureTemplateTargetPolymerChainSpecCropResiduesArray []int64

0-indexed residue indices to keep

type All string
EpitopeResidues []int64Optional

0-indexed residue indices where binder contact is desired (the epitope). All indices must be present in crop_residues and must not overlap non_binding_residues.

FlexibleResidues []int64Optional

0-indexed residue indices allowed to move during design (e.g. flexible loop regions). All indices must be present in crop_residues.

NonBindingResidues []int64Optional

0-indexed residue indices where binder contact should be discouraged. All indices must be present in crop_residues and must not overlap epitope_residues.

type ProteinDesignStartResponseInputTargetStructureTemplateTargetResponseChainSelectionStructureTemplateTargetLigandChainSpec struct{…}

Per-chain specification for a ligand chain in a structure template target. The full ligand is always included.

ChainType Ligand
Structure ProteinDesignStartResponseInputTargetStructureTemplateTargetResponseStructure
URL string

URL to download the file

formaturi
URLExpiresAt Time

When the presigned URL expires

formatdate-time
Type StructureTemplate
type ProteinDesignStartResponseInputTargetNoTemplateTargetResponse struct{…}

Target defined by sequences only, without a 3D structure template

Entities []ProteinDesignStartResponseInputTargetNoTemplateTargetResponseEntityUnion

Entities (proteins, RNA, DNA, ligands) defining the target complex.

One of the following:
type ProteinDesignStartResponseInputTargetNoTemplateTargetResponseEntityProteinEntityResponse struct{…}
ChainIDs []string

Chain IDs for this entity

Type Protein
Value string

Amino acid sequence (one-letter codes)

Cyclic boolOptional

Whether the sequence is cyclic

Modifications []ProteinDesignStartResponseInputTargetNoTemplateTargetResponseEntityProteinEntityResponseModificationOptional

CCD post-translational modifications. Optional; defaults to an empty list when omitted. SMILES modifications are not supported.

ResidueIndex int64

0-based index of the residue to modify

minimum0
Type Ccd

Modification format. Only CCD polymer modifications are supported.

Value string

CCD code from RCSB PDB (e.g. ‘MSE’ for selenomethionine, ‘SEP’ for phosphoserine)

type ProteinDesignStartResponseInputTargetNoTemplateTargetResponseEntityRnaEntityResponse struct{…}
ChainIDs []string

Chain IDs for this entity

Type Rna
Value string

RNA nucleotide sequence (A, C, G, U, N)

Cyclic boolOptional

Whether the sequence is cyclic

Modifications []ProteinDesignStartResponseInputTargetNoTemplateTargetResponseEntityRnaEntityResponseModificationOptional

CCD chemical modifications. Optional; defaults to an empty list when omitted. SMILES modifications are not supported.

ResidueIndex int64

0-based index of the residue to modify

minimum0
Type Ccd

Modification format. Only CCD polymer modifications are supported.

Value string

CCD code from RCSB PDB (e.g. ‘MSE’ for selenomethionine, ‘SEP’ for phosphoserine)

type ProteinDesignStartResponseInputTargetNoTemplateTargetResponseEntityDnaEntityResponse struct{…}
ChainIDs []string

Chain IDs for this entity

Type Dna
Value string

DNA nucleotide sequence (A, C, G, T, N)

Cyclic boolOptional

Whether the sequence is cyclic

Modifications []ProteinDesignStartResponseInputTargetNoTemplateTargetResponseEntityDnaEntityResponseModificationOptional

CCD chemical modifications. Optional; defaults to an empty list when omitted. SMILES modifications are not supported.

ResidueIndex int64

0-based index of the residue to modify

minimum0
Type Ccd

Modification format. Only CCD polymer modifications are supported.

Value string

CCD code from RCSB PDB (e.g. ‘MSE’ for selenomethionine, ‘SEP’ for phosphoserine)

type ProteinDesignStartResponseInputTargetNoTemplateTargetResponseEntityLigandCcdEntityResponse struct{…}
ChainIDs []string

Chain IDs for this ligand

Type LigandCcd
Value string

CCD code (e.g., ATP, ADP)

type ProteinDesignStartResponseInputTargetNoTemplateTargetResponseEntityLigandSmilesEntityResponse struct{…}
ChainIDs []string

Chain IDs for this ligand

Type LigandSmiles
Value string

SMILES string representing the ligand

Type NoTemplate
Bonds []ProteinDesignStartResponseInputTargetNoTemplateTargetResponseBondOptional

Covalent bond constraints between atoms in the target complex. Atom-level ligand references currently support ligand_ccd only; ligand_smiles is unsupported.

Atom1 ProteinDesignStartResponseInputTargetNoTemplateTargetResponseBondAtom1Union

Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

One of the following:
type ProteinDesignStartResponseInputTargetNoTemplateTargetResponseBondAtom1LigandAtomResponse struct{…}

Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

AtomName string

Standardized atom name (verifiable in CIF file on RCSB). Atom-level references to ligand_smiles entities are currently unsupported; use ligand_ccd instead.

ChainID string

Chain ID containing the atom

Type LigandAtom
type ProteinDesignStartResponseInputTargetNoTemplateTargetResponseBondAtom1PolymerAtomResponse struct{…}
AtomName string

Standardized atom name (verifiable in CIF file on RCSB)

ChainID string

Chain ID containing the atom

ResidueIndex int64

0-based residue index

minimum0
Type PolymerAtom
Atom2 ProteinDesignStartResponseInputTargetNoTemplateTargetResponseBondAtom2Union

Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

One of the following:
type ProteinDesignStartResponseInputTargetNoTemplateTargetResponseBondAtom2LigandAtomResponse struct{…}

Ligand atom reference. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

AtomName string

Standardized atom name (verifiable in CIF file on RCSB). Atom-level references to ligand_smiles entities are currently unsupported; use ligand_ccd instead.

ChainID string

Chain ID containing the atom

Type LigandAtom
type ProteinDesignStartResponseInputTargetNoTemplateTargetResponseBondAtom2PolymerAtomResponse struct{…}
AtomName string

Standardized atom name (verifiable in CIF file on RCSB)

ChainID string

Chain ID containing the atom

ResidueIndex int64

0-based residue index

minimum0
Type PolymerAtom
Constraints []ProteinDesignStartResponseInputTargetNoTemplateTargetResponseConstraintUnionOptional

Structural constraints (pocket and contact). Atom-level ligand references currently support ligand_ccd only; ligand_smiles is unsupported.

One of the following:
type ProteinDesignStartResponseInputTargetNoTemplateTargetResponseConstraintPocketConstraintResponse struct{…}

Constrains the binder to interact with specific pocket residues on the target.

BinderChainID string

Chain ID of the binder molecule

ContactResidues map[string, []int64]

Binding pocket residues keyed by chain ID. Each key is a chain ID (e.g. “A”) and the value is an array of 0-indexed residue indices that define the pocket on that chain.

MaxDistanceAngstrom float64

Maximum allowed distance in Angstroms between binder and pocket residues. Typical range: 4-8 A.

Type Pocket
Force boolOptional

Whether to force the constraint

type ProteinDesignStartResponseInputTargetNoTemplateTargetResponseConstraintContactConstraintResponse struct{…}

Contact constraint between two tokens. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

MaxDistanceAngstrom float64

Maximum distance in Angstroms

Token1 ProteinDesignStartResponseInputTargetNoTemplateTargetResponseConstraintContactConstraintResponseToken1Union

Ligand contact token. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

One of the following:
type ProteinDesignStartResponseInputTargetNoTemplateTargetResponseConstraintContactConstraintResponseToken1PolymerContactTokenResponse struct{…}
ChainID string

Chain ID

ResidueIndex int64

0-based residue index

minimum0
Type PolymerContact
type ProteinDesignStartResponseInputTargetNoTemplateTargetResponseConstraintContactConstraintResponseToken1LigandContactTokenResponse struct{…}

Ligand contact token. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

AtomName string

Atom name. Atom-level references to ligand_smiles entities are currently unsupported; use ligand_ccd instead.

ChainID string

Chain ID

Type LigandContact
Token2 ProteinDesignStartResponseInputTargetNoTemplateTargetResponseConstraintContactConstraintResponseToken2Union

Ligand contact token. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

One of the following:
type ProteinDesignStartResponseInputTargetNoTemplateTargetResponseConstraintContactConstraintResponseToken2PolymerContactTokenResponse struct{…}
ChainID string

Chain ID

ResidueIndex int64

0-based residue index

minimum0
Type PolymerContact
type ProteinDesignStartResponseInputTargetNoTemplateTargetResponseConstraintContactConstraintResponseToken2LigandContactTokenResponse struct{…}

Ligand contact token. Atom-level ligand references currently support ligand_ccd entities only; ligand_smiles is unsupported.

AtomName string

Atom name. Atom-level references to ligand_smiles entities are currently unsupported; use ligand_ccd instead.

ChainID string

Chain ID

Type LigandContact
Type Contact
Force boolOptional

Whether to force the constraint

EpitopeLigandChains []stringOptional

Chain IDs of ligand entities that are part of the binding epitope. Ligands are marked as epitope in full (no residue-level selection).

EpitopeResidues map[string, []int64]Optional

Polymer chain residues where binder contact is desired (the epitope). Each key is a chain ID of a polymer entity, each value is an array of 0-indexed residue indices. Residues must not overlap non_binding_residues on the same chain.

NonBindingResidues map[string, []int64]Optional

Polymer chain residues where binder contact should be discouraged. Each key is a chain ID of a polymer entity, each value is an array of 0-indexed residue indices. Residues must not overlap epitope_residues on the same chain.

IdempotencyKey stringOptional

Client-provided key to prevent duplicate submissions on retries

maxLength255
WorkspaceID stringOptional

Target workspace ID (admin keys only; ignored for workspace keys)

Livemode bool

Whether this resource was created with a live API key.

Pipeline Boltzprot

Pipeline used for protein design

PipelineVersion String1_0

Pipeline version used for protein design

Progress ProteinDesignStartResponseProgress
NumProteinsGenerated int64

Number of protein binders generated so far

minimum0
TotalProteinsToGenerate int64

Total number of protein binders requested

minimum1
LatestResultID stringOptional

ID of the most recently generated result

StartedAt Time
formatdate-time
Status ProteinDesignStartResponseStatus
One of the following:
const ProteinDesignStartResponseStatusPending ProteinDesignStartResponseStatus = "pending"
const ProteinDesignStartResponseStatusRunning ProteinDesignStartResponseStatus = "running"
const ProteinDesignStartResponseStatusSucceeded ProteinDesignStartResponseStatus = "succeeded"
const ProteinDesignStartResponseStatusFailed ProteinDesignStartResponseStatus = "failed"
const ProteinDesignStartResponseStatusStopped ProteinDesignStartResponseStatus = "stopped"
StoppedAt Time
formatdate-time
WorkspaceID string

Workspace ID

IdempotencyKey stringOptional

Client-provided idempotency key

Start a protein de novo design run

package main

import (
  "context"
  "fmt"

  "github.com/boltz-bio/boltz-api-go"
  "github.com/boltz-bio/boltz-api-go/option"
)

func main() {
  client := boltzapi.NewClient(
    option.WithAPIKey("My API Key"),
  )
  response, err := client.Protein.Design.Start(context.TODO(), boltzapi.ProteinDesignStartParams{
    BinderSpecification: boltzapi.ProteinDesignStartParamsBinderSpecificationUnion{
      OfProteinDesignStartsBinderSpecificationStructureTemplateBinderSpec: &boltzapi.ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpec{
        ChainSelection: map[string]boltzapi.ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecChainSelectionUnion{
        "B": boltzapi.ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecChainSelectionUnion{
          OfProteinDesignStartsBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpec: &boltzapi.ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpec{
            CropResidues: boltzapi.ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecCropResiduesUnion{
              OfIntArray: []int64{0, 1, 2, 3, 4, 5, 6, 7, 8, 9},
            },
          },
        },
        },
        Modality: boltzapi.ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecModalityPeptide,
        Structure: boltzapi.ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecStructureUnion{
          OfProteinDesignStartsBinderSpecificationStructureTemplateBinderSpecStructureURLSource: &boltzapi.ProteinDesignStartParamsBinderSpecificationStructureTemplateBinderSpecStructureURLSource{
            URL: "https://example.com",
          },
        },
      },
    },
    NumProteins: 10,
    Target: boltzapi.ProteinDesignStartParamsTargetUnion{
      OfProteinDesignStartsTargetStructureTemplateTarget: &boltzapi.ProteinDesignStartParamsTargetStructureTemplateTarget{
        ChainSelection: map[string]boltzapi.ProteinDesignStartParamsTargetStructureTemplateTargetChainSelectionUnion{
        "A": boltzapi.ProteinDesignStartParamsTargetStructureTemplateTargetChainSelectionUnion{
          OfProteinDesignStartsTargetStructureTemplateTargetChainSelectionStructureTemplateTargetPolymerChainSpec: &boltzapi.ProteinDesignStartParamsTargetStructureTemplateTargetChainSelectionStructureTemplateTargetPolymerChainSpec{
            CropResidues: boltzapi.ProteinDesignStartParamsTargetStructureTemplateTargetChainSelectionStructureTemplateTargetPolymerChainSpecCropResiduesUnion{
              OfIntArray: []int64{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12},
            },
          },
        },
        },
        Structure: boltzapi.ProteinDesignStartParamsTargetStructureTemplateTargetStructureUnion{
          OfProteinDesignStartsTargetStructureTemplateTargetStructureURLSource: &boltzapi.ProteinDesignStartParamsTargetStructureTemplateTargetStructureURLSource{
            URL: "https://example.com",
          },
        },
      },
    },
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", response.ID)
}
{
  "id": "id",
  "completed_at": "2019-12-27T18:11:19.117Z",
  "created_at": "2019-12-27T18:11:19.117Z",
  "data_deleted_at": "2019-12-27T18:11:19.117Z",
  "engine": "boltzprot",
  "engine_version": "1.0",
  "error": {
    "code": "code",
    "message": "message",
    "details": {}
  },
  "input": {
    "binder_specification": {
      "chain_selection": {
        "B": {
          "chain_type": "polymer",
          "crop_residues": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9
          ],
          "design_motifs": [
            {
              "design_length_range": {
                "max": 8,
                "min": 4
              },
              "end_index": 5,
              "start_index": 0,
              "type": "replacement"
            }
          ]
        }
      },
      "modality": "peptide",
      "structure": {
        "url": "https://example.com",
        "url_expires_at": "2019-12-27T18:11:19.117Z"
      },
      "type": "structure_template",
      "rules": {
        "excluded_amino_acids": [
          "x"
        ],
        "excluded_sequence_motifs": [
          "string"
        ],
        "max_hydrophobic_fraction": 0
      }
    },
    "num_proteins": 10,
    "target": {
      "chain_selection": {
        "A": {
          "chain_type": "polymer",
          "crop_residues": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,
            10,
            11,
            12
          ],
          "epitope_residues": [
            10,
            11,
            12
          ],
          "flexible_residues": [
            5,
            6,
            7
          ],
          "non_binding_residues": [
            0,
            1,
            2
          ]
        }
      },
      "structure": {
        "url": "https://example.com",
        "url_expires_at": "2019-12-27T18:11:19.117Z"
      },
      "type": "structure_template"
    },
    "idempotency_key": "idempotency_key",
    "workspace_id": "workspace_id"
  },
  "livemode": true,
  "pipeline": "boltzprot",
  "pipeline_version": "1.0",
  "progress": {
    "num_proteins_generated": 0,
    "total_proteins_to_generate": 1,
    "latest_result_id": "latest_result_id"
  },
  "started_at": "2019-12-27T18:11:19.117Z",
  "status": "pending",
  "stopped_at": "2019-12-27T18:11:19.117Z",
  "workspace_id": "workspace_id",
  "idempotency_key": "idempotency_key"
}
Returns Examples
{
  "id": "id",
  "completed_at": "2019-12-27T18:11:19.117Z",
  "created_at": "2019-12-27T18:11:19.117Z",
  "data_deleted_at": "2019-12-27T18:11:19.117Z",
  "engine": "boltzprot",
  "engine_version": "1.0",
  "error": {
    "code": "code",
    "message": "message",
    "details": {}
  },
  "input": {
    "binder_specification": {
      "chain_selection": {
        "B": {
          "chain_type": "polymer",
          "crop_residues": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9
          ],
          "design_motifs": [
            {
              "design_length_range": {
                "max": 8,
                "min": 4
              },
              "end_index": 5,
              "start_index": 0,
              "type": "replacement"
            }
          ]
        }
      },
      "modality": "peptide",
      "structure": {
        "url": "https://example.com",
        "url_expires_at": "2019-12-27T18:11:19.117Z"
      },
      "type": "structure_template",
      "rules": {
        "excluded_amino_acids": [
          "x"
        ],
        "excluded_sequence_motifs": [
          "string"
        ],
        "max_hydrophobic_fraction": 0
      }
    },
    "num_proteins": 10,
    "target": {
      "chain_selection": {
        "A": {
          "chain_type": "polymer",
          "crop_residues": [
            0,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,
            10,
            11,
            12
          ],
          "epitope_residues": [
            10,
            11,
            12
          ],
          "flexible_residues": [
            5,
            6,
            7
          ],
          "non_binding_residues": [
            0,
            1,
            2
          ]
        }
      },
      "structure": {
        "url": "https://example.com",
        "url_expires_at": "2019-12-27T18:11:19.117Z"
      },
      "type": "structure_template"
    },
    "idempotency_key": "idempotency_key",
    "workspace_id": "workspace_id"
  },
  "livemode": true,
  "pipeline": "boltzprot",
  "pipeline_version": "1.0",
  "progress": {
    "num_proteins_generated": 0,
    "total_proteins_to_generate": 1,
    "latest_result_id": "latest_result_id"
  },
  "started_at": "2019-12-27T18:11:19.117Z",
  "status": "pending",
  "stopped_at": "2019-12-27T18:11:19.117Z",
  "workspace_id": "workspace_id",
  "idempotency_key": "idempotency_key"
}