---
title: "Get upload part URL"
method: POST
path: "/preview/v2/images/{id}/parts"
tags: ["Images"]
---

# Get upload part URL

`POST /preview/v2/images/{id}/parts`

## Request

- Base URL: `https://api.sfcompute.com`
- URL: `https://api.sfcompute.com/preview/v2/images/{id}/parts`
- Auth: HTTP bearer

> ⚠️ This endpoint is in [public preview](/preview/roadmap).

Get a presigned URL to upload one part of a multipart image upload.

## Path parameters

- `id` string, required: A resource path like 'sfc:image:acme:prod:my-image' _or_ an ID. Resource paths are human-readable but not stable - they change when resources are renamed or moved. IDs are stable and permanent.

## Request body

- SfcApiUploadPartRequest
  - `part_id` integer, required: Caller-assigned part number, starting at 1.

## Response `200`

Upload URL generated

- SfcApiUploadPartResponse
  - `url` string, required: Presigned URL to upload the part.
  - `expires_at` integer, required: Unix timestamp.

## Other responses

- `400`: Validation failed
- `401`: Unauthorized request
- `404`: Image not found
- `500`: Internal server error

## Changes

- **2026-05-18** `b819ba3108b3`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/sfcompute/apis/san-francisco-compute-documentation/changes/preview/v2/images/:id/parts/post.md)

---

[API](https://skmtc.dev/sfcompute/apis/san-francisco-compute-documentation.md) - [All operations](https://skmtc.dev/sfcompute/apis/san-francisco-compute-documentation/llms.txt) - [OpenAPI document](https://skmtc.dev/sfcompute/apis/san-francisco-compute-documentation/revisions/93dd7661e9bb?raw)
