Skip to content
Go to Boltz API

List curated protein design specifications

protein.design.list_curated_specifications(DesignListCuratedSpecificationsParams**kwargs) -> DesignListCuratedSpecificationsResponse
GET/compute/v1/protein/design/curated-specifications

List binder-side protein design specifications from Boltz-managed curated nanobody or antibody libraries.

ParametersExpand Collapse
type: Literal["nanobody", "antibody"]

Curated binder library to retrieve.

One of the following:
"nanobody"
"antibody"
ReturnsExpand Collapse
class DesignListCuratedSpecificationsResponse:
data: List[Data]
binder_specification: DataBinderSpecification

Binder specification for protein design. Use no_template for sequence-defined binders, structure_template for uploaded binder structures, boltz_curated for Boltz-managed nanobody and antibody defaults, or uniformly_sampled_specifications to sample uniformly across multiple binder specifications.

One of the following:
class DataBinderSpecificationStructureTemplateBinderSpec:

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.

chain_selection: Dict[str, DataBinderSpecificationStructureTemplateBinderSpecChainSelection]

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:
class DataBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpec:

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

chain_type: Literal["polymer"]
crop_residues: Union[List[int], Literal["all"]]

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:
List[int]
Literal["all"]
design_motifs: Optional[List[DataBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotif]]

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:
class DataBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifReplacementMotif:

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.

design_length_range: DataBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifReplacementMotifDesignLengthRange

Allowed sequence length range for designed regions

max: int

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

minimum0
min: int

Minimum sequence length in residues

minimum0
end_index: int

0-indexed end residue (inclusive)

minimum0
start_index: int

0-indexed start residue (inclusive)

minimum0
type: Literal["replacement"]
class DataBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifInsertionMotif:

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

after_residue_index: int

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

minimum-1
design_length_range: DataBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifInsertionMotifDesignLengthRange

Allowed sequence length range for designed regions

max: int

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

minimum0
min: int

Minimum sequence length in residues

minimum0
type: Literal["insertion"]
class DataBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplateLigandChainSpec:

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

chain_type: Literal["ligand"]
modality: Literal["peptide", "antibody", "nanobody", "custom_protein"]
One of the following:
"peptide"
"antibody"
"nanobody"
"custom_protein"
structure: DataBinderSpecificationStructureTemplateBinderSpecStructure

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

One of the following:
class DataBinderSpecificationStructureTemplateBinderSpecStructureURLSource:
type: Literal["url"]
url: str
formaturi
class DataBinderSpecificationStructureTemplateBinderSpecStructureCifBase64Source:
data: str

Base64-encoded CIF file contents

media_type: Literal["chemical/x-cif"]

Must be chemical/x-cif for CIF files

type: Literal["base64"]
type: Literal["structure_template"]
rules: Optional[DataBinderSpecificationStructureTemplateBinderSpecRules]

Constraints applied during sequence design

excluded_amino_acids: Optional[List[str]]

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

excluded_sequence_motifs: Optional[List[str]]

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”).

max_hydrophobic_fraction: Optional[float]

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
class DataBinderSpecificationNoTemplateBinderSpec:

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

entities: List[DataBinderSpecificationNoTemplateBinderSpecEntity]

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:
class DataBinderSpecificationNoTemplateBinderSpecEntityDesignedProteinEntity:

Protein binder entity with designed and/or fixed segments.

chain_ids: List[str]

Chain IDs to assign to this entity

type: Literal["designed_protein"]
value: str

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: Optional[bool]

Whether the sequence is cyclic

modifications: Optional[List[DataBinderSpecificationNoTemplateBinderSpecEntityDesignedProteinEntityModification]]

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

residue_index: int

0-based index of the residue to modify

minimum0
type: Literal["ccd"]

Modification format. Only CCD polymer modifications are supported.

value: str

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

class DataBinderSpecificationNoTemplateBinderSpecEntityFixedProteinEntity:

A fixed protein entity whose sequence is not redesigned.

chain_ids: List[str]

Chain IDs to assign to this entity

type: Literal["protein"]
value: str

Amino acid sequence (one-letter codes)

cyclic: Optional[bool]

Whether the sequence is cyclic

modifications: Optional[List[DataBinderSpecificationNoTemplateBinderSpecEntityFixedProteinEntityModification]]

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

residue_index: int

0-based index of the residue to modify

minimum0
type: Literal["ccd"]

