## Start an ADME prediction

`predictions.adme.start(AdmeStartParams**kwargs)  -> AdmeStartResponse`

**post** `/compute/v1/predictions/adme`

Submit a prediction job that returns Tier 1 ADME summary values for each requested molecule.

### Parameters

- `input: Input`

  - `molecules: Iterable[InputMolecule]`

    Molecules to score (1-128 per request). Results are returned in the same order as this list.

    - `smiles: str`

      SMILES string of the molecule to predict ADME properties for.

    - `id: Optional[str]`

      Optional client-provided identifier. Returned as `external_id` in the matching output item.

- `model: Literal["adme-v1"]`

  Model to use for prediction

  - `"adme-v1"`

- `idempotency_key: Optional[str]`

  Client-provided key to prevent duplicate submissions on retries

- `workspace_id: Optional[str]`

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

### Returns

- `class AdmeStartResponse: …`

  - `id: str`

    Unique prediction identifier

  - `completed_at: Optional[datetime]`

  - `created_at: datetime`

  - `data_deleted_at: Optional[datetime]`

    When the input/output data was deleted, or null if still available

  - `error: Optional[Error]`

    Error details when failed

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

  - `expires_at: Optional[datetime]`

    When this resource and its associated data will be permanently deleted. Null while still in progress.

  - `input: Optional[Input]`

    Prediction input (null if data deleted)

    - `molecules: List[InputMolecule]`

      Molecules to score (1-128 per request). Results are returned in the same order as this list.

      - `smiles: str`

        SMILES string of the molecule to predict ADME properties for.

      - `id: Optional[str]`

        Optional client-provided identifier. Returned as `external_id` in the matching output item.

  - `livemode: bool`

    Whether this resource was created with a live API key.

  - `model: Literal["adme-v1"]`

    Model used for prediction

    - `"adme-v1"`

  - `output: Optional[Output]`

    Prediction output when succeeded

    - `molecules: List[OutputMolecule]`

      Per-molecule results in the same order as the request. Successful molecules carry an `adme` summary. Failed molecules carry `status: "failed"` and a non-null `error`.

      - `class OutputMoleculeAdmeMoleculeSucceeded: …`

        - `id: str`

          Internally generated molecule identifier.

        - `adme: OutputMoleculeAdmeMoleculeSucceededAdme`

          Tier 1 ADME summary values for this molecule.

          - `lipophilicity: float`

            Lipophilicity score from the internal LogD prediction.

          - `permeability: float`

            Permeability score for this molecule.

          - `solubility: Literal["high-confidence", "medium-confidence", "high-risk"]`

            Solubility judgement for this molecule.

            - `"high-confidence"`

            - `"medium-confidence"`

            - `"high-risk"`

        - `error: None`

        - `smiles: str`

          Echoed SMILES from the request.

        - `status: Literal["succeeded"]`

          - `"succeeded"`

        - `external_id: Optional[str]`

          Client-provided molecule identifier, if one was supplied.

      - `class OutputMoleculeAdmeMoleculeFailed: …`

        - `id: str`

          Internally generated molecule identifier.

        - `adme: None`

        - `error: OutputMoleculeAdmeMoleculeFailedError`

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

        - `smiles: str`

          Echoed SMILES from the request.

        - `status: Literal["failed"]`

          - `"failed"`

        - `external_id: Optional[str]`

          Client-provided molecule identifier, if one was supplied.

  - `started_at: Optional[datetime]`

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

    - `"pending"`

    - `"running"`

    - `"succeeded"`

    - `"failed"`

  - `version: str`

    Model version used for prediction

  - `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.predictions.adme.start(
    input={
        "molecules": [{
            "smiles": "x"
        }]
    },
    model="adme-v1",
)
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",
  "error": {
    "code": "code",
    "message": "message",
    "details": {}
  },
  "expires_at": "2019-12-27T18:11:19.117Z",
  "input": {
    "molecules": [
      {
        "smiles": "x",
        "id": "x"
      }
    ]
  },
  "livemode": true,
  "model": "adme-v1",
  "output": {
    "molecules": [
      {
        "id": "id",
        "adme": {
          "lipophilicity": 0,
          "permeability": 0,
          "solubility": "high-confidence"
        },
        "error": null,
        "smiles": "smiles",
        "status": "succeeded",
        "external_id": "external_id"
      }
    ]
  },
  "started_at": "2019-12-27T18:11:19.117Z",
  "status": "pending",
  "version": "version",
  "workspace_id": "workspace_id",
  "idempotency_key": "idempotency_key"
}
```
