---
title: "Start new downloads"
method: POST
path: "/downloads"
tags: ["Downloads Management"]
---

# Start new downloads

`POST /downloads`

Initiates new downloads.

## Request body

- DownloadCreate[]
  - `source_url` string, uri, required
  - `file_name` string — A filename that is valid on macOS, Windows, and Linux
  - `target_directory` string — A uri-style relative path that is valid on macOS, Windows, and Linux
  - `file_hash` string — The hash type and hash of the file separated by colon
  - `file_size` integer — Bytes

## Response `200`

Downloads started

- Download[]
  - `id` string, uuid, required
  - `source_url` string, uri, required
  - `file_name` string — A filename that is valid on macOS, Windows, and Linux
  - `target_directory` string — A uri-style relative path that is valid on macOS, Windows, and Linux
  - `file_hash` string — The hash type and hash of the file separated by colon
  - `file_size` integer — Bytes
  - `downloaded` integer — Bytes
  - `progress` number, nullable
  - `status` 'downloading' | 'paused' | 'processing' | 'completed' | 'verified' | 'failed'
  - `start_time` number, nullable
  - `transfer_rate` number, nullable

## Other responses

- `400` — Invalid request

---

[API](https://skmtc.net/pai-os/apis/personal-artificial-intelligence-operating-system-pai-os-api.md) · [All operations](https://skmtc.net/pai-os/apis/personal-artificial-intelligence-operating-system-pai-os-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/pai-os/personal-artificial-intelligence-operating-system-pai-os-api/revisions/3c144b366e19/schema)