Modification format. Only CCD polymer modifications are supported.

value: str

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

class DataBinderSpecificationNoTemplateBinderSpecEntityFixedRnaEntity:
chain_ids: List[str]

Chain IDs to assign to this entity

type: Literal["rna"]
value: str

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

cyclic: Optional[bool]

Whether the sequence is cyclic

modifications: Optional[List[DataBinderSpecificationNoTemplateBinderSpecEntityFixedRnaEntityModification]]

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

residue_index: int

0-based index of the residue to modify

minimum0
type: Literal["ccd"]

Modification format. Only CCD polymer modifications are supported.

value: str

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

class DataBinderSpecificationNoTemplateBinderSpecEntityFixedDnaEntity:
chain_ids: List[str]

Chain IDs to assign to this entity

type: Literal["dna"]
value: str

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

cyclic: Optional[bool]

Whether the sequence is cyclic

modifications: Optional[List[DataBinderSpecificationNoTemplateBinderSpecEntityFixedDnaEntityModification]]

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

residue_index: int

0-based index of the residue to modify

minimum0
type: Literal["ccd"]

Modification format. Only CCD polymer modifications are supported.

value: str

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

class DataBinderSpecificationNoTemplateBinderSpecEntityFixedLigandSmilesEntity:
chain_ids: List[str]

Chain IDs to assign to this entity

type: Literal["ligand_smiles"]
value: str

SMILES string representing the ligand

class DataBinderSpecificationNoTemplateBinderSpecEntityFixedLigandCcdEntity:
chain_ids: List[str]

Chain IDs to assign to this entity

type: Literal["ligand_ccd"]
value: str

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

modality: Literal["peptide", "antibody", "nanobody", "custom_protein"]
One of the following:
"peptide"
"antibody"
"nanobody"
"custom_protein"
type: Literal["no_template"]
bonds: Optional[List[DataBinderSpecificationNoTemplateBinderSpecBond]]

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: DataBinderSpecificationNoTemplateBinderSpecBondAtom1

Ligand atom reference for a CCD atom or an explicitly atom-mapped SMILES atom.

One of the following:
class DataBinderSpecificationNoTemplateBinderSpecBondAtom1LigandAtom:

Ligand atom reference for a CCD atom or an explicitly atom-mapped SMILES atom.

atom_name: str

Atom name. For ligand_ccd, use the standardized CIF atom name. For ligand_smiles, explicitly label the atom with numeric atom-map notation: [C:1] is referenced as C1 and [O:2] as O2. The resulting name must be unique within the molecule and at most four characters.

chain_id: str

Chain ID containing the atom

type: Literal["ligand_atom"]
class DataBinderSpecificationNoTemplateBinderSpecBondAtom1PolymerAtom:
atom_name: str

Standardized atom name (verifiable in CIF file on RCSB)

chain_id: str

Chain ID containing the atom

residue_index: int

0-based residue index

minimum0
type: Literal["polymer_atom"]
atom2: DataBinderSpecificationNoTemplateBinderSpecBondAtom2

Ligand atom reference for a CCD atom or an explicitly atom-mapped SMILES atom.

One of the following:
class DataBinderSpecificationNoTemplateBinderSpecBondAtom2LigandAtom:

Ligand atom reference for a CCD atom or an explicitly atom-mapped SMILES atom.

atom_name: str

Atom name. For ligand_ccd, use the standardized CIF atom name. For ligand_smiles, explicitly label the atom with numeric atom-map notation: [C:1] is referenced as C1 and [O:2] as O2. The resulting name must be unique within the molecule and at most four characters.

chain_id: str

Chain ID containing the atom

type: Literal["ligand_atom"]
class DataBinderSpecificationNoTemplateBinderSpecBondAtom2PolymerAtom:
atom_name: str

Standardized atom name (verifiable in CIF file on RCSB)

chain_id: str

Chain ID containing the atom

residue_index: int

0-based residue index

minimum0
type: Literal["polymer_atom"]
rules: Optional[DataBinderSpecificationNoTemplateBinderSpecRules]

Constraints applied during sequence design

excluded_amino_acids: Optional[List[str]]

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

excluded_sequence_motifs: Optional[List[str]]

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”).

max_hydrophobic_fraction: Optional[float]

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
class DataBinderSpecificationBoltzCuratedBinderSpec:

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: Literal["boltz_nanobody", "boltz_antibody"]

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

