---
title: "Download Output"
method: GET
path: "/download/{process_id}"
tags: ["Download"]
---

# Download Output

`GET /download/{process_id}`

A presigned download link to the image is provided in the response, as well as an expiration time (in Unix time). If the image is not ready, this request will fail with a conflict error. Images are stored for **7 days** after the image has been processed.

## Path parameters

- `process_id` string, uuid, required

## Response `200`

Presigned download URL

- DownloadResponse
  - `download_url` string, required — The presigned URL for downloading the image. This URL is temporary and will **expire after 1 hour**.
  - `head_url` string, required — The presigned URL for fetching the metadata of the image's file. Useful for retrieving the image's size before download. This URL is temporary and will **expire after 1 hour**.
  - `expiry` integer, required — The expiration time (in Unix epoch) of the presigned download link, set as 1 hour after download link generation. After this time, the link will no longer be valid.

## Other responses

- `400` — The request contains malformed data in the body, path, or query parameters.
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Enhancement request with the provided ID not found
- `409` — The request conflicts with the current state.
- `429` — Too many requests hit the API too quickly. A backoff (e.g. exponential) is recommended for your requests.
- `500` — Internal server error

---

[API](https://skmtc.net/topazlabs/apis/image-api.md) · [All operations](https://skmtc.net/topazlabs/apis/image-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/topazlabs/image-api/revisions/7610937217a4/schema)
