## List curated protein design specifications

`client.Protein.Design.ListCuratedSpecifications(ctx, query) (*ProteinDesignListCuratedSpecificationsResponse, error)`

**get** `/compute/v1/protein/design/curated-specifications`

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

### Parameters

- `query ProteinDesignListCuratedSpecificationsParams`

  - `Type param.Field[ProteinDesignListCuratedSpecificationsParamsType]`

    Curated binder library to retrieve.

    - `const ProteinDesignListCuratedSpecificationsParamsTypeNanobody ProteinDesignListCuratedSpecificationsParamsType = "nanobody"`

    - `const ProteinDesignListCuratedSpecificationsParamsTypeAntibody ProteinDesignListCuratedSpecificationsParamsType = "antibody"`

### Returns

- `type ProteinDesignListCuratedSpecificationsResponse struct{…}`

  - `Data []ProteinDesignListCuratedSpecificationsResponseData`

    - `BinderSpecification ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUnion`

      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.

      - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpec 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, ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecChainSelectionUnion]`

          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.

          - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpec struct{…}`

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

            - `ChainType Polymer`

              - `const PolymerPolymer Polymer = "polymer"`

            - `CropResidues ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecCropResiduesUnion`

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

              - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecCropResiduesArray []int64`

              - `type All string`

                - `const AllAll All = "all"`

            - `DesignMotifs []ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifUnion`

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

              - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifReplacementMotif 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 ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifReplacementMotifDesignLengthRange`

                  Allowed sequence length range for designed regions

                  - `Max int64`

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

                  - `Min int64`

                    Minimum sequence length in residues

                - `EndIndex int64`

                  0-indexed end residue (inclusive)

                - `StartIndex int64`

                  0-indexed start residue (inclusive)

                - `Type Replacement`

                  - `const ReplacementReplacement Replacement = "replacement"`

              - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifInsertionMotif 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.

                - `DesignLengthRange ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifInsertionMotifDesignLengthRange`

                  Allowed sequence length range for designed regions

                  - `Max int64`

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

                  - `Min int64`

                    Minimum sequence length in residues

                - `Type Insertion`

                  - `const InsertionInsertion Insertion = "insertion"`

          - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplateLigandChainSpec struct{…}`

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

            - `ChainType Ligand`

              - `const LigandLigand Ligand = "ligand"`

        - `Modality ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecModality`

          - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecModalityPeptide ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecModality = "peptide"`

          - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecModalityAntibody ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecModality = "antibody"`

          - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecModalityNanobody ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecModality = "nanobody"`

          - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecModalityCustomProtein ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecModality = "custom_protein"`

        - `Structure ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecStructureUnion`

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

          - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecStructureURLSource struct{…}`

            - `Type URL`

              - `const URLURL URL = "url"`

            - `URL string`

          - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecStructureCifBase64Source struct{…}`

            - `Data string`

              Base64-encoded CIF file contents

            - `MediaType ChemicalXCif`

              Must be chemical/x-cif for CIF files

              - `const ChemicalXCifChemicalXCif ChemicalXCif = "chemical/x-cif"`

            - `Type Base64`

              - `const Base64Base64 Base64 = "base64"`

        - `Type StructureTemplate`

          - `const StructureTemplateStructureTemplate StructureTemplate = "structure_template"`

        - `Rules ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationStructureTemplateBinderSpecRules`

          Constraints applied during sequence design

          - `ExcludedAminoAcids []string`

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

          - `ExcludedSequenceMotifs []string`

            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 float64`

            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.

      - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpec struct{…}`

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

        - `Entities []ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecEntityUnion`

          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.

          - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecEntityDesignedProteinEntity struct{…}`

            Protein binder entity with designed and/or fixed segments.

            - `ChainIDs []string`

              Chain IDs to assign to this entity

            - `Type DesignedProtein`

              - `const DesignedProteinDesignedProtein DesignedProtein = "designed_protein"`

            - `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 bool`

              Whether the sequence is cyclic

            - `Modifications []ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecEntityDesignedProteinEntityModification`

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

              - `ResidueIndex int64`

                0-based index of the residue to modify

              - `Type Ccd`

                Modification format. Only CCD polymer modifications are supported.

                - `const CcdCcd Ccd = "ccd"`

              - `Value string`

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

          - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecEntityFixedProteinEntity struct{…}`

            A fixed protein entity whose sequence is not redesigned.

            - `ChainIDs []string`

              Chain IDs to assign to this entity

            - `Type Protein`

              - `const ProteinProtein Protein = "protein"`

            - `Value string`

              Amino acid sequence (one-letter codes)

            - `Cyclic bool`

              Whether the sequence is cyclic

            - `Modifications []ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecEntityFixedProteinEntityModification`

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

              - `ResidueIndex int64`

                0-based index of the residue to modify

              - `Type Ccd`

                Modification format. Only CCD polymer modifications are supported.

                - `const CcdCcd Ccd = "ccd"`

              - `Value string`

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

          - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecEntityFixedRnaEntity struct{…}`

            - `ChainIDs []string`

              Chain IDs to assign to this entity

            - `Type Rna`

              - `const RnaRna Rna = "rna"`

            - `Value string`

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

            - `Cyclic bool`

              Whether the sequence is cyclic

            - `Modifications []ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecEntityFixedRnaEntityModification`

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

              - `ResidueIndex int64`

                0-based index of the residue to modify

              - `Type Ccd`

                Modification format. Only CCD polymer modifications are supported.

                - `const CcdCcd Ccd = "ccd"`

              - `Value string`

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

          - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecEntityFixedDnaEntity struct{…}`

            - `ChainIDs []string`

              Chain IDs to assign to this entity

            - `Type Dna`

              - `const DnaDna Dna = "dna"`

            - `Value string`

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

            - `Cyclic bool`

              Whether the sequence is cyclic

            - `Modifications []ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecEntityFixedDnaEntityModification`

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

              - `ResidueIndex int64`

                0-based index of the residue to modify

              - `Type Ccd`

                Modification format. Only CCD polymer modifications are supported.

                - `const CcdCcd Ccd = "ccd"`

              - `Value string`

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

          - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecEntityFixedLigandSmilesEntity struct{…}`

            - `ChainIDs []string`

              Chain IDs to assign to this entity

            - `Type LigandSmiles`

              - `const LigandSmilesLigandSmiles LigandSmiles = "ligand_smiles"`

            - `Value string`

              SMILES string representing the ligand

          - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecEntityFixedLigandCcdEntity struct{…}`

            - `ChainIDs []string`

              Chain IDs to assign to this entity

            - `Type LigandCcd`

              - `const LigandCcdLigandCcd LigandCcd = "ligand_ccd"`

            - `Value string`

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

        - `Modality ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecModality`

          - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecModalityPeptide ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecModality = "peptide"`

          - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecModalityAntibody ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecModality = "antibody"`

          - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecModalityNanobody ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecModality = "nanobody"`

          - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecModalityCustomProtein ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecModality = "custom_protein"`

        - `Type NoTemplate`

          - `const NoTemplateNoTemplate NoTemplate = "no_template"`

        - `Bonds []ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecBond`

          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 ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecBondAtom1Union`

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

            - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecBondAtom1LigandAtom struct{…}`

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

              - `AtomName string`

                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.

              - `ChainID string`

                Chain ID containing the atom

              - `Type LigandAtom`

                - `const LigandAtomLigandAtom LigandAtom = "ligand_atom"`

            - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecBondAtom1PolymerAtom 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

              - `Type PolymerAtom`

                - `const PolymerAtomPolymerAtom PolymerAtom = "polymer_atom"`

          - `Atom2 ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecBondAtom2Union`

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

            - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecBondAtom2LigandAtom struct{…}`

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

              - `AtomName string`

                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.

              - `ChainID string`

                Chain ID containing the atom

              - `Type LigandAtom`

                - `const LigandAtomLigandAtom LigandAtom = "ligand_atom"`

            - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecBondAtom2PolymerAtom 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

              - `Type PolymerAtom`

                - `const PolymerAtomPolymerAtom PolymerAtom = "polymer_atom"`

        - `Rules ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationNoTemplateBinderSpecRules`

          Constraints applied during sequence design

          - `ExcludedAminoAcids []string`

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

          - `ExcludedSequenceMotifs []string`

            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 float64`

            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.

      - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationBoltzCuratedBinderSpec 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 ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationBoltzCuratedBinderSpecBinder`

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

          - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationBoltzCuratedBinderSpecBinderBoltzNanobody ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationBoltzCuratedBinderSpecBinder = "boltz_nanobody"`

          - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationBoltzCuratedBinderSpecBinderBoltzAntibody ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationBoltzCuratedBinderSpecBinder = "boltz_antibody"`

        - `Type BoltzCurated`

          - `const BoltzCuratedBoltzCurated BoltzCurated = "boltz_curated"`

        - `Rules ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationBoltzCuratedBinderSpecRules`

          Constraints applied during sequence design

          - `ExcludedAminoAcids []string`

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

          - `ExcludedSequenceMotifs []string`

            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 float64`

            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.

      - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpec struct{…}`

        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.

        - `BinderSpecifications []ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationUnion`

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

          - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpec 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, ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionUnion]`

              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.

              - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpec struct{…}`

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

                - `ChainType Polymer`

                  - `const PolymerPolymer Polymer = "polymer"`

                - `CropResidues ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecCropResiduesUnion`

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

                  - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecCropResiduesArray []int64`

                  - `type All string`

                    - `const AllAll All = "all"`

                - `DesignMotifs []ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifUnion`

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

                  - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifReplacementMotif 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 ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifReplacementMotifDesignLengthRange`

                      Allowed sequence length range for designed regions

                      - `Max int64`

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

                      - `Min int64`

                        Minimum sequence length in residues

                    - `EndIndex int64`

                      0-indexed end residue (inclusive)

                    - `StartIndex int64`

                      0-indexed start residue (inclusive)

                    - `Type Replacement`

                      - `const ReplacementReplacement Replacement = "replacement"`

                  - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifInsertionMotif 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.

                    - `DesignLengthRange ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplatePolymerChainSpecDesignMotifInsertionMotifDesignLengthRange`

                      Allowed sequence length range for designed regions

                      - `Max int64`

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

                      - `Min int64`

                        Minimum sequence length in residues

                    - `Type Insertion`

                      - `const InsertionInsertion Insertion = "insertion"`

              - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecChainSelectionStructureTemplateLigandChainSpec struct{…}`

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

                - `ChainType Ligand`

                  - `const LigandLigand Ligand = "ligand"`

            - `Modality ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecModality`

              - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecModalityPeptide ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecModality = "peptide"`

              - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecModalityAntibody ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecModality = "antibody"`

              - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecModalityNanobody ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecModality = "nanobody"`

              - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecModalityCustomProtein ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecModality = "custom_protein"`

            - `Structure ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecStructureUnion`

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

              - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecStructureURLSource struct{…}`

                - `Type URL`

                  - `const URLURL URL = "url"`

                - `URL string`

              - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecStructureCifBase64Source struct{…}`

                - `Data string`

                  Base64-encoded CIF file contents

                - `MediaType ChemicalXCif`

                  Must be chemical/x-cif for CIF files

                  - `const ChemicalXCifChemicalXCif ChemicalXCif = "chemical/x-cif"`

                - `Type Base64`

                  - `const Base64Base64 Base64 = "base64"`

            - `Type StructureTemplate`

              - `const StructureTemplateStructureTemplate StructureTemplate = "structure_template"`

            - `Rules ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationStructureTemplateBinderSpecRules`

              Constraints applied during sequence design

              - `ExcludedAminoAcids []string`

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

              - `ExcludedSequenceMotifs []string`

                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 float64`

                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.

          - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpec struct{…}`

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

            - `Entities []ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityUnion`

              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.

              - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityDesignedProteinEntity struct{…}`

                Protein binder entity with designed and/or fixed segments.

                - `ChainIDs []string`

                  Chain IDs to assign to this entity

                - `Type DesignedProtein`

                  - `const DesignedProteinDesignedProtein DesignedProtein = "designed_protein"`

                - `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 bool`

                  Whether the sequence is cyclic

                - `Modifications []ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityDesignedProteinEntityModification`

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

                  - `ResidueIndex int64`

                    0-based index of the residue to modify

                  - `Type Ccd`

                    Modification format. Only CCD polymer modifications are supported.

                    - `const CcdCcd Ccd = "ccd"`

                  - `Value string`

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

              - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityFixedProteinEntity struct{…}`

                A fixed protein entity whose sequence is not redesigned.

                - `ChainIDs []string`

                  Chain IDs to assign to this entity

                - `Type Protein`

                  - `const ProteinProtein Protein = "protein"`

                - `Value string`

                  Amino acid sequence (one-letter codes)

                - `Cyclic bool`

                  Whether the sequence is cyclic

                - `Modifications []ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityFixedProteinEntityModification`

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

                  - `ResidueIndex int64`

                    0-based index of the residue to modify

                  - `Type Ccd`

                    Modification format. Only CCD polymer modifications are supported.

                    - `const CcdCcd Ccd = "ccd"`

                  - `Value string`

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

              - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityFixedRnaEntity struct{…}`

                - `ChainIDs []string`

                  Chain IDs to assign to this entity

                - `Type Rna`

                  - `const RnaRna Rna = "rna"`

                - `Value string`

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

                - `Cyclic bool`

                  Whether the sequence is cyclic

                - `Modifications []ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityFixedRnaEntityModification`

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

                  - `ResidueIndex int64`

                    0-based index of the residue to modify

                  - `Type Ccd`

                    Modification format. Only CCD polymer modifications are supported.

                    - `const CcdCcd Ccd = "ccd"`

                  - `Value string`

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

              - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityFixedDnaEntity struct{…}`

                - `ChainIDs []string`

                  Chain IDs to assign to this entity

                - `Type Dna`

                  - `const DnaDna Dna = "dna"`

                - `Value string`

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

                - `Cyclic bool`

                  Whether the sequence is cyclic

                - `Modifications []ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityFixedDnaEntityModification`

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

                  - `ResidueIndex int64`

                    0-based index of the residue to modify

                  - `Type Ccd`

                    Modification format. Only CCD polymer modifications are supported.

                    - `const CcdCcd Ccd = "ccd"`

                  - `Value string`

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

              - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityFixedLigandSmilesEntity struct{…}`

                - `ChainIDs []string`

                  Chain IDs to assign to this entity

                - `Type LigandSmiles`

                  - `const LigandSmilesLigandSmiles LigandSmiles = "ligand_smiles"`

                - `Value string`

                  SMILES string representing the ligand

              - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecEntityFixedLigandCcdEntity struct{…}`

                - `ChainIDs []string`

                  Chain IDs to assign to this entity

                - `Type LigandCcd`

                  - `const LigandCcdLigandCcd LigandCcd = "ligand_ccd"`

                - `Value string`

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

            - `Modality ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecModality`

              - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecModalityPeptide ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecModality = "peptide"`

              - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecModalityAntibody ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecModality = "antibody"`

              - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecModalityNanobody ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecModality = "nanobody"`

              - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecModalityCustomProtein ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecModality = "custom_protein"`

            - `Type NoTemplate`

              - `const NoTemplateNoTemplate NoTemplate = "no_template"`

            - `Bonds []ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecBond`

              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 ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecBondAtom1Union`

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

                - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecBondAtom1LigandAtom struct{…}`

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

                  - `AtomName string`

                    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.

                  - `ChainID string`

                    Chain ID containing the atom

                  - `Type LigandAtom`

                    - `const LigandAtomLigandAtom LigandAtom = "ligand_atom"`

                - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecBondAtom1PolymerAtom 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

                  - `Type PolymerAtom`

                    - `const PolymerAtomPolymerAtom PolymerAtom = "polymer_atom"`

              - `Atom2 ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecBondAtom2Union`

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

                - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecBondAtom2LigandAtom struct{…}`

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

                  - `AtomName string`

                    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.

                  - `ChainID string`

                    Chain ID containing the atom

                  - `Type LigandAtom`

                    - `const LigandAtomLigandAtom LigandAtom = "ligand_atom"`

                - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecBondAtom2PolymerAtom 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

                  - `Type PolymerAtom`

                    - `const PolymerAtomPolymerAtom PolymerAtom = "polymer_atom"`

            - `Rules ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationNoTemplateBinderSpecRules`

              Constraints applied during sequence design

              - `ExcludedAminoAcids []string`

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

              - `ExcludedSequenceMotifs []string`

                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 float64`

                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.

          - `type ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationBoltzCuratedBinderSpec 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 ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationBoltzCuratedBinderSpecBinder`

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

              - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationBoltzCuratedBinderSpecBinderBoltzNanobody ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationBoltzCuratedBinderSpecBinder = "boltz_nanobody"`

              - `const ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationBoltzCuratedBinderSpecBinderBoltzAntibody ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationBoltzCuratedBinderSpecBinder = "boltz_antibody"`

            - `Type BoltzCurated`

              - `const BoltzCuratedBoltzCurated BoltzCurated = "boltz_curated"`

            - `Rules ProteinDesignListCuratedSpecificationsResponseDataBinderSpecificationUniformlySampledBinderSpecBinderSpecificationBoltzCuratedBinderSpecRules`

              Constraints applied during sequence design

              - `ExcludedAminoAcids []string`

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

              - `ExcludedSequenceMotifs []string`

                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 float64`

                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.

        - `Type UniformlySampledSpecifications`

          - `const UniformlySampledSpecificationsUniformlySampledSpecifications UniformlySampledSpecifications = "uniformly_sampled_specifications"`

    - `Name string`

      Human-readable name for this curated binder specification.

### Example

```go
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.ListCuratedSpecifications(context.TODO(), boltzapi.ProteinDesignListCuratedSpecificationsParams{
    Type: boltzapi.ProteinDesignListCuratedSpecificationsParamsTypeNanobody,
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", response.Data)
}
```

#### Response

```json
{
  "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"
    }
  ]
}
```
