---
title: "upload file or create folder"
method: PUT
path: "/api/v1/files/{storage}/{path}"
---

# upload file or create folder

`PUT /api/v1/files/{storage}/{path}`

## Headers

- `Content-Length` integer
- `Content-Type` string
- `Print-After-Upload` '?0' | '?1' — ?0=False, ?1=True, according RFC8941/3.3.6
- `Overwrite` '?0' | '?1' — ?0=False, ?1=True, according RFC8941/3.3.6

## Response `201`

Created

## Other responses

- `401` — Unauthorized
- `404` — Not Found
- `409` — Conflict

## Changes

- **2023-08-02** `889dddee7cfa` — 1 info
  - added optional request body
- **2023-02-27** `b138acdc7eeb` — 3 breaking, 3 info
  - the `Print-After-Upload` request header's property undefined was restricted to a list of enum values
  - the `header` request parameter `Print-After-Upload` was restricted to a list of enum values
  - for the `header` request parameter `Print-After-Upload`, default value was changed from `false` to `?0`
  - added the new enum value `?0` to the `header` request parameter `Print-After-Upload`
  - …2 more
- **2022-08-12** `78c9d8691188` — 1 info
  - added the new optional `header` request parameter `Overwrite`
- **2022-06-29** `868974146778` — 3 info
  - endpoint added
  - added the new optional `header` request parameter `Accept` to all path's operations
  - added the new optional `header` request parameter `Accept-Language` to all path's operations
- **2021-02-22** `30eda14983ed` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/prusa3d/apis/prusalink-web/changes/api/v1/files/:storage/:path/put.md)

---

[API](https://skmtc.dev/prusa3d/apis/prusalink-web.md) · [All operations](https://skmtc.dev/prusa3d/apis/prusalink-web/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/prusa3d/prusalink-web/revisions/e0a5f7abc4df/schema)