One of the following:
"boltz_nanobody"
"boltz_antibody"
type: Literal["boltz_curated"]
rules: Optional[DataBinderSpecificationBoltzCuratedBinderSpecRules]

Constraints applied during sequence design

excluded_amino_acids: Optional[List[str]]

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

excluded_sequence_motifs: Optional[List[str]]

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”).

max_hydrophobic_fraction: Optional[float]

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
class DataBinderSpecificationUniformlySampledBinderSpec:

A collection of binder specifications sampled uniformly during protein design. This lets one run explore multiple binder definitions while keeping each generation request shape unchanged.

binder_specifications: List[DataBinderSpecificationUniformlySampledBinderSpecBinderSpecification]

Binder specifications to sample uniformly when generating designs. Each generation samples one specification from this list; over larger runs this gives roughly equal representation.

One of the following:
class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpec:

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.

chain_selection: Dict[str, DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelection]

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:
class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpec:

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

chain_type: Literal["polymer"]
crop_residues: Union[List[int], Literal["all"]]

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:
List[int]
Literal["all"]
design_motifs: Optional[List[DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotif]]

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:
class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifReplacementMotif:

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.

design_length_range: DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifReplacementMotifDesignLengthRange

Allowed sequence length range for designed regions

max: int

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

minimum0
min: int

Minimum sequence length in residues

minimum0
end_index: int

0-indexed end residue (inclusive)

minimum0
start_index: int

0-indexed start residue (inclusive)

minimum0
type: Literal["replacement"]
class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifInsertionMotif:

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

after_residue_index: int

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

minimum-1
design_length_range: DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifInsertionMotifDesignLengthRange

Allowed sequence length range for designed regions

max: int

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

minimum0
min: int

Minimum sequence length in residues

minimum0
type: Literal["insertion"]
class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplateLigandChainSpec:

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

chain_type: Literal["ligand"]
modality: Literal["peptide", "antibody", "nanobody", "custom_protein"]
One of the following:
"peptide"
"antibody"
"nanobody"
"custom_protein"
structure: DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecStructure

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

One of the following:
class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecStructureURLSource:
type: Literal["url"]
url: str
formaturi
class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecStructureCifBase64Source:
data: str

Base64-encoded CIF file contents

media_type: Literal["chemical/x-cif"]

Must be chemical/x-cif for CIF files

type: Literal["base64"]
type: Literal["structure_template"]
rules: Optional[DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecRules]

Constraints applied during sequence design

excluded_amino_acids: Optional[List[str]]

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

excluded_sequence_motifs: Optional[List[str]]

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”).

max_hydrophobic_fraction: Optional[float]

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
class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpec:

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

entities: List[DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntity]

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:
class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityDesignedProteinEntity:

Protein binder entity with designed and/or fixed segments.

chain_ids: List[str]

Chain IDs to assign to this entity

type: Literal["designed_protein"]
value: str

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: Optional[bool]

Whether the sequence is cyclic

modifications: Optional[List[DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityDesignedProteinEntityModification]]

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

residue_index: int

0-based index of the residue to modify

minimum0
type: Literal["ccd"]

Modification format. Only CCD polymer modifications are supported.

value: str

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

class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityFixedProteinEntity:

A fixed protein entity whose sequence is not redesigned.

chain_ids: List[str]

Chain IDs to assign to this entity

type: Literal["protein"]
value: str

Amino acid sequence (one-letter codes)

cyclic: Optional[bool]

Whether the sequence is cyclic

modifications: Optional[List[DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityFixedProteinEntityModification]]

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

residue_index: int

0-based index of the residue to modify

minimum0
type: Literal["ccd"]

Modification format. Only CCD polymer modifications are supported.

value: str

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

class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityFixedRnaEntity:
chain_ids: List[str]

Chain IDs to assign to this entity

type: Literal["rna"]
value: str

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

cyclic: Optional[bool]

Whether the sequence is cyclic

modifications: Optional[List[DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityFixedRnaEntityModification]]

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

residue_index: int

0-based index of the residue to modify

minimum0
type: Literal["ccd"]

Modification format. Only CCD polymer modifications are supported.

value: str

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

class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityFixedDnaEntity:
chain_ids: List[str]

Chain IDs to assign to this entity

type: Literal["dna"]
value: str

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

cyclic: Optional[bool]

Whether the sequence is cyclic

modifications: Optional[List[DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityFixedDnaEntityModification]]

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

