---
title: "Upload a plugin's bundle"
method: PUT
path: "/v1/plugins/bundles/{digest}"
tags: ["Plugins"]
---

# Upload a plugin's bundle

`PUT /v1/plugins/bundles/{digest}`

## Request

- Base URL: `https://api.uxduck.com`
- URL: `https://api.uxduck.com/v1/plugins/bundles/{digest}`
- Auth: HTTP bearer

At most 5 MB. Its SHA-256 must be the digest in the path. Kept once, however many accounts upload it.

## Path parameters

- `digest` string, required

## Request body `application/octet-stream`

- string, binary

## Response `200`

Kept

- object
  - `digest` string, required
  - `bytes` integer, required

## Other responses

- `400`: Not a digest, or the bundle does not match it
- `401`: Not signed in
- `413`: Over 5 MB
- `503`: Accounts or plugin storage are not set up here

---

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