---
title: "Get S3 upload fields"
method: GET
path: "/upload"
---

# Get S3 upload fields

`GET /upload`

Request S3 upload fields for multistep upload process. Returns a pre-signed S3 URL
and form fields that can be used to upload files directly to S3.

## Response `200`

S3 upload fields returned successfully

- union[] — S3 URL and form fields for pre-signed POST upload
  - union
    - string, uri — S3 upload URL
    - object — Form fields to include in multipart/form-data upload
      - `key` string — S3 object key pattern
      - `AWSAccessKeyId` string — AWS access key ID
      - `x-amz-security-token` string — AWS security token
      - `x-amz-storage-class` string — S3 storage class
      - `policy` string — Base64-encoded upload policy
      - `signature` string — Upload signature
      - `acl` string — Access control list setting
      - `success_action_redirect` string, uri — Redirect URL after successful upload

## Other responses

- `401` — Authentication required

---

[API](https://skmtc.dev/planscore/apis/planscore-api.md) · [All operations](https://skmtc.dev/planscore/apis/planscore-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/planscore/planscore-api/revisions/124d888b2d0d/schema)
