---
title: "Download purchased downloadable product"
method: GET
path: "/customer-downloadable-products/{id}/download"
tags: ["Customer Order"]
---

# Download purchased downloadable product

`GET /customer-downloadable-products/{id}/download`

## Request

- Base URL: `http://localhost:8000/api/shop`
- URL: `http://localhost:8000/api/shop/customer-downloadable-products/{id}/download`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/bagisto/apis/bagisto-shop-api/docs/customer-downloadable-products/:id/download/get.ts> (a function with typed inputs; its response is checked against the schema)

Streams the purchased file. Increments `download_used` on each successful call. `{id}` is the `downloadable_link_purchased` row id from `GET /customer-downloadable-products`.

## Path parameters

- `id` integer, required

## Headers

- `Authorization` string, required
- `X-STOREFRONT-KEY` string, required
- `X-Locale` string
- `X-Channel` string
- `X-Currency` string

## Response `200`

Binary file stream

## Other responses

- `401`: Unauthorized
- `403`: Forbidden (pending / download limit exceeded)
- `404`: Download not found

---

[API](https://skmtc.dev/bagisto/apis/bagisto-shop-api.md) - [All operations](https://skmtc.dev/bagisto/apis/bagisto-shop-api/llms.txt) - [OpenAPI document](https://skmtc.dev/bagisto/apis/bagisto-shop-api/revisions/f619df36bf29?raw)
