---
title: "Get signed URL for upload"
method: GET
path: "/api/v1/storage/signed-url/upload"
tags: ["Storage"]
---

# Get signed URL for upload

`GET /api/v1/storage/signed-url/upload`

## Request

- Base URL: `https://numonic.ai`
- URL: `https://numonic.ai/api/v1/storage/signed-url/upload`
- Auth: API key in header `x-api-key`

Generate a pre-signed URL for direct file upload to object storage. This is step 1 of the three-phase upload flow: (1) get signed URL, (2) upload file directly to storage, (3) confirm upload via the asset creation endpoint to trigger metadata extraction and indexing.

## Response `200`

Signed upload URL generated

- SignedUrlResponse
  - `signedUrl` string, required: Pre-signed URL for direct upload/download to storage
  - `path` string: Storage path for the file
  - `token` string: Upload token (for upload URLs)

## Other responses

- `401`: Authentication required

---

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