---
title: "Start a S.M.A.R.T. self-test"
method: POST
path: "/disk/smart/self-test"
tags: ["Disk"]
---

# Start a S.M.A.R.T. self-test

`POST /disk/smart/self-test`

Start a supported S.M.A.R.T. self-test on a physical disk

## Request body

- InternalHandlersDiskDiskSelfTestRequest
  - `device` string, required
  - `testType` string, required

## Response `202`

Accepted

- GithubComAlchemillahqSylveInternalAPIResponseGithubComAlchemillahqSylveInternalInterfacesServicesDiskDiskSelfTestInfo
  - `data` GithubComAlchemillahqSylveInternalInterfacesServicesDiskDiskSelfTestInfo
    - `capabilities` GithubComAlchemillahqSylveInternalInterfacesServicesDiskDiskSelfTestCapabilities
      - `abort` boolean
      - `conveyance` boolean
      - `conveyance_captive` boolean
      - `conveyance_duration_minutes` integer
      - `default` boolean
      - `execution_support_known` boolean
      - `extended` boolean
      - `extended_captive` boolean
      - `extended_duration_minutes` integer
      - `namespace_id` integer
      - `offline` boolean
      - `offline_duration_minutes` integer
      - `progress` boolean
      - `protocol` string
      - `result_log` boolean
      - `scope` string
      - `selective` boolean
      - `selective_captive` boolean
      - `short` boolean
      - `short_captive` boolean
      - `short_duration_minutes` integer
      - `single_operation` boolean
      - `supported` boolean
    - `device` string
    - `status` GithubComAlchemillahqSylveInternalInterfacesServicesDiskDiskSelfTestState
      - `checksum_valid` boolean
      - `estimated_duration_minutes` integer
      - `execution_status` string
      - `namespace_id` integer
      - `offline_collection_running` boolean
      - `offline_collection_status` string
      - `progress_known` boolean
      - `progress_pct` integer
      - `protocol` string
      - `remaining_known` boolean
      - `remaining_pct` integer
      - `results` GithubComAlchemillahqSylveInternalInterfacesServicesDiskDiskSelfTestResult[]
        - `asc` integer
        - `ascq` integer
        - `checkpoint` integer
        - `lba` integer
        - `lba_exact` string
        - `lba_valid` boolean
        - `lifetime_hours` integer
        - `lifetime_hours_exact` string
        - `mode` string
        - `nsid` integer
        - `nsid_valid` boolean
        - `outcome` string
        - `parameter_code` integer
        - `protocol` string
        - `remaining_pct` integer
        - `segment_num` integer
        - `sense_key` integer
        - `started_at` string
        - `status` string
        - `status_code` integer
        - `status_code_type` integer
        - `status_code_type_valid` boolean
        - `status_code_valid` boolean
        - `type` string
        - `vendor_specific` integer
      - `running` boolean
      - `state` string
      - `type` string
  - `error` string
  - `message` string
  - `status` string

## Other responses

- `400` — Bad Request
- `404` — Not Found
- `409` — Conflict
- `413` — Payload Too Large
- `422` — Unprocessable Entity
- `500` — Internal Server Error
- `503` — Service Unavailable

---

[API](https://skmtc.net/alchemillahq/apis/sylve-api.md) · [All operations](https://skmtc.net/alchemillahq/apis/sylve-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/alchemillahq/sylve-api/revisions/7a7bea85004e/schema)