residue_index: int

0-based index of the residue to modify

minimum0
type: Literal["ccd"]

Modification format. Only CCD polymer modifications are supported.

value: str

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

class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityFixedLigandSmilesEntity:
chain_ids: List[str]

Chain IDs to assign to this entity

type: Literal["ligand_smiles"]
value: str

SMILES string representing the ligand

class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityFixedLigandCcdEntity:
chain_ids: List[str]

Chain IDs to assign to this entity

type: Literal["ligand_ccd"]
value: str

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

modality: Literal["peptide", "antibody", "nanobody", "custom_protein"]
One of the following:
"peptide"
"antibody"
"nanobody"
"custom_protein"
type: Literal["no_template"]
bonds: Optional[List[DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecBond]]

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: DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecBondAtom1

Ligand atom reference for a CCD atom or an explicitly atom-mapped SMILES atom.

One of the following:
class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecBondAtom1LigandAtom:

Ligand atom reference for a CCD atom or an explicitly atom-mapped SMILES atom.

atom_name: str

Atom name. For ligand_ccd, use the standardized CIF atom name. For ligand_smiles, explicitly label the atom with numeric atom-map notation: [C:1] is referenced as C1 and [O:2] as O2. The resulting name must be unique within the molecule and at most four characters.

chain_id: str

Chain ID containing the atom

type: Literal["ligand_atom"]
class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecBondAtom1PolymerAtom:
atom_name: str

Standardized atom name (verifiable in CIF file on RCSB)

chain_id: str

Chain ID containing the atom

residue_index: int

0-based residue index

minimum0
type: Literal["polymer_atom"]
atom2: DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecBondAtom2

Ligand atom reference for a CCD atom or an explicitly atom-mapped SMILES atom.

One of the following:
class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecBondAtom2LigandAtom:

Ligand atom reference for a CCD atom or an explicitly atom-mapped SMILES atom.

atom_name: str

Atom name. For ligand_ccd, use the standardized CIF atom name. For ligand_smiles, explicitly label the atom with numeric atom-map notation: [C:1] is referenced as C1 and [O:2] as O2. The resulting name must be unique within the molecule and at most four characters.

chain_id: str

Chain ID containing the atom

type: Literal["ligand_atom"]
class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecBondAtom2PolymerAtom:
atom_name: str

Standardized atom name (verifiable in CIF file on RCSB)

chain_id: str

Chain ID containing the atom

residue_index: int

0-based residue index

minimum0
type: Literal["polymer_atom"]
rules: Optional[DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecRules]

Constraints applied during sequence design

excluded_amino_acids: Optional[List[str]]

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

excluded_sequence_motifs: Optional[List[str]]

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”).

max_hydrophobic_fraction: Optional[float]

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
class DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationBoltzCuratedBinderSpec:

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: Literal["boltz_nanobody", "boltz_antibody"]

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

One of the following:
"boltz_nanobody"
"boltz_antibody"
type: Literal["boltz_curated"]
rules: Optional[DataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationBoltzCuratedBinderSpecRules]

Constraints applied during sequence design

excluded_amino_acids: Optional[List[str]]

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

excluded_sequence_motifs: Optional[List[str]]

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”).

max_hydrophobic_fraction: Optional[float]

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: Literal["uniformly_sampled_specifications"]
name: str

Human-readable name for this curated binder specification.

List curated protein design specifications

import os
from boltz_api import Boltz

client = Boltz(
    api_key=os.environ.get("BOLTZ_API_KEY"),  # This is the default and can be omitted
)
response = client.protein.design.list_curated_specifications(
    type="nanobody",
)
print(response.data)
{
  "data": [
    {
      "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": {
          "type": "url",
          "url": "https://example.com"
        },
        "type": "structure_template",
        "rules": {
          "excluded_amino_acids": [
            "x"
          ],
          "excluded_sequence_motifs": [
            "string"
          ],
          "max_hydrophobic_fraction": 0
        }
      },
      "name": "name"
    }
  ]
}
Returns Examples
{
  "data": [
    {
      "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": {
          "type": "url",
          "url": "https://example.com"
        },
        "type": "structure_template",
        "rules": {
          "excluded_amino_acids": [
            "x"
          ],
          "excluded_sequence_motifs": [
            "string"
          ],
          "max_hydrophobic_fraction": 0
        }
      },
      "name": "name"
    }
  ]
}