---
title: "Get a path-scoped desktop upload URL"
method: POST
path: "/v1/desktop/native-recordings/presign"
tags: ["Desktop"]
---

# Get a path-scoped desktop upload URL

`POST /v1/desktop/native-recordings/presign`

## Request

- Base URL: `https://api.quillhub.ai`
- URL: `https://api.quillhub.ai/v1/desktop/native-recordings/presign`
- Auth: HTTP bearer

## Request body

- object
  - `filename` string, required
  - `mime_type` string, nullable
  - `recording_id` string: Stable recorder-generated identity. Required by the native-recording presign route and reused across retries.

## Response `200`

Presigned URL.

- object
  - `key` string, required
  - `presigned_put_url` string, uri, required
  - `expires_at` string, required

## Other responses

- `401`: Unauthenticated.

---

[API](https://skmtc.dev/quillhub/apis/quillhub-public-api.md) · [All operations](https://skmtc.dev/quillhub/apis/quillhub-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/quillhub/apis/quillhub-public-api/revisions/5bd42ee9d967?raw)
