# Sequence Redesign

## Start a protein sequence redesign run

`protein.sequence_redesign.start(SequenceRedesignStartParams**kwargs)  -> SequenceRedesignStartResponse`

**post** `/compute/v1/protein/sequence-redesign`

Create a protein sequence redesign run from selected residues in a fixed input structure

### Parameters

- `entities: Iterable[BinderProteinSequenceRedesignRunInputEntity]`

  Every chain in the input CIF, assigned exactly once as target or binder.

  - `class BinderProteinSequenceRedesignRunInputEntityBinderSequenceRedesignTargetEntity: …`

    A fixed target chain from the input CIF.

    - `chain_id: str`

    - `role: Literal["target"]`

      - `"target"`

    - `type: Literal["from_template"]`

      - `"from_template"`

  - `class BinderProteinSequenceRedesignRunInputEntityBinderSequenceRedesignBinderEntity: …`

    - `chain_id: str`

    - `role: Literal["binder"]`

      - `"binder"`

    - `type: Literal["from_template"]`

      - `"from_template"`

    - `design_motifs: Optional[Iterable[BinderProteinSequenceRedesignRunInputEntityBinderSequenceRedesignBinderEntityDesignMotif]]`

      Residues to redesign. Omit this field to keep the binder chain fixed.

      - `filters: Iterable[BinderProteinSequenceRedesignRunInputEntityBinderSequenceRedesignBinderEntityDesignMotifFilter]`

        Filters applied to this motif in addition to global_design_filters.

        - `class BinderProteinSequenceRedesignRunInputEntityBinderSequenceRedesignBinderEntityDesignMotifFilterExcludedAminoAcidsDesignFilter: …`

          - `amino_acids: Sequence[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class BinderProteinSequenceRedesignRunInputEntityBinderSequenceRedesignBinderEntityDesignMotifFilterMaxHydrophobicFractionDesignFilter: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class BinderProteinSequenceRedesignRunInputEntityBinderSequenceRedesignBinderEntityDesignMotifFilterExcludedSequenceMotifsDesignFilter: …`

          - `motifs: Sequence[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `residues: Iterable[int]`

        0-indexed residues to redesign on this chain.

      - `type: Literal["residues"]`

        - `"residues"`

- `num_proteins: int`

  Number of unique filter-passing redesigned proteins to generate.

- `structure: BinderProteinSequenceRedesignRunInputStructure`

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

  - `class BinderProteinSequenceRedesignRunInputStructureURLSource: …`

    - `type: Literal["url"]`

      - `"url"`

    - `url: str`

  - `class BinderProteinSequenceRedesignRunInputStructureCifBase64Source: …`

    - `data: str`

      Base64-encoded CIF file contents

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

      Must be chemical/x-cif for CIF files

      - `"chemical/x-cif"`

    - `type: Literal["base64"]`

      - `"base64"`

- `type: Literal["binder"]`

  - `"binder"`

- `global_design_filters: Optional[Iterable[BinderProteinSequenceRedesignRunInputGlobalDesignFilter]]`

  Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

  - `class BinderProteinSequenceRedesignRunInputGlobalDesignFilterExcludedAminoAcidsDesignFilter: …`

    - `amino_acids: Sequence[str]`

      Single-letter amino-acid codes that must not occur in the filtered designed region.

    - `type: Literal["excluded_amino_acids"]`

      - `"excluded_amino_acids"`

  - `class BinderProteinSequenceRedesignRunInputGlobalDesignFilterMaxHydrophobicFractionDesignFilter: …`

    - `max_fraction: float`

    - `type: Literal["max_hydrophobic_fraction"]`

      - `"max_hydrophobic_fraction"`

  - `class BinderProteinSequenceRedesignRunInputGlobalDesignFilterExcludedSequenceMotifsDesignFilter: …`

    - `motifs: Sequence[str]`

      Sequence motifs that must not occur. X matches any single residue.

    - `type: Literal["excluded_sequence_motifs"]`

      - `"excluded_sequence_motifs"`

- `idempotency_key: Optional[str]`

- `workspace_id: Optional[str]`

  Workspace to run this redesign in.

### Returns

- `class SequenceRedesignStartResponse: …`

  A fixed-structure protein sequence redesign run.

  - `id: str`

    Unique ProteinSequenceRedesignRun identifier

  - `completed_at: Optional[datetime]`

  - `created_at: datetime`

  - `data_deleted_at: Optional[datetime]`

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

  - `engine: Literal["boltz-protein-redesign"]`

    Deprecated. Use pipeline instead.

    - `"boltz-protein-redesign"`

  - `engine_version: Literal["v2026-07-14"]`

    Deprecated. Use pipeline_version instead.

    - `"v2026-07-14"`

  - `error: Optional[Error]`

    - `code: str`

      Machine-readable error code

    - `message: str`

      Human-readable error message

    - `details: Optional[object]`

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

  - `input: Optional[Input]`

    Pipeline input (null if data deleted)

    - `class InputBinderProteinSequenceRedesignRunInputResponse: …`

      - `entities: List[InputBinderProteinSequenceRedesignRunInputResponseEntity]`

        Every chain in the input CIF, assigned exactly once as target or binder.

        - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignTargetEntityResponse: …`

          A fixed target chain from the input CIF.

          - `chain_id: str`

          - `role: Literal["target"]`

            - `"target"`

          - `type: Literal["from_template"]`

            - `"from_template"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponse: …`

          - `chain_id: str`

          - `role: Literal["binder"]`

            - `"binder"`

          - `type: Literal["from_template"]`

            - `"from_template"`

          - `design_motifs: Optional[List[InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotif]]`

            Residues to redesign. Omit this field to keep the binder chain fixed.

            - `filters: List[InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilter]`

              Filters applied to this motif in addition to global_design_filters.

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterExcludedAminoAcidsDesignFilterResponse: …`

                - `amino_acids: List[str]`

                  Single-letter amino-acid codes that must not occur in the filtered designed region.

                - `type: Literal["excluded_amino_acids"]`

                  - `"excluded_amino_acids"`

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterMaxHydrophobicFractionDesignFilterResponse: …`

                - `max_fraction: float`

                - `type: Literal["max_hydrophobic_fraction"]`

                  - `"max_hydrophobic_fraction"`

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterExcludedSequenceMotifsDesignFilterResponse: …`

                - `motifs: List[str]`

                  Sequence motifs that must not occur. X matches any single residue.

                - `type: Literal["excluded_sequence_motifs"]`

                  - `"excluded_sequence_motifs"`

            - `residues: List[int]`

              0-indexed residues to redesign on this chain.

            - `type: Literal["residues"]`

              - `"residues"`

      - `num_proteins: int`

        Number of unique filter-passing redesigned proteins to generate.

      - `structure: InputBinderProteinSequenceRedesignRunInputResponseStructure`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `type: Literal["binder"]`

        - `"binder"`

      - `global_design_filters: Optional[List[InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilter]]`

        Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedAminoAcidsDesignFilterResponse: …`

          - `amino_acids: List[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterMaxHydrophobicFractionDesignFilterResponse: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedSequenceMotifsDesignFilterResponse: …`

          - `motifs: List[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `idempotency_key: Optional[str]`

      - `workspace_id: Optional[str]`

        Workspace to run this redesign in.

    - `class InputGenericProteinSequenceRedesignRunInputResponse: …`

      - `entities: List[InputGenericProteinSequenceRedesignRunInputResponseEntity]`

        Every chain in the input CIF, assigned exactly once.

        - `chain_id: str`

        - `type: Literal["from_template"]`

          - `"from_template"`

        - `design_motifs: Optional[List[InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotif]]`

          Residues to redesign. Omit this field to keep the chain fixed.

          - `filters: List[InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilter]`

            Filters applied to this motif in addition to global_design_filters.

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterExcludedAminoAcidsDesignFilterResponse: …`

              - `amino_acids: List[str]`

                Single-letter amino-acid codes that must not occur in the filtered designed region.

              - `type: Literal["excluded_amino_acids"]`

                - `"excluded_amino_acids"`

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterMaxHydrophobicFractionDesignFilterResponse: …`

              - `max_fraction: float`

              - `type: Literal["max_hydrophobic_fraction"]`

                - `"max_hydrophobic_fraction"`

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterExcludedSequenceMotifsDesignFilterResponse: …`

              - `motifs: List[str]`

                Sequence motifs that must not occur. X matches any single residue.

              - `type: Literal["excluded_sequence_motifs"]`

                - `"excluded_sequence_motifs"`

          - `residues: List[int]`

            0-indexed residues to redesign on this chain.

          - `type: Literal["residues"]`

            - `"residues"`

      - `num_proteins: int`

        Number of unique filter-passing redesigned proteins to generate.

      - `structure: InputGenericProteinSequenceRedesignRunInputResponseStructure`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `type: Literal["generic"]`

        - `"generic"`

      - `global_design_filters: Optional[List[InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilter]]`

        Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedAminoAcidsDesignFilterResponse: …`

          - `amino_acids: List[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterMaxHydrophobicFractionDesignFilterResponse: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedSequenceMotifsDesignFilterResponse: …`

          - `motifs: List[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `idempotency_key: Optional[str]`

      - `workspace_id: Optional[str]`

        Workspace to run this redesign in.

  - `livemode: bool`

    Whether this resource was created with a live API key.

  - `pipeline: Literal["boltz-protein-redesign"]`

    - `"boltz-protein-redesign"`

  - `pipeline_version: Literal["v2026-07-14"]`

    - `"v2026-07-14"`

  - `progress: Optional[Progress]`

    - `num_proteins_generated: int`

      Number of protein binders generated so far

    - `total_proteins_to_generate: int`

      Total number of protein binders requested

    - `latest_result_id: Optional[str]`

      ID of the most recently generated result

  - `started_at: Optional[datetime]`

  - `status: Literal["pending", "running", "succeeded", 2 more]`

    - `"pending"`

    - `"running"`

    - `"succeeded"`

    - `"failed"`

    - `"stopped"`

  - `stopped_at: Optional[datetime]`

  - `workspace_id: str`

    Workspace ID

  - `idempotency_key: Optional[str]`

    Client-provided idempotency key

### Example

```python
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.sequence_redesign.start(
    entities=[{
        "chain_id": "x",
        "role": "target",
        "type": "from_template",
    }, {
        "chain_id": "x",
        "role": "target",
        "type": "from_template",
    }],
    num_proteins=1,
    structure={
        "type": "url",
        "url": "https://example.com",
    },
    type="binder",
)
print(response.id)
```

#### Response

```json
{
  "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": "boltz-protein-redesign",
  "engine_version": "v2026-07-14",
  "error": {
    "code": "code",
    "message": "message",
    "details": {}
  },
  "input": {
    "entities": [
      {
        "chain_id": "x",
        "role": "target",
        "type": "from_template"
      },
      {
        "chain_id": "x",
        "role": "target",
        "type": "from_template"
      }
    ],
    "num_proteins": 1,
    "structure": {
      "url": "https://example.com",
      "url_expires_at": "2019-12-27T18:11:19.117Z"
    },
    "type": "binder",
    "global_design_filters": [
      {
        "amino_acids": [
          "x"
        ],
        "type": "excluded_amino_acids"
      }
    ],
    "idempotency_key": "idempotency_key",
    "workspace_id": "workspace_id"
  },
  "livemode": true,
  "pipeline": "boltz-protein-redesign",
  "pipeline_version": "v2026-07-14",
  "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"
}
```

## List protein sequence redesign runs

`protein.sequence_redesign.list(SequenceRedesignListParams**kwargs)  -> SyncCursorPage[SequenceRedesignListResponse]`

**get** `/compute/v1/protein/sequence-redesign`

List protein sequence redesign runs, optionally filtered by workspace

### Parameters

- `after_id: Optional[str]`

  Return results after this ID

- `before_id: Optional[str]`

  Return results before this ID

- `limit: Optional[int]`

  Max items to return. Defaults to 100.

- `workspace_id: Optional[str]`

  Filter by workspace ID. Only used with admin API keys. If not provided, defaults to the workspace associated with the API key, or the default workspace for admin keys.

### Returns

- `class SequenceRedesignListResponse: …`

  Summary of a protein sequence redesign run.

  - `id: str`

    Unique ProteinSequenceRedesignRunSummary identifier

  - `completed_at: Optional[datetime]`

  - `created_at: datetime`

  - `data_deleted_at: Optional[datetime]`

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

  - `engine: Literal["boltz-protein-redesign"]`

    Deprecated. Use pipeline instead.

    - `"boltz-protein-redesign"`

  - `engine_version: Literal["v2026-07-14"]`

    Deprecated. Use pipeline_version instead.

    - `"v2026-07-14"`

  - `error: Optional[Error]`

    - `code: str`

      Machine-readable error code

    - `message: str`

      Human-readable error message

    - `details: Optional[object]`

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

  - `livemode: bool`

    Whether this resource was created with a live API key.

  - `pipeline: Literal["boltz-protein-redesign"]`

    - `"boltz-protein-redesign"`

  - `pipeline_version: Literal["v2026-07-14"]`

    - `"v2026-07-14"`

  - `progress: Optional[Progress]`

    - `num_proteins_generated: int`

      Number of protein binders generated so far

    - `total_proteins_to_generate: int`

      Total number of protein binders requested

    - `latest_result_id: Optional[str]`

      ID of the most recently generated result

  - `started_at: Optional[datetime]`

  - `status: Literal["pending", "running", "succeeded", 2 more]`

    - `"pending"`

    - `"running"`

    - `"succeeded"`

    - `"failed"`

    - `"stopped"`

  - `stopped_at: Optional[datetime]`

  - `workspace_id: str`

    Workspace ID

  - `idempotency_key: Optional[str]`

    Client-provided idempotency key

### Example

```python
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
)
page = client.protein.sequence_redesign.list()
page = page.data[0]
print(page.id)
```

#### Response

```json
{
  "data": [
    {
      "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": "boltz-protein-redesign",
      "engine_version": "v2026-07-14",
      "error": {
        "code": "code",
        "message": "message",
        "details": {}
      },
      "livemode": true,
      "pipeline": "boltz-protein-redesign",
      "pipeline_version": "v2026-07-14",
      "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"
    }
  ],
  "first_id": "first_id",
  "has_more": true,
  "last_id": "last_id"
}
```

## Get protein sequence redesign run status

`protein.sequence_redesign.retrieve(strid, SequenceRedesignRetrieveParams**kwargs)  -> SequenceRedesignRetrieveResponse`

**get** `/compute/v1/protein/sequence-redesign/{id}`

Retrieve a sequence redesign run by ID, including progress and status

### Parameters

- `id: str`

- `workspace_id: Optional[str]`

  Workspace ID. Only used with admin API keys. Ignored (or validated) for workspace-scoped keys.

### Returns

- `class SequenceRedesignRetrieveResponse: …`

  A fixed-structure protein sequence redesign run.

  - `id: str`

    Unique ProteinSequenceRedesignRun identifier

  - `completed_at: Optional[datetime]`

  - `created_at: datetime`

  - `data_deleted_at: Optional[datetime]`

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

  - `engine: Literal["boltz-protein-redesign"]`

    Deprecated. Use pipeline instead.

    - `"boltz-protein-redesign"`

  - `engine_version: Literal["v2026-07-14"]`

    Deprecated. Use pipeline_version instead.

    - `"v2026-07-14"`

  - `error: Optional[Error]`

    - `code: str`

      Machine-readable error code

    - `message: str`

      Human-readable error message

    - `details: Optional[object]`

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

  - `input: Optional[Input]`

    Pipeline input (null if data deleted)

    - `class InputBinderProteinSequenceRedesignRunInputResponse: …`

      - `entities: List[InputBinderProteinSequenceRedesignRunInputResponseEntity]`

        Every chain in the input CIF, assigned exactly once as target or binder.

        - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignTargetEntityResponse: …`

          A fixed target chain from the input CIF.

          - `chain_id: str`

          - `role: Literal["target"]`

            - `"target"`

          - `type: Literal["from_template"]`

            - `"from_template"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponse: …`

          - `chain_id: str`

          - `role: Literal["binder"]`

            - `"binder"`

          - `type: Literal["from_template"]`

            - `"from_template"`

          - `design_motifs: Optional[List[InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotif]]`

            Residues to redesign. Omit this field to keep the binder chain fixed.

            - `filters: List[InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilter]`

              Filters applied to this motif in addition to global_design_filters.

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterExcludedAminoAcidsDesignFilterResponse: …`

                - `amino_acids: List[str]`

                  Single-letter amino-acid codes that must not occur in the filtered designed region.

                - `type: Literal["excluded_amino_acids"]`

                  - `"excluded_amino_acids"`

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterMaxHydrophobicFractionDesignFilterResponse: …`

                - `max_fraction: float`

                - `type: Literal["max_hydrophobic_fraction"]`

                  - `"max_hydrophobic_fraction"`

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterExcludedSequenceMotifsDesignFilterResponse: …`

                - `motifs: List[str]`

                  Sequence motifs that must not occur. X matches any single residue.

                - `type: Literal["excluded_sequence_motifs"]`

                  - `"excluded_sequence_motifs"`

            - `residues: List[int]`

              0-indexed residues to redesign on this chain.

            - `type: Literal["residues"]`

              - `"residues"`

      - `num_proteins: int`

        Number of unique filter-passing redesigned proteins to generate.

      - `structure: InputBinderProteinSequenceRedesignRunInputResponseStructure`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `type: Literal["binder"]`

        - `"binder"`

      - `global_design_filters: Optional[List[InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilter]]`

        Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedAminoAcidsDesignFilterResponse: …`

          - `amino_acids: List[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterMaxHydrophobicFractionDesignFilterResponse: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedSequenceMotifsDesignFilterResponse: …`

          - `motifs: List[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `idempotency_key: Optional[str]`

      - `workspace_id: Optional[str]`

        Workspace to run this redesign in.

    - `class InputGenericProteinSequenceRedesignRunInputResponse: …`

      - `entities: List[InputGenericProteinSequenceRedesignRunInputResponseEntity]`

        Every chain in the input CIF, assigned exactly once.

        - `chain_id: str`

        - `type: Literal["from_template"]`

          - `"from_template"`

        - `design_motifs: Optional[List[InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotif]]`

          Residues to redesign. Omit this field to keep the chain fixed.

          - `filters: List[InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilter]`

            Filters applied to this motif in addition to global_design_filters.

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterExcludedAminoAcidsDesignFilterResponse: …`

              - `amino_acids: List[str]`

                Single-letter amino-acid codes that must not occur in the filtered designed region.

              - `type: Literal["excluded_amino_acids"]`

                - `"excluded_amino_acids"`

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterMaxHydrophobicFractionDesignFilterResponse: …`

              - `max_fraction: float`

              - `type: Literal["max_hydrophobic_fraction"]`

                - `"max_hydrophobic_fraction"`

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterExcludedSequenceMotifsDesignFilterResponse: …`

              - `motifs: List[str]`

                Sequence motifs that must not occur. X matches any single residue.

              - `type: Literal["excluded_sequence_motifs"]`

                - `"excluded_sequence_motifs"`

          - `residues: List[int]`

            0-indexed residues to redesign on this chain.

          - `type: Literal["residues"]`

            - `"residues"`

      - `num_proteins: int`

        Number of unique filter-passing redesigned proteins to generate.

      - `structure: InputGenericProteinSequenceRedesignRunInputResponseStructure`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `type: Literal["generic"]`

        - `"generic"`

      - `global_design_filters: Optional[List[InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilter]]`

        Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedAminoAcidsDesignFilterResponse: …`

          - `amino_acids: List[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterMaxHydrophobicFractionDesignFilterResponse: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedSequenceMotifsDesignFilterResponse: …`

          - `motifs: List[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `idempotency_key: Optional[str]`

      - `workspace_id: Optional[str]`

        Workspace to run this redesign in.

  - `livemode: bool`

    Whether this resource was created with a live API key.

  - `pipeline: Literal["boltz-protein-redesign"]`

    - `"boltz-protein-redesign"`

  - `pipeline_version: Literal["v2026-07-14"]`

    - `"v2026-07-14"`

  - `progress: Optional[Progress]`

    - `num_proteins_generated: int`

      Number of protein binders generated so far

    - `total_proteins_to_generate: int`

      Total number of protein binders requested

    - `latest_result_id: Optional[str]`

      ID of the most recently generated result

  - `started_at: Optional[datetime]`

  - `status: Literal["pending", "running", "succeeded", 2 more]`

    - `"pending"`

    - `"running"`

    - `"succeeded"`

    - `"failed"`

    - `"stopped"`

  - `stopped_at: Optional[datetime]`

  - `workspace_id: str`

    Workspace ID

  - `idempotency_key: Optional[str]`

    Client-provided idempotency key

### Example

```python
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
)
sequence_redesign = client.protein.sequence_redesign.retrieve(
    id="id",
)
print(sequence_redesign.id)
```

#### Response

```json
{
  "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": "boltz-protein-redesign",
  "engine_version": "v2026-07-14",
  "error": {
    "code": "code",
    "message": "message",
    "details": {}
  },
  "input": {
    "entities": [
      {
        "chain_id": "x",
        "role": "target",
        "type": "from_template"
      },
      {
        "chain_id": "x",
        "role": "target",
        "type": "from_template"
      }
    ],
    "num_proteins": 1,
    "structure": {
      "url": "https://example.com",
      "url_expires_at": "2019-12-27T18:11:19.117Z"
    },
    "type": "binder",
    "global_design_filters": [
      {
        "amino_acids": [
          "x"
        ],
        "type": "excluded_amino_acids"
      }
    ],
    "idempotency_key": "idempotency_key",
    "workspace_id": "workspace_id"
  },
  "livemode": true,
  "pipeline": "boltz-protein-redesign",
  "pipeline_version": "v2026-07-14",
  "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"
}
```

## Get redesigned protein sequences

`protein.sequence_redesign.list_results(strid, SequenceRedesignListResultsParams**kwargs)  -> SyncCursorPage[SequenceRedesignListResultsResponse]`

**get** `/compute/v1/protein/sequence-redesign/{id}/results`

Retrieve paginated results from a protein sequence redesign run

### Parameters

- `id: str`

- `after_id: Optional[str]`

  Return results after this ID

- `before_id: Optional[str]`

  Return results before this ID

- `ids: Optional[str]`

  Comma-separated list of result IDs to filter by (max 200). Only results whose ID matches one of these is returned; missing IDs are silently skipped. Composes with `limit`, `after_id`, and `before_id` — the filter is applied before pagination.

- `limit: Optional[int]`

  Max results to return. Defaults to 100.

- `workspace_id: Optional[str]`

  Workspace ID. Only used with admin API keys. Ignored (or validated) for workspace-scoped keys.

### Returns

- `SequenceRedesignListResultsResponse`

  - `class BinderProteinDesignResult: …`

    - `id: str`

      Unique result ID.

    - `artifacts: BinderProteinDesignResultArtifacts`

      - `archive: BinderProteinDesignResultArtifactsArchive`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `structure: Optional[BinderProteinDesignResultArtifactsStructure]`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

    - `created_at: datetime`

    - `entities: List[BinderProteinDesignResultEntity]`

      Entities in the designed complex, including designed and fixed input entities.

      - `class BinderProteinDesignResultEntityProteinEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this entity

        - `type: Literal["protein"]`

          - `"protein"`

        - `value: str`

          Amino acid sequence (one-letter codes)

        - `cyclic: Optional[bool]`

          Whether the sequence is cyclic

        - `modifications: Optional[List[BinderProteinDesignResultEntityProteinEntityModification]]`

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

          - `residue_index: int`

            0-based index of the residue to modify

          - `type: Literal["ccd"]`

            Modification format. Only CCD polymer modifications are supported.

            - `"ccd"`

          - `value: str`

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

      - `class BinderProteinDesignResultEntityRnaEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this entity

        - `type: Literal["rna"]`

          - `"rna"`

        - `value: str`

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

        - `cyclic: Optional[bool]`

          Whether the sequence is cyclic

        - `modifications: Optional[List[BinderProteinDesignResultEntityRnaEntityModification]]`

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

          - `residue_index: int`

            0-based index of the residue to modify

          - `type: Literal["ccd"]`

            Modification format. Only CCD polymer modifications are supported.

            - `"ccd"`

          - `value: str`

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

      - `class BinderProteinDesignResultEntityDnaEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this entity

        - `type: Literal["dna"]`

          - `"dna"`

        - `value: str`

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

        - `cyclic: Optional[bool]`

          Whether the sequence is cyclic

        - `modifications: Optional[List[BinderProteinDesignResultEntityDnaEntityModification]]`

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

          - `residue_index: int`

            0-based index of the residue to modify

          - `type: Literal["ccd"]`

            Modification format. Only CCD polymer modifications are supported.

            - `"ccd"`

          - `value: str`

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

      - `class BinderProteinDesignResultEntityLigandCcdEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this ligand

        - `type: Literal["ligand_ccd"]`

          - `"ligand_ccd"`

        - `value: str`

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

      - `class BinderProteinDesignResultEntityLigandSmilesEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this ligand

        - `type: Literal["ligand_smiles"]`

          - `"ligand_smiles"`

        - `value: str`

          SMILES string representing the ligand

    - `metrics: BinderProteinDesignResultMetrics`

      Structural and binding quality metrics for a designed protein binder

      - `binding_confidence: float`

        Confidence that the designed binder binds the target (0-1). Primary metric for hit discovery.

      - `helix_fraction: float`

        Fraction of the designed sequence forming alpha helices (0-1).

      - `iptm: float`

        Interface predicted TM score (0-1). Confidence in the protein-protein interface.

      - `loop_fraction: float`

        Fraction of the designed sequence in coil/loop regions (0-1).

      - `min_interaction_pae: float`

        Minimum predicted aligned error at the interface (Angstroms). Lower values indicate higher confidence.

      - `sheet_fraction: float`

        Fraction of the designed sequence forming beta sheets (0-1).

      - `structure_confidence: float`

        Confidence in the predicted 3D structure (0-1).

    - `type: Literal["binder"]`

      - `"binder"`

    - `warnings: Optional[List[BinderProteinDesignResultWarning]]`

      Warnings about potential quality issues with this result.

      - `code: str`

        Machine-readable warning code (e.g. "low_confidence", "unusual_geometry")

      - `message: str`

        Human-readable description of the warning

  - `class GenericProteinDesignResult: …`

    - `id: str`

      Unique result ID.

    - `artifacts: GenericProteinDesignResultArtifacts`

      - `archive: GenericProteinDesignResultArtifactsArchive`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `structure: Optional[GenericProteinDesignResultArtifactsStructure]`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

    - `created_at: datetime`

    - `entities: List[GenericProteinDesignResultEntity]`

      Entities in the designed complex, including designed and fixed input entities.

      - `class GenericProteinDesignResultEntityProteinEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this entity

        - `type: Literal["protein"]`

          - `"protein"`

        - `value: str`

          Amino acid sequence (one-letter codes)

        - `cyclic: Optional[bool]`

          Whether the sequence is cyclic

        - `modifications: Optional[List[GenericProteinDesignResultEntityProteinEntityModification]]`

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

          - `residue_index: int`

            0-based index of the residue to modify

          - `type: Literal["ccd"]`

            Modification format. Only CCD polymer modifications are supported.

            - `"ccd"`

          - `value: str`

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

      - `class GenericProteinDesignResultEntityRnaEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this entity

        - `type: Literal["rna"]`

          - `"rna"`

        - `value: str`

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

        - `cyclic: Optional[bool]`

          Whether the sequence is cyclic

        - `modifications: Optional[List[GenericProteinDesignResultEntityRnaEntityModification]]`

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

          - `residue_index: int`

            0-based index of the residue to modify

          - `type: Literal["ccd"]`

            Modification format. Only CCD polymer modifications are supported.

            - `"ccd"`

          - `value: str`

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

      - `class GenericProteinDesignResultEntityDnaEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this entity

        - `type: Literal["dna"]`

          - `"dna"`

        - `value: str`

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

        - `cyclic: Optional[bool]`

          Whether the sequence is cyclic

        - `modifications: Optional[List[GenericProteinDesignResultEntityDnaEntityModification]]`

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

          - `residue_index: int`

            0-based index of the residue to modify

          - `type: Literal["ccd"]`

            Modification format. Only CCD polymer modifications are supported.

            - `"ccd"`

          - `value: str`

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

      - `class GenericProteinDesignResultEntityLigandCcdEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this ligand

        - `type: Literal["ligand_ccd"]`

          - `"ligand_ccd"`

        - `value: str`

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

      - `class GenericProteinDesignResultEntityLigandSmilesEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this ligand

        - `type: Literal["ligand_smiles"]`

          - `"ligand_smiles"`

        - `value: str`

          SMILES string representing the ligand

    - `metrics: GenericProteinDesignResultMetrics`

      Structure and design-quality metrics for a generic protein design.

      - `helix_fraction: float`

        Fraction of the designed sequence forming alpha helices (0-1).

      - `loop_fraction: float`

        Fraction of the designed sequence in coil/loop regions (0-1).

      - `sheet_fraction: float`

        Fraction of the designed sequence forming beta sheets (0-1).

      - `structure_confidence: float`

        Confidence in the predicted 3D structure (0-1).

    - `type: Literal["generic"]`

      - `"generic"`

    - `warnings: Optional[List[GenericProteinDesignResultWarning]]`

      Warnings about potential quality issues with this result.

      - `code: str`

        Machine-readable warning code (e.g. "low_confidence", "unusual_geometry")

      - `message: str`

        Human-readable description of the warning

### Example

```python
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
)
page = client.protein.sequence_redesign.list_results(
    id="id",
)
page = page.data[0]
print(page)
```

#### Response

```json
{
  "data": [
    {
      "id": "id",
      "artifacts": {
        "archive": {
          "url": "https://example.com",
          "url_expires_at": "2019-12-27T18:11:19.117Z"
        },
        "structure": {
          "url": "https://example.com",
          "url_expires_at": "2019-12-27T18:11:19.117Z"
        }
      },
      "created_at": "2019-12-27T18:11:19.117Z",
      "entities": [
        {
          "chain_ids": [
            "string"
          ],
          "type": "protein",
          "value": "value",
          "cyclic": true,
          "modifications": [
            {
              "residue_index": 0,
              "type": "ccd",
              "value": "value"
            }
          ]
        }
      ],
      "metrics": {
        "binding_confidence": 0,
        "helix_fraction": 0,
        "iptm": 0,
        "loop_fraction": 0,
        "min_interaction_pae": 0,
        "sheet_fraction": 0,
        "structure_confidence": 0
      },
      "type": "binder",
      "warnings": [
        {
          "code": "code",
          "message": "message"
        }
      ]
    }
  ],
  "first_id": "first_id",
  "has_more": true,
  "last_id": "last_id"
}
```

## Stop a running protein sequence redesign run

`protein.sequence_redesign.stop(strid)  -> SequenceRedesignStopResponse`

**post** `/compute/v1/protein/sequence-redesign/{id}/stop`

Stop an in-progress protein sequence redesign run early

### Parameters

- `id: str`

### Returns

- `class SequenceRedesignStopResponse: …`

  A fixed-structure protein sequence redesign run.

  - `id: str`

    Unique ProteinSequenceRedesignRun identifier

  - `completed_at: Optional[datetime]`

  - `created_at: datetime`

  - `data_deleted_at: Optional[datetime]`

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

  - `engine: Literal["boltz-protein-redesign"]`

    Deprecated. Use pipeline instead.

    - `"boltz-protein-redesign"`

  - `engine_version: Literal["v2026-07-14"]`

    Deprecated. Use pipeline_version instead.

    - `"v2026-07-14"`

  - `error: Optional[Error]`

    - `code: str`

      Machine-readable error code

    - `message: str`

      Human-readable error message

    - `details: Optional[object]`

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

  - `input: Optional[Input]`

    Pipeline input (null if data deleted)

    - `class InputBinderProteinSequenceRedesignRunInputResponse: …`

      - `entities: List[InputBinderProteinSequenceRedesignRunInputResponseEntity]`

        Every chain in the input CIF, assigned exactly once as target or binder.

        - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignTargetEntityResponse: …`

          A fixed target chain from the input CIF.

          - `chain_id: str`

          - `role: Literal["target"]`

            - `"target"`

          - `type: Literal["from_template"]`

            - `"from_template"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponse: …`

          - `chain_id: str`

          - `role: Literal["binder"]`

            - `"binder"`

          - `type: Literal["from_template"]`

            - `"from_template"`

          - `design_motifs: Optional[List[InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotif]]`

            Residues to redesign. Omit this field to keep the binder chain fixed.

            - `filters: List[InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilter]`

              Filters applied to this motif in addition to global_design_filters.

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterExcludedAminoAcidsDesignFilterResponse: …`

                - `amino_acids: List[str]`

                  Single-letter amino-acid codes that must not occur in the filtered designed region.

                - `type: Literal["excluded_amino_acids"]`

                  - `"excluded_amino_acids"`

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterMaxHydrophobicFractionDesignFilterResponse: …`

                - `max_fraction: float`

                - `type: Literal["max_hydrophobic_fraction"]`

                  - `"max_hydrophobic_fraction"`

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterExcludedSequenceMotifsDesignFilterResponse: …`

                - `motifs: List[str]`

                  Sequence motifs that must not occur. X matches any single residue.

                - `type: Literal["excluded_sequence_motifs"]`

                  - `"excluded_sequence_motifs"`

            - `residues: List[int]`

              0-indexed residues to redesign on this chain.

            - `type: Literal["residues"]`

              - `"residues"`

      - `num_proteins: int`

        Number of unique filter-passing redesigned proteins to generate.

      - `structure: InputBinderProteinSequenceRedesignRunInputResponseStructure`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `type: Literal["binder"]`

        - `"binder"`

      - `global_design_filters: Optional[List[InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilter]]`

        Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedAminoAcidsDesignFilterResponse: …`

          - `amino_acids: List[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterMaxHydrophobicFractionDesignFilterResponse: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedSequenceMotifsDesignFilterResponse: …`

          - `motifs: List[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `idempotency_key: Optional[str]`

      - `workspace_id: Optional[str]`

        Workspace to run this redesign in.

    - `class InputGenericProteinSequenceRedesignRunInputResponse: …`

      - `entities: List[InputGenericProteinSequenceRedesignRunInputResponseEntity]`

        Every chain in the input CIF, assigned exactly once.

        - `chain_id: str`

        - `type: Literal["from_template"]`

          - `"from_template"`

        - `design_motifs: Optional[List[InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotif]]`

          Residues to redesign. Omit this field to keep the chain fixed.

          - `filters: List[InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilter]`

            Filters applied to this motif in addition to global_design_filters.

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterExcludedAminoAcidsDesignFilterResponse: …`

              - `amino_acids: List[str]`

                Single-letter amino-acid codes that must not occur in the filtered designed region.

              - `type: Literal["excluded_amino_acids"]`

                - `"excluded_amino_acids"`

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterMaxHydrophobicFractionDesignFilterResponse: …`

              - `max_fraction: float`

              - `type: Literal["max_hydrophobic_fraction"]`

                - `"max_hydrophobic_fraction"`

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterExcludedSequenceMotifsDesignFilterResponse: …`

              - `motifs: List[str]`

                Sequence motifs that must not occur. X matches any single residue.

              - `type: Literal["excluded_sequence_motifs"]`

                - `"excluded_sequence_motifs"`

          - `residues: List[int]`

            0-indexed residues to redesign on this chain.

          - `type: Literal["residues"]`

            - `"residues"`

      - `num_proteins: int`

        Number of unique filter-passing redesigned proteins to generate.

      - `structure: InputGenericProteinSequenceRedesignRunInputResponseStructure`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `type: Literal["generic"]`

        - `"generic"`

      - `global_design_filters: Optional[List[InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilter]]`

        Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedAminoAcidsDesignFilterResponse: …`

          - `amino_acids: List[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterMaxHydrophobicFractionDesignFilterResponse: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedSequenceMotifsDesignFilterResponse: …`

          - `motifs: List[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `idempotency_key: Optional[str]`

      - `workspace_id: Optional[str]`

        Workspace to run this redesign in.

  - `livemode: bool`

    Whether this resource was created with a live API key.

  - `pipeline: Literal["boltz-protein-redesign"]`

    - `"boltz-protein-redesign"`

  - `pipeline_version: Literal["v2026-07-14"]`

    - `"v2026-07-14"`

  - `progress: Optional[Progress]`

    - `num_proteins_generated: int`

      Number of protein binders generated so far

    - `total_proteins_to_generate: int`

      Total number of protein binders requested

    - `latest_result_id: Optional[str]`

      ID of the most recently generated result

  - `started_at: Optional[datetime]`

  - `status: Literal["pending", "running", "succeeded", 2 more]`

    - `"pending"`

    - `"running"`

    - `"succeeded"`

    - `"failed"`

    - `"stopped"`

  - `stopped_at: Optional[datetime]`

  - `workspace_id: str`

    Workspace ID

  - `idempotency_key: Optional[str]`

    Client-provided idempotency key

### Example

```python
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.sequence_redesign.stop(
    "id",
)
print(response.id)
```

#### Response

```json
{
  "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": "boltz-protein-redesign",
  "engine_version": "v2026-07-14",
  "error": {
    "code": "code",
    "message": "message",
    "details": {}
  },
  "input": {
    "entities": [
      {
        "chain_id": "x",
        "role": "target",
        "type": "from_template"
      },
      {
        "chain_id": "x",
        "role": "target",
        "type": "from_template"
      }
    ],
    "num_proteins": 1,
    "structure": {
      "url": "https://example.com",
      "url_expires_at": "2019-12-27T18:11:19.117Z"
    },
    "type": "binder",
    "global_design_filters": [
      {
        "amino_acids": [
          "x"
        ],
        "type": "excluded_amino_acids"
      }
    ],
    "idempotency_key": "idempotency_key",
    "workspace_id": "workspace_id"
  },
  "livemode": true,
  "pipeline": "boltz-protein-redesign",
  "pipeline_version": "v2026-07-14",
  "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"
}
```

## Resume a stopped protein sequence redesign run

`protein.sequence_redesign.resume(strid)  -> SequenceRedesignResumeResponse`

**post** `/compute/v1/protein/sequence-redesign/{id}/resume`

Resume a stopped protein sequence redesign run from its last checkpoint

### Parameters

- `id: str`

### Returns

- `class SequenceRedesignResumeResponse: …`

  A fixed-structure protein sequence redesign run.

  - `id: str`

    Unique ProteinSequenceRedesignRun identifier

  - `completed_at: Optional[datetime]`

  - `created_at: datetime`

  - `data_deleted_at: Optional[datetime]`

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

  - `engine: Literal["boltz-protein-redesign"]`

    Deprecated. Use pipeline instead.

    - `"boltz-protein-redesign"`

  - `engine_version: Literal["v2026-07-14"]`

    Deprecated. Use pipeline_version instead.

    - `"v2026-07-14"`

  - `error: Optional[Error]`

    - `code: str`

      Machine-readable error code

    - `message: str`

      Human-readable error message

    - `details: Optional[object]`

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

  - `input: Optional[Input]`

    Pipeline input (null if data deleted)

    - `class InputBinderProteinSequenceRedesignRunInputResponse: …`

      - `entities: List[InputBinderProteinSequenceRedesignRunInputResponseEntity]`

        Every chain in the input CIF, assigned exactly once as target or binder.

        - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignTargetEntityResponse: …`

          A fixed target chain from the input CIF.

          - `chain_id: str`

          - `role: Literal["target"]`

            - `"target"`

          - `type: Literal["from_template"]`

            - `"from_template"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponse: …`

          - `chain_id: str`

          - `role: Literal["binder"]`

            - `"binder"`

          - `type: Literal["from_template"]`

            - `"from_template"`

          - `design_motifs: Optional[List[InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotif]]`

            Residues to redesign. Omit this field to keep the binder chain fixed.

            - `filters: List[InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilter]`

              Filters applied to this motif in addition to global_design_filters.

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterExcludedAminoAcidsDesignFilterResponse: …`

                - `amino_acids: List[str]`

                  Single-letter amino-acid codes that must not occur in the filtered designed region.

                - `type: Literal["excluded_amino_acids"]`

                  - `"excluded_amino_acids"`

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterMaxHydrophobicFractionDesignFilterResponse: …`

                - `max_fraction: float`

                - `type: Literal["max_hydrophobic_fraction"]`

                  - `"max_hydrophobic_fraction"`

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterExcludedSequenceMotifsDesignFilterResponse: …`

                - `motifs: List[str]`

                  Sequence motifs that must not occur. X matches any single residue.

                - `type: Literal["excluded_sequence_motifs"]`

                  - `"excluded_sequence_motifs"`

            - `residues: List[int]`

              0-indexed residues to redesign on this chain.

            - `type: Literal["residues"]`

              - `"residues"`

      - `num_proteins: int`

        Number of unique filter-passing redesigned proteins to generate.

      - `structure: InputBinderProteinSequenceRedesignRunInputResponseStructure`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `type: Literal["binder"]`

        - `"binder"`

      - `global_design_filters: Optional[List[InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilter]]`

        Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedAminoAcidsDesignFilterResponse: …`

          - `amino_acids: List[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterMaxHydrophobicFractionDesignFilterResponse: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedSequenceMotifsDesignFilterResponse: …`

          - `motifs: List[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `idempotency_key: Optional[str]`

      - `workspace_id: Optional[str]`

        Workspace to run this redesign in.

    - `class InputGenericProteinSequenceRedesignRunInputResponse: …`

      - `entities: List[InputGenericProteinSequenceRedesignRunInputResponseEntity]`

        Every chain in the input CIF, assigned exactly once.

        - `chain_id: str`

        - `type: Literal["from_template"]`

          - `"from_template"`

        - `design_motifs: Optional[List[InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotif]]`

          Residues to redesign. Omit this field to keep the chain fixed.

          - `filters: List[InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilter]`

            Filters applied to this motif in addition to global_design_filters.

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterExcludedAminoAcidsDesignFilterResponse: …`

              - `amino_acids: List[str]`

                Single-letter amino-acid codes that must not occur in the filtered designed region.

              - `type: Literal["excluded_amino_acids"]`

                - `"excluded_amino_acids"`

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterMaxHydrophobicFractionDesignFilterResponse: …`

              - `max_fraction: float`

              - `type: Literal["max_hydrophobic_fraction"]`

                - `"max_hydrophobic_fraction"`

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterExcludedSequenceMotifsDesignFilterResponse: …`

              - `motifs: List[str]`

                Sequence motifs that must not occur. X matches any single residue.

              - `type: Literal["excluded_sequence_motifs"]`

                - `"excluded_sequence_motifs"`

          - `residues: List[int]`

            0-indexed residues to redesign on this chain.

          - `type: Literal["residues"]`

            - `"residues"`

      - `num_proteins: int`

        Number of unique filter-passing redesigned proteins to generate.

      - `structure: InputGenericProteinSequenceRedesignRunInputResponseStructure`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `type: Literal["generic"]`

        - `"generic"`

      - `global_design_filters: Optional[List[InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilter]]`

        Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedAminoAcidsDesignFilterResponse: …`

          - `amino_acids: List[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterMaxHydrophobicFractionDesignFilterResponse: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedSequenceMotifsDesignFilterResponse: …`

          - `motifs: List[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `idempotency_key: Optional[str]`

      - `workspace_id: Optional[str]`

        Workspace to run this redesign in.

  - `livemode: bool`

    Whether this resource was created with a live API key.

  - `pipeline: Literal["boltz-protein-redesign"]`

    - `"boltz-protein-redesign"`

  - `pipeline_version: Literal["v2026-07-14"]`

    - `"v2026-07-14"`

  - `progress: Optional[Progress]`

    - `num_proteins_generated: int`

      Number of protein binders generated so far

    - `total_proteins_to_generate: int`

      Total number of protein binders requested

    - `latest_result_id: Optional[str]`

      ID of the most recently generated result

  - `started_at: Optional[datetime]`

  - `status: Literal["pending", "running", "succeeded", 2 more]`

    - `"pending"`

    - `"running"`

    - `"succeeded"`

    - `"failed"`

    - `"stopped"`

  - `stopped_at: Optional[datetime]`

  - `workspace_id: str`

    Workspace ID

  - `idempotency_key: Optional[str]`

    Client-provided idempotency key

### Example

```python
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.sequence_redesign.resume(
    "id",
)
print(response.id)
```

#### Response

```json
{
  "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": "boltz-protein-redesign",
  "engine_version": "v2026-07-14",
  "error": {
    "code": "code",
    "message": "message",
    "details": {}
  },
  "input": {
    "entities": [
      {
        "chain_id": "x",
        "role": "target",
        "type": "from_template"
      },
      {
        "chain_id": "x",
        "role": "target",
        "type": "from_template"
      }
    ],
    "num_proteins": 1,
    "structure": {
      "url": "https://example.com",
      "url_expires_at": "2019-12-27T18:11:19.117Z"
    },
    "type": "binder",
    "global_design_filters": [
      {
        "amino_acids": [
          "x"
        ],
        "type": "excluded_amino_acids"
      }
    ],
    "idempotency_key": "idempotency_key",
    "workspace_id": "workspace_id"
  },
  "livemode": true,
  "pipeline": "boltz-protein-redesign",
  "pipeline_version": "v2026-07-14",
  "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"
}
```

## Delete protein sequence redesign run data

`protein.sequence_redesign.delete_data(strid)  -> SequenceRedesignDeleteDataResponse`

**post** `/compute/v1/protein/sequence-redesign/{id}/delete-data`

Permanently delete the input, output, and result data associated with this sequence redesign run. The sequence redesign run record itself is retained with a `data_deleted_at` timestamp. This action is irreversible.

### Parameters

- `id: str`

### Returns

- `class SequenceRedesignDeleteDataResponse: …`

  - `id: str`

    ID of the resource whose data was deleted

  - `data_deleted: Literal[true]`

    - `true`

  - `data_deleted_at: datetime`

    When the data was deleted

### Example

```python
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.sequence_redesign.delete_data(
    "id",
)
print(response.id)
```

#### Response

```json
{
  "id": "id",
  "data_deleted": true,
  "data_deleted_at": "2019-12-27T18:11:19.117Z"
}
```

## Estimate cost for a protein sequence redesign run

`protein.sequence_redesign.estimate_cost(SequenceRedesignEstimateCostParams**kwargs)  -> SequenceRedesignEstimateCostResponse`

**post** `/compute/v1/protein/sequence-redesign/estimate-cost`

Estimate the cost of a protein sequence redesign run without creating any resource or consuming GPU.

### Parameters

- `entities: Iterable[BinderProteinSequenceRedesignRunInputEntity]`

  Every chain in the input CIF, assigned exactly once as target or binder.

  - `class BinderProteinSequenceRedesignRunInputEntityBinderSequenceRedesignTargetEntity: …`

    A fixed target chain from the input CIF.

    - `chain_id: str`

    - `role: Literal["target"]`

      - `"target"`

    - `type: Literal["from_template"]`

      - `"from_template"`

  - `class BinderProteinSequenceRedesignRunInputEntityBinderSequenceRedesignBinderEntity: …`

    - `chain_id: str`

    - `role: Literal["binder"]`

      - `"binder"`

    - `type: Literal["from_template"]`

      - `"from_template"`

    - `design_motifs: Optional[Iterable[BinderProteinSequenceRedesignRunInputEntityBinderSequenceRedesignBinderEntityDesignMotif]]`

      Residues to redesign. Omit this field to keep the binder chain fixed.

      - `filters: Iterable[BinderProteinSequenceRedesignRunInputEntityBinderSequenceRedesignBinderEntityDesignMotifFilter]`

        Filters applied to this motif in addition to global_design_filters.

        - `class BinderProteinSequenceRedesignRunInputEntityBinderSequenceRedesignBinderEntityDesignMotifFilterExcludedAminoAcidsDesignFilter: …`

          - `amino_acids: Sequence[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class BinderProteinSequenceRedesignRunInputEntityBinderSequenceRedesignBinderEntityDesignMotifFilterMaxHydrophobicFractionDesignFilter: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class BinderProteinSequenceRedesignRunInputEntityBinderSequenceRedesignBinderEntityDesignMotifFilterExcludedSequenceMotifsDesignFilter: …`

          - `motifs: Sequence[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `residues: Iterable[int]`

        0-indexed residues to redesign on this chain.

      - `type: Literal["residues"]`

        - `"residues"`

- `num_proteins: int`

  Number of unique filter-passing redesigned proteins to generate.

- `structure: BinderProteinSequenceRedesignRunInputStructure`

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

  - `class BinderProteinSequenceRedesignRunInputStructureURLSource: …`

    - `type: Literal["url"]`

      - `"url"`

    - `url: str`

  - `class BinderProteinSequenceRedesignRunInputStructureCifBase64Source: …`

    - `data: str`

      Base64-encoded CIF file contents

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

      Must be chemical/x-cif for CIF files

      - `"chemical/x-cif"`

    - `type: Literal["base64"]`

      - `"base64"`

- `type: Literal["binder"]`

  - `"binder"`

- `global_design_filters: Optional[Iterable[BinderProteinSequenceRedesignRunInputGlobalDesignFilter]]`

  Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

  - `class BinderProteinSequenceRedesignRunInputGlobalDesignFilterExcludedAminoAcidsDesignFilter: …`

    - `amino_acids: Sequence[str]`

      Single-letter amino-acid codes that must not occur in the filtered designed region.

    - `type: Literal["excluded_amino_acids"]`

      - `"excluded_amino_acids"`

  - `class BinderProteinSequenceRedesignRunInputGlobalDesignFilterMaxHydrophobicFractionDesignFilter: …`

    - `max_fraction: float`

    - `type: Literal["max_hydrophobic_fraction"]`

      - `"max_hydrophobic_fraction"`

  - `class BinderProteinSequenceRedesignRunInputGlobalDesignFilterExcludedSequenceMotifsDesignFilter: …`

    - `motifs: Sequence[str]`

      Sequence motifs that must not occur. X matches any single residue.

    - `type: Literal["excluded_sequence_motifs"]`

      - `"excluded_sequence_motifs"`

- `idempotency_key: Optional[str]`

- `workspace_id: Optional[str]`

  Workspace to run this redesign in.

### Returns

- `class SequenceRedesignEstimateCostResponse: …`

  Estimate response with monetary values encoded as decimal strings to preserve precision.

  - `breakdown: Breakdown`

    Cost breakdown for the billed application.

    - `application: Literal["structure_and_binding", "small_molecule_design", "small_molecule_library_screen", 4 more]`

      - `"structure_and_binding"`

      - `"small_molecule_design"`

      - `"small_molecule_library_screen"`

      - `"protein_design"`

      - `"protein_redesign"`

      - `"protein_library_screen"`

      - `"adme"`

    - `cost_per_unit_usd: str`

      Estimated cost per displayed unit as a decimal string, rounded up to 4 decimal places. This may include token-size multipliers or generation overhead; estimated_cost_usd is the authoritative total.

    - `num_units: int`

      Number of billable units in the estimate. The unit depends on the endpoint: samples for structure-and-binding, molecules for ADME, and requested proteins or molecules for design/screen endpoints.

  - `disclaimer: str`

  - `estimated_cost_usd: str`

    Estimated total cost as a decimal string

### Example

```python
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.sequence_redesign.estimate_cost(
    entities=[{
        "chain_id": "x",
        "role": "target",
        "type": "from_template",
    }, {
        "chain_id": "x",
        "role": "target",
        "type": "from_template",
    }],
    num_proteins=1,
    structure={
        "type": "url",
        "url": "https://example.com",
    },
    type="binder",
)
print(response.breakdown)
```

#### Response

```json
{
  "breakdown": {
    "application": "structure_and_binding",
    "cost_per_unit_usd": "0.0500",
    "num_units": 1
  },
  "disclaimer": "This is an estimate only and may differ from your actual charges. Final billing is based on exact token counts computed at run time. For large library screens, the estimate is extrapolated from a sample and may be less accurate for highly variable inputs.",
  "estimated_cost_usd": "0.0500"
}
```

## Domain Types

### Sequence Redesign Start Response

- `class SequenceRedesignStartResponse: …`

  A fixed-structure protein sequence redesign run.

  - `id: str`

    Unique ProteinSequenceRedesignRun identifier

  - `completed_at: Optional[datetime]`

  - `created_at: datetime`

  - `data_deleted_at: Optional[datetime]`

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

  - `engine: Literal["boltz-protein-redesign"]`

    Deprecated. Use pipeline instead.

    - `"boltz-protein-redesign"`

  - `engine_version: Literal["v2026-07-14"]`

    Deprecated. Use pipeline_version instead.

    - `"v2026-07-14"`

  - `error: Optional[Error]`

    - `code: str`

      Machine-readable error code

    - `message: str`

      Human-readable error message

    - `details: Optional[object]`

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

  - `input: Optional[Input]`

    Pipeline input (null if data deleted)

    - `class InputBinderProteinSequenceRedesignRunInputResponse: …`

      - `entities: List[InputBinderProteinSequenceRedesignRunInputResponseEntity]`

        Every chain in the input CIF, assigned exactly once as target or binder.

        - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignTargetEntityResponse: …`

          A fixed target chain from the input CIF.

          - `chain_id: str`

          - `role: Literal["target"]`

            - `"target"`

          - `type: Literal["from_template"]`

            - `"from_template"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponse: …`

          - `chain_id: str`

          - `role: Literal["binder"]`

            - `"binder"`

          - `type: Literal["from_template"]`

            - `"from_template"`

          - `design_motifs: Optional[List[InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotif]]`

            Residues to redesign. Omit this field to keep the binder chain fixed.

            - `filters: List[InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilter]`

              Filters applied to this motif in addition to global_design_filters.

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterExcludedAminoAcidsDesignFilterResponse: …`

                - `amino_acids: List[str]`

                  Single-letter amino-acid codes that must not occur in the filtered designed region.

                - `type: Literal["excluded_amino_acids"]`

                  - `"excluded_amino_acids"`

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterMaxHydrophobicFractionDesignFilterResponse: …`

                - `max_fraction: float`

                - `type: Literal["max_hydrophobic_fraction"]`

                  - `"max_hydrophobic_fraction"`

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterExcludedSequenceMotifsDesignFilterResponse: …`

                - `motifs: List[str]`

                  Sequence motifs that must not occur. X matches any single residue.

                - `type: Literal["excluded_sequence_motifs"]`

                  - `"excluded_sequence_motifs"`

            - `residues: List[int]`

              0-indexed residues to redesign on this chain.

            - `type: Literal["residues"]`

              - `"residues"`

      - `num_proteins: int`

        Number of unique filter-passing redesigned proteins to generate.

      - `structure: InputBinderProteinSequenceRedesignRunInputResponseStructure`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `type: Literal["binder"]`

        - `"binder"`

      - `global_design_filters: Optional[List[InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilter]]`

        Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedAminoAcidsDesignFilterResponse: …`

          - `amino_acids: List[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterMaxHydrophobicFractionDesignFilterResponse: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedSequenceMotifsDesignFilterResponse: …`

          - `motifs: List[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `idempotency_key: Optional[str]`

      - `workspace_id: Optional[str]`

        Workspace to run this redesign in.

    - `class InputGenericProteinSequenceRedesignRunInputResponse: …`

      - `entities: List[InputGenericProteinSequenceRedesignRunInputResponseEntity]`

        Every chain in the input CIF, assigned exactly once.

        - `chain_id: str`

        - `type: Literal["from_template"]`

          - `"from_template"`

        - `design_motifs: Optional[List[InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotif]]`

          Residues to redesign. Omit this field to keep the chain fixed.

          - `filters: List[InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilter]`

            Filters applied to this motif in addition to global_design_filters.

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterExcludedAminoAcidsDesignFilterResponse: …`

              - `amino_acids: List[str]`

                Single-letter amino-acid codes that must not occur in the filtered designed region.

              - `type: Literal["excluded_amino_acids"]`

                - `"excluded_amino_acids"`

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterMaxHydrophobicFractionDesignFilterResponse: …`

              - `max_fraction: float`

              - `type: Literal["max_hydrophobic_fraction"]`

                - `"max_hydrophobic_fraction"`

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterExcludedSequenceMotifsDesignFilterResponse: …`

              - `motifs: List[str]`

                Sequence motifs that must not occur. X matches any single residue.

              - `type: Literal["excluded_sequence_motifs"]`

                - `"excluded_sequence_motifs"`

          - `residues: List[int]`

            0-indexed residues to redesign on this chain.

          - `type: Literal["residues"]`

            - `"residues"`

      - `num_proteins: int`

        Number of unique filter-passing redesigned proteins to generate.

      - `structure: InputGenericProteinSequenceRedesignRunInputResponseStructure`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `type: Literal["generic"]`

        - `"generic"`

      - `global_design_filters: Optional[List[InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilter]]`

        Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedAminoAcidsDesignFilterResponse: …`

          - `amino_acids: List[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterMaxHydrophobicFractionDesignFilterResponse: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedSequenceMotifsDesignFilterResponse: …`

          - `motifs: List[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `idempotency_key: Optional[str]`

      - `workspace_id: Optional[str]`

        Workspace to run this redesign in.

  - `livemode: bool`

    Whether this resource was created with a live API key.

  - `pipeline: Literal["boltz-protein-redesign"]`

    - `"boltz-protein-redesign"`

  - `pipeline_version: Literal["v2026-07-14"]`

    - `"v2026-07-14"`

  - `progress: Optional[Progress]`

    - `num_proteins_generated: int`

      Number of protein binders generated so far

    - `total_proteins_to_generate: int`

      Total number of protein binders requested

    - `latest_result_id: Optional[str]`

      ID of the most recently generated result

  - `started_at: Optional[datetime]`

  - `status: Literal["pending", "running", "succeeded", 2 more]`

    - `"pending"`

    - `"running"`

    - `"succeeded"`

    - `"failed"`

    - `"stopped"`

  - `stopped_at: Optional[datetime]`

  - `workspace_id: str`

    Workspace ID

  - `idempotency_key: Optional[str]`

    Client-provided idempotency key

### Sequence Redesign List Response

- `class SequenceRedesignListResponse: …`

  Summary of a protein sequence redesign run.

  - `id: str`

    Unique ProteinSequenceRedesignRunSummary identifier

  - `completed_at: Optional[datetime]`

  - `created_at: datetime`

  - `data_deleted_at: Optional[datetime]`

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

  - `engine: Literal["boltz-protein-redesign"]`

    Deprecated. Use pipeline instead.

    - `"boltz-protein-redesign"`

  - `engine_version: Literal["v2026-07-14"]`

    Deprecated. Use pipeline_version instead.

    - `"v2026-07-14"`

  - `error: Optional[Error]`

    - `code: str`

      Machine-readable error code

    - `message: str`

      Human-readable error message

    - `details: Optional[object]`

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

  - `livemode: bool`

    Whether this resource was created with a live API key.

  - `pipeline: Literal["boltz-protein-redesign"]`

    - `"boltz-protein-redesign"`

  - `pipeline_version: Literal["v2026-07-14"]`

    - `"v2026-07-14"`

  - `progress: Optional[Progress]`

    - `num_proteins_generated: int`

      Number of protein binders generated so far

    - `total_proteins_to_generate: int`

      Total number of protein binders requested

    - `latest_result_id: Optional[str]`

      ID of the most recently generated result

  - `started_at: Optional[datetime]`

  - `status: Literal["pending", "running", "succeeded", 2 more]`

    - `"pending"`

    - `"running"`

    - `"succeeded"`

    - `"failed"`

    - `"stopped"`

  - `stopped_at: Optional[datetime]`

  - `workspace_id: str`

    Workspace ID

  - `idempotency_key: Optional[str]`

    Client-provided idempotency key

### Sequence Redesign Retrieve Response

- `class SequenceRedesignRetrieveResponse: …`

  A fixed-structure protein sequence redesign run.

  - `id: str`

    Unique ProteinSequenceRedesignRun identifier

  - `completed_at: Optional[datetime]`

  - `created_at: datetime`

  - `data_deleted_at: Optional[datetime]`

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

  - `engine: Literal["boltz-protein-redesign"]`

    Deprecated. Use pipeline instead.

    - `"boltz-protein-redesign"`

  - `engine_version: Literal["v2026-07-14"]`

    Deprecated. Use pipeline_version instead.

    - `"v2026-07-14"`

  - `error: Optional[Error]`

    - `code: str`

      Machine-readable error code

    - `message: str`

      Human-readable error message

    - `details: Optional[object]`

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

  - `input: Optional[Input]`

    Pipeline input (null if data deleted)

    - `class InputBinderProteinSequenceRedesignRunInputResponse: …`

      - `entities: List[InputBinderProteinSequenceRedesignRunInputResponseEntity]`

        Every chain in the input CIF, assigned exactly once as target or binder.

        - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignTargetEntityResponse: …`

          A fixed target chain from the input CIF.

          - `chain_id: str`

          - `role: Literal["target"]`

            - `"target"`

          - `type: Literal["from_template"]`

            - `"from_template"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponse: …`

          - `chain_id: str`

          - `role: Literal["binder"]`

            - `"binder"`

          - `type: Literal["from_template"]`

            - `"from_template"`

          - `design_motifs: Optional[List[InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotif]]`

            Residues to redesign. Omit this field to keep the binder chain fixed.

            - `filters: List[InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilter]`

              Filters applied to this motif in addition to global_design_filters.

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterExcludedAminoAcidsDesignFilterResponse: …`

                - `amino_acids: List[str]`

                  Single-letter amino-acid codes that must not occur in the filtered designed region.

                - `type: Literal["excluded_amino_acids"]`

                  - `"excluded_amino_acids"`

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterMaxHydrophobicFractionDesignFilterResponse: …`

                - `max_fraction: float`

                - `type: Literal["max_hydrophobic_fraction"]`

                  - `"max_hydrophobic_fraction"`

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterExcludedSequenceMotifsDesignFilterResponse: …`

                - `motifs: List[str]`

                  Sequence motifs that must not occur. X matches any single residue.

                - `type: Literal["excluded_sequence_motifs"]`

                  - `"excluded_sequence_motifs"`

            - `residues: List[int]`

              0-indexed residues to redesign on this chain.

            - `type: Literal["residues"]`

              - `"residues"`

      - `num_proteins: int`

        Number of unique filter-passing redesigned proteins to generate.

      - `structure: InputBinderProteinSequenceRedesignRunInputResponseStructure`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `type: Literal["binder"]`

        - `"binder"`

      - `global_design_filters: Optional[List[InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilter]]`

        Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedAminoAcidsDesignFilterResponse: …`

          - `amino_acids: List[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterMaxHydrophobicFractionDesignFilterResponse: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedSequenceMotifsDesignFilterResponse: …`

          - `motifs: List[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `idempotency_key: Optional[str]`

      - `workspace_id: Optional[str]`

        Workspace to run this redesign in.

    - `class InputGenericProteinSequenceRedesignRunInputResponse: …`

      - `entities: List[InputGenericProteinSequenceRedesignRunInputResponseEntity]`

        Every chain in the input CIF, assigned exactly once.

        - `chain_id: str`

        - `type: Literal["from_template"]`

          - `"from_template"`

        - `design_motifs: Optional[List[InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotif]]`

          Residues to redesign. Omit this field to keep the chain fixed.

          - `filters: List[InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilter]`

            Filters applied to this motif in addition to global_design_filters.

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterExcludedAminoAcidsDesignFilterResponse: …`

              - `amino_acids: List[str]`

                Single-letter amino-acid codes that must not occur in the filtered designed region.

              - `type: Literal["excluded_amino_acids"]`

                - `"excluded_amino_acids"`

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterMaxHydrophobicFractionDesignFilterResponse: …`

              - `max_fraction: float`

              - `type: Literal["max_hydrophobic_fraction"]`

                - `"max_hydrophobic_fraction"`

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterExcludedSequenceMotifsDesignFilterResponse: …`

              - `motifs: List[str]`

                Sequence motifs that must not occur. X matches any single residue.

              - `type: Literal["excluded_sequence_motifs"]`

                - `"excluded_sequence_motifs"`

          - `residues: List[int]`

            0-indexed residues to redesign on this chain.

          - `type: Literal["residues"]`

            - `"residues"`

      - `num_proteins: int`

        Number of unique filter-passing redesigned proteins to generate.

      - `structure: InputGenericProteinSequenceRedesignRunInputResponseStructure`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `type: Literal["generic"]`

        - `"generic"`

      - `global_design_filters: Optional[List[InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilter]]`

        Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedAminoAcidsDesignFilterResponse: …`

          - `amino_acids: List[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterMaxHydrophobicFractionDesignFilterResponse: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedSequenceMotifsDesignFilterResponse: …`

          - `motifs: List[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `idempotency_key: Optional[str]`

      - `workspace_id: Optional[str]`

        Workspace to run this redesign in.

  - `livemode: bool`

    Whether this resource was created with a live API key.

  - `pipeline: Literal["boltz-protein-redesign"]`

    - `"boltz-protein-redesign"`

  - `pipeline_version: Literal["v2026-07-14"]`

    - `"v2026-07-14"`

  - `progress: Optional[Progress]`

    - `num_proteins_generated: int`

      Number of protein binders generated so far

    - `total_proteins_to_generate: int`

      Total number of protein binders requested

    - `latest_result_id: Optional[str]`

      ID of the most recently generated result

  - `started_at: Optional[datetime]`

  - `status: Literal["pending", "running", "succeeded", 2 more]`

    - `"pending"`

    - `"running"`

    - `"succeeded"`

    - `"failed"`

    - `"stopped"`

  - `stopped_at: Optional[datetime]`

  - `workspace_id: str`

    Workspace ID

  - `idempotency_key: Optional[str]`

    Client-provided idempotency key

### Sequence Redesign List Results Response

- `SequenceRedesignListResultsResponse`

  - `class BinderProteinDesignResult: …`

    - `id: str`

      Unique result ID.

    - `artifacts: BinderProteinDesignResultArtifacts`

      - `archive: BinderProteinDesignResultArtifactsArchive`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `structure: Optional[BinderProteinDesignResultArtifactsStructure]`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

    - `created_at: datetime`

    - `entities: List[BinderProteinDesignResultEntity]`

      Entities in the designed complex, including designed and fixed input entities.

      - `class BinderProteinDesignResultEntityProteinEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this entity

        - `type: Literal["protein"]`

          - `"protein"`

        - `value: str`

          Amino acid sequence (one-letter codes)

        - `cyclic: Optional[bool]`

          Whether the sequence is cyclic

        - `modifications: Optional[List[BinderProteinDesignResultEntityProteinEntityModification]]`

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

          - `residue_index: int`

            0-based index of the residue to modify

          - `type: Literal["ccd"]`

            Modification format. Only CCD polymer modifications are supported.

            - `"ccd"`

          - `value: str`

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

      - `class BinderProteinDesignResultEntityRnaEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this entity

        - `type: Literal["rna"]`

          - `"rna"`

        - `value: str`

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

        - `cyclic: Optional[bool]`

          Whether the sequence is cyclic

        - `modifications: Optional[List[BinderProteinDesignResultEntityRnaEntityModification]]`

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

          - `residue_index: int`

            0-based index of the residue to modify

          - `type: Literal["ccd"]`

            Modification format. Only CCD polymer modifications are supported.

            - `"ccd"`

          - `value: str`

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

      - `class BinderProteinDesignResultEntityDnaEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this entity

        - `type: Literal["dna"]`

          - `"dna"`

        - `value: str`

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

        - `cyclic: Optional[bool]`

          Whether the sequence is cyclic

        - `modifications: Optional[List[BinderProteinDesignResultEntityDnaEntityModification]]`

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

          - `residue_index: int`

            0-based index of the residue to modify

          - `type: Literal["ccd"]`

            Modification format. Only CCD polymer modifications are supported.

            - `"ccd"`

          - `value: str`

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

      - `class BinderProteinDesignResultEntityLigandCcdEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this ligand

        - `type: Literal["ligand_ccd"]`

          - `"ligand_ccd"`

        - `value: str`

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

      - `class BinderProteinDesignResultEntityLigandSmilesEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this ligand

        - `type: Literal["ligand_smiles"]`

          - `"ligand_smiles"`

        - `value: str`

          SMILES string representing the ligand

    - `metrics: BinderProteinDesignResultMetrics`

      Structural and binding quality metrics for a designed protein binder

      - `binding_confidence: float`

        Confidence that the designed binder binds the target (0-1). Primary metric for hit discovery.

      - `helix_fraction: float`

        Fraction of the designed sequence forming alpha helices (0-1).

      - `iptm: float`

        Interface predicted TM score (0-1). Confidence in the protein-protein interface.

      - `loop_fraction: float`

        Fraction of the designed sequence in coil/loop regions (0-1).

      - `min_interaction_pae: float`

        Minimum predicted aligned error at the interface (Angstroms). Lower values indicate higher confidence.

      - `sheet_fraction: float`

        Fraction of the designed sequence forming beta sheets (0-1).

      - `structure_confidence: float`

        Confidence in the predicted 3D structure (0-1).

    - `type: Literal["binder"]`

      - `"binder"`

    - `warnings: Optional[List[BinderProteinDesignResultWarning]]`

      Warnings about potential quality issues with this result.

      - `code: str`

        Machine-readable warning code (e.g. "low_confidence", "unusual_geometry")

      - `message: str`

        Human-readable description of the warning

  - `class GenericProteinDesignResult: …`

    - `id: str`

      Unique result ID.

    - `artifacts: GenericProteinDesignResultArtifacts`

      - `archive: GenericProteinDesignResultArtifactsArchive`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `structure: Optional[GenericProteinDesignResultArtifactsStructure]`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

    - `created_at: datetime`

    - `entities: List[GenericProteinDesignResultEntity]`

      Entities in the designed complex, including designed and fixed input entities.

      - `class GenericProteinDesignResultEntityProteinEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this entity

        - `type: Literal["protein"]`

          - `"protein"`

        - `value: str`

          Amino acid sequence (one-letter codes)

        - `cyclic: Optional[bool]`

          Whether the sequence is cyclic

        - `modifications: Optional[List[GenericProteinDesignResultEntityProteinEntityModification]]`

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

          - `residue_index: int`

            0-based index of the residue to modify

          - `type: Literal["ccd"]`

            Modification format. Only CCD polymer modifications are supported.

            - `"ccd"`

          - `value: str`

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

      - `class GenericProteinDesignResultEntityRnaEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this entity

        - `type: Literal["rna"]`

          - `"rna"`

        - `value: str`

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

        - `cyclic: Optional[bool]`

          Whether the sequence is cyclic

        - `modifications: Optional[List[GenericProteinDesignResultEntityRnaEntityModification]]`

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

          - `residue_index: int`

            0-based index of the residue to modify

          - `type: Literal["ccd"]`

            Modification format. Only CCD polymer modifications are supported.

            - `"ccd"`

          - `value: str`

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

      - `class GenericProteinDesignResultEntityDnaEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this entity

        - `type: Literal["dna"]`

          - `"dna"`

        - `value: str`

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

        - `cyclic: Optional[bool]`

          Whether the sequence is cyclic

        - `modifications: Optional[List[GenericProteinDesignResultEntityDnaEntityModification]]`

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

          - `residue_index: int`

            0-based index of the residue to modify

          - `type: Literal["ccd"]`

            Modification format. Only CCD polymer modifications are supported.

            - `"ccd"`

          - `value: str`

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

      - `class GenericProteinDesignResultEntityLigandCcdEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this ligand

        - `type: Literal["ligand_ccd"]`

          - `"ligand_ccd"`

        - `value: str`

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

      - `class GenericProteinDesignResultEntityLigandSmilesEntity: …`

        - `chain_ids: List[str]`

          Chain IDs for this ligand

        - `type: Literal["ligand_smiles"]`

          - `"ligand_smiles"`

        - `value: str`

          SMILES string representing the ligand

    - `metrics: GenericProteinDesignResultMetrics`

      Structure and design-quality metrics for a generic protein design.

      - `helix_fraction: float`

        Fraction of the designed sequence forming alpha helices (0-1).

      - `loop_fraction: float`

        Fraction of the designed sequence in coil/loop regions (0-1).

      - `sheet_fraction: float`

        Fraction of the designed sequence forming beta sheets (0-1).

      - `structure_confidence: float`

        Confidence in the predicted 3D structure (0-1).

    - `type: Literal["generic"]`

      - `"generic"`

    - `warnings: Optional[List[GenericProteinDesignResultWarning]]`

      Warnings about potential quality issues with this result.

      - `code: str`

        Machine-readable warning code (e.g. "low_confidence", "unusual_geometry")

      - `message: str`

        Human-readable description of the warning

### Sequence Redesign Stop Response

- `class SequenceRedesignStopResponse: …`

  A fixed-structure protein sequence redesign run.

  - `id: str`

    Unique ProteinSequenceRedesignRun identifier

  - `completed_at: Optional[datetime]`

  - `created_at: datetime`

  - `data_deleted_at: Optional[datetime]`

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

  - `engine: Literal["boltz-protein-redesign"]`

    Deprecated. Use pipeline instead.

    - `"boltz-protein-redesign"`

  - `engine_version: Literal["v2026-07-14"]`

    Deprecated. Use pipeline_version instead.

    - `"v2026-07-14"`

  - `error: Optional[Error]`

    - `code: str`

      Machine-readable error code

    - `message: str`

      Human-readable error message

    - `details: Optional[object]`

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

  - `input: Optional[Input]`

    Pipeline input (null if data deleted)

    - `class InputBinderProteinSequenceRedesignRunInputResponse: …`

      - `entities: List[InputBinderProteinSequenceRedesignRunInputResponseEntity]`

        Every chain in the input CIF, assigned exactly once as target or binder.

        - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignTargetEntityResponse: …`

          A fixed target chain from the input CIF.

          - `chain_id: str`

          - `role: Literal["target"]`

            - `"target"`

          - `type: Literal["from_template"]`

            - `"from_template"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponse: …`

          - `chain_id: str`

          - `role: Literal["binder"]`

            - `"binder"`

          - `type: Literal["from_template"]`

            - `"from_template"`

          - `design_motifs: Optional[List[InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotif]]`

            Residues to redesign. Omit this field to keep the binder chain fixed.

            - `filters: List[InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilter]`

              Filters applied to this motif in addition to global_design_filters.

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterExcludedAminoAcidsDesignFilterResponse: …`

                - `amino_acids: List[str]`

                  Single-letter amino-acid codes that must not occur in the filtered designed region.

                - `type: Literal["excluded_amino_acids"]`

                  - `"excluded_amino_acids"`

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterMaxHydrophobicFractionDesignFilterResponse: …`

                - `max_fraction: float`

                - `type: Literal["max_hydrophobic_fraction"]`

                  - `"max_hydrophobic_fraction"`

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterExcludedSequenceMotifsDesignFilterResponse: …`

                - `motifs: List[str]`

                  Sequence motifs that must not occur. X matches any single residue.

                - `type: Literal["excluded_sequence_motifs"]`

                  - `"excluded_sequence_motifs"`

            - `residues: List[int]`

              0-indexed residues to redesign on this chain.

            - `type: Literal["residues"]`

              - `"residues"`

      - `num_proteins: int`

        Number of unique filter-passing redesigned proteins to generate.

      - `structure: InputBinderProteinSequenceRedesignRunInputResponseStructure`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `type: Literal["binder"]`

        - `"binder"`

      - `global_design_filters: Optional[List[InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilter]]`

        Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedAminoAcidsDesignFilterResponse: …`

          - `amino_acids: List[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterMaxHydrophobicFractionDesignFilterResponse: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedSequenceMotifsDesignFilterResponse: …`

          - `motifs: List[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `idempotency_key: Optional[str]`

      - `workspace_id: Optional[str]`

        Workspace to run this redesign in.

    - `class InputGenericProteinSequenceRedesignRunInputResponse: …`

      - `entities: List[InputGenericProteinSequenceRedesignRunInputResponseEntity]`

        Every chain in the input CIF, assigned exactly once.

        - `chain_id: str`

        - `type: Literal["from_template"]`

          - `"from_template"`

        - `design_motifs: Optional[List[InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotif]]`

          Residues to redesign. Omit this field to keep the chain fixed.

          - `filters: List[InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilter]`

            Filters applied to this motif in addition to global_design_filters.

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterExcludedAminoAcidsDesignFilterResponse: …`

              - `amino_acids: List[str]`

                Single-letter amino-acid codes that must not occur in the filtered designed region.

              - `type: Literal["excluded_amino_acids"]`

                - `"excluded_amino_acids"`

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterMaxHydrophobicFractionDesignFilterResponse: …`

              - `max_fraction: float`

              - `type: Literal["max_hydrophobic_fraction"]`

                - `"max_hydrophobic_fraction"`

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterExcludedSequenceMotifsDesignFilterResponse: …`

              - `motifs: List[str]`

                Sequence motifs that must not occur. X matches any single residue.

              - `type: Literal["excluded_sequence_motifs"]`

                - `"excluded_sequence_motifs"`

          - `residues: List[int]`

            0-indexed residues to redesign on this chain.

          - `type: Literal["residues"]`

            - `"residues"`

      - `num_proteins: int`

        Number of unique filter-passing redesigned proteins to generate.

      - `structure: InputGenericProteinSequenceRedesignRunInputResponseStructure`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `type: Literal["generic"]`

        - `"generic"`

      - `global_design_filters: Optional[List[InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilter]]`

        Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedAminoAcidsDesignFilterResponse: …`

          - `amino_acids: List[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterMaxHydrophobicFractionDesignFilterResponse: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedSequenceMotifsDesignFilterResponse: …`

          - `motifs: List[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `idempotency_key: Optional[str]`

      - `workspace_id: Optional[str]`

        Workspace to run this redesign in.

  - `livemode: bool`

    Whether this resource was created with a live API key.

  - `pipeline: Literal["boltz-protein-redesign"]`

    - `"boltz-protein-redesign"`

  - `pipeline_version: Literal["v2026-07-14"]`

    - `"v2026-07-14"`

  - `progress: Optional[Progress]`

    - `num_proteins_generated: int`

      Number of protein binders generated so far

    - `total_proteins_to_generate: int`

      Total number of protein binders requested

    - `latest_result_id: Optional[str]`

      ID of the most recently generated result

  - `started_at: Optional[datetime]`

  - `status: Literal["pending", "running", "succeeded", 2 more]`

    - `"pending"`

    - `"running"`

    - `"succeeded"`

    - `"failed"`

    - `"stopped"`

  - `stopped_at: Optional[datetime]`

  - `workspace_id: str`

    Workspace ID

  - `idempotency_key: Optional[str]`

    Client-provided idempotency key

### Sequence Redesign Resume Response

- `class SequenceRedesignResumeResponse: …`

  A fixed-structure protein sequence redesign run.

  - `id: str`

    Unique ProteinSequenceRedesignRun identifier

  - `completed_at: Optional[datetime]`

  - `created_at: datetime`

  - `data_deleted_at: Optional[datetime]`

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

  - `engine: Literal["boltz-protein-redesign"]`

    Deprecated. Use pipeline instead.

    - `"boltz-protein-redesign"`

  - `engine_version: Literal["v2026-07-14"]`

    Deprecated. Use pipeline_version instead.

    - `"v2026-07-14"`

  - `error: Optional[Error]`

    - `code: str`

      Machine-readable error code

    - `message: str`

      Human-readable error message

    - `details: Optional[object]`

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

  - `input: Optional[Input]`

    Pipeline input (null if data deleted)

    - `class InputBinderProteinSequenceRedesignRunInputResponse: …`

      - `entities: List[InputBinderProteinSequenceRedesignRunInputResponseEntity]`

        Every chain in the input CIF, assigned exactly once as target or binder.

        - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignTargetEntityResponse: …`

          A fixed target chain from the input CIF.

          - `chain_id: str`

          - `role: Literal["target"]`

            - `"target"`

          - `type: Literal["from_template"]`

            - `"from_template"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponse: …`

          - `chain_id: str`

          - `role: Literal["binder"]`

            - `"binder"`

          - `type: Literal["from_template"]`

            - `"from_template"`

          - `design_motifs: Optional[List[InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotif]]`

            Residues to redesign. Omit this field to keep the binder chain fixed.

            - `filters: List[InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilter]`

              Filters applied to this motif in addition to global_design_filters.

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterExcludedAminoAcidsDesignFilterResponse: …`

                - `amino_acids: List[str]`

                  Single-letter amino-acid codes that must not occur in the filtered designed region.

                - `type: Literal["excluded_amino_acids"]`

                  - `"excluded_amino_acids"`

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterMaxHydrophobicFractionDesignFilterResponse: …`

                - `max_fraction: float`

                - `type: Literal["max_hydrophobic_fraction"]`

                  - `"max_hydrophobic_fraction"`

              - `class InputBinderProteinSequenceRedesignRunInputResponseEntityBinderSequenceRedesignBinderEntityResponseDesignMotifFilterExcludedSequenceMotifsDesignFilterResponse: …`

                - `motifs: List[str]`

                  Sequence motifs that must not occur. X matches any single residue.

                - `type: Literal["excluded_sequence_motifs"]`

                  - `"excluded_sequence_motifs"`

            - `residues: List[int]`

              0-indexed residues to redesign on this chain.

            - `type: Literal["residues"]`

              - `"residues"`

      - `num_proteins: int`

        Number of unique filter-passing redesigned proteins to generate.

      - `structure: InputBinderProteinSequenceRedesignRunInputResponseStructure`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `type: Literal["binder"]`

        - `"binder"`

      - `global_design_filters: Optional[List[InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilter]]`

        Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedAminoAcidsDesignFilterResponse: …`

          - `amino_acids: List[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterMaxHydrophobicFractionDesignFilterResponse: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class InputBinderProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedSequenceMotifsDesignFilterResponse: …`

          - `motifs: List[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `idempotency_key: Optional[str]`

      - `workspace_id: Optional[str]`

        Workspace to run this redesign in.

    - `class InputGenericProteinSequenceRedesignRunInputResponse: …`

      - `entities: List[InputGenericProteinSequenceRedesignRunInputResponseEntity]`

        Every chain in the input CIF, assigned exactly once.

        - `chain_id: str`

        - `type: Literal["from_template"]`

          - `"from_template"`

        - `design_motifs: Optional[List[InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotif]]`

          Residues to redesign. Omit this field to keep the chain fixed.

          - `filters: List[InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilter]`

            Filters applied to this motif in addition to global_design_filters.

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterExcludedAminoAcidsDesignFilterResponse: …`

              - `amino_acids: List[str]`

                Single-letter amino-acid codes that must not occur in the filtered designed region.

              - `type: Literal["excluded_amino_acids"]`

                - `"excluded_amino_acids"`

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterMaxHydrophobicFractionDesignFilterResponse: …`

              - `max_fraction: float`

              - `type: Literal["max_hydrophobic_fraction"]`

                - `"max_hydrophobic_fraction"`

            - `class InputGenericProteinSequenceRedesignRunInputResponseEntityDesignMotifFilterExcludedSequenceMotifsDesignFilterResponse: …`

              - `motifs: List[str]`

                Sequence motifs that must not occur. X matches any single residue.

              - `type: Literal["excluded_sequence_motifs"]`

                - `"excluded_sequence_motifs"`

          - `residues: List[int]`

            0-indexed residues to redesign on this chain.

          - `type: Literal["residues"]`

            - `"residues"`

      - `num_proteins: int`

        Number of unique filter-passing redesigned proteins to generate.

      - `structure: InputGenericProteinSequenceRedesignRunInputResponseStructure`

        - `url: str`

          URL to download the file

        - `url_expires_at: datetime`

          When the presigned URL expires

      - `type: Literal["generic"]`

        - `"generic"`

      - `global_design_filters: Optional[List[InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilter]]`

        Filters applied to every redesigned region. When omitted, cysteine is excluded. Pass [] to disable global filters.

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedAminoAcidsDesignFilterResponse: …`

          - `amino_acids: List[str]`

            Single-letter amino-acid codes that must not occur in the filtered designed region.

          - `type: Literal["excluded_amino_acids"]`

            - `"excluded_amino_acids"`

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterMaxHydrophobicFractionDesignFilterResponse: …`

          - `max_fraction: float`

          - `type: Literal["max_hydrophobic_fraction"]`

            - `"max_hydrophobic_fraction"`

        - `class InputGenericProteinSequenceRedesignRunInputResponseGlobalDesignFilterExcludedSequenceMotifsDesignFilterResponse: …`

          - `motifs: List[str]`

            Sequence motifs that must not occur. X matches any single residue.

          - `type: Literal["excluded_sequence_motifs"]`

            - `"excluded_sequence_motifs"`

      - `idempotency_key: Optional[str]`

      - `workspace_id: Optional[str]`

        Workspace to run this redesign in.

  - `livemode: bool`

    Whether this resource was created with a live API key.

  - `pipeline: Literal["boltz-protein-redesign"]`

    - `"boltz-protein-redesign"`

  - `pipeline_version: Literal["v2026-07-14"]`

    - `"v2026-07-14"`

  - `progress: Optional[Progress]`

    - `num_proteins_generated: int`

      Number of protein binders generated so far

    - `total_proteins_to_generate: int`

      Total number of protein binders requested

    - `latest_result_id: Optional[str]`

      ID of the most recently generated result

  - `started_at: Optional[datetime]`

  - `status: Literal["pending", "running", "succeeded", 2 more]`

    - `"pending"`

    - `"running"`

    - `"succeeded"`

    - `"failed"`

    - `"stopped"`

  - `stopped_at: Optional[datetime]`

  - `workspace_id: str`

    Workspace ID

  - `idempotency_key: Optional[str]`

    Client-provided idempotency key

### Sequence Redesign Delete Data Response

- `class SequenceRedesignDeleteDataResponse: …`

  - `id: str`

    ID of the resource whose data was deleted

  - `data_deleted: Literal[true]`

    - `true`

  - `data_deleted_at: datetime`

    When the data was deleted

### Sequence Redesign Estimate Cost Response

- `class SequenceRedesignEstimateCostResponse: …`

  Estimate response with monetary values encoded as decimal strings to preserve precision.

  - `breakdown: Breakdown`

    Cost breakdown for the billed application.

    - `application: Literal["structure_and_binding", "small_molecule_design", "small_molecule_library_screen", 4 more]`

      - `"structure_and_binding"`

      - `"small_molecule_design"`

      - `"small_molecule_library_screen"`

      - `"protein_design"`

      - `"protein_redesign"`

      - `"protein_library_screen"`

      - `"adme"`

    - `cost_per_unit_usd: str`

      Estimated cost per displayed unit as a decimal string, rounded up to 4 decimal places. This may include token-size multipliers or generation overhead; estimated_cost_usd is the authoritative total.

    - `num_units: int`

      Number of billable units in the estimate. The unit depends on the endpoint: samples for structure-and-binding, molecules for ADME, and requested proteins or molecules for design/screen endpoints.

  - `disclaimer: str`

  - `estimated_cost_usd: str`

    Estimated total cost as a decimal string
