---
title: "Create customer RFI document upload request"
method: POST
path: "/v1/customers/{customerId}/rfis/{id}/documents/upload-request"
tags: ["RFIs"]
---

# Create customer RFI document upload request

`POST /v1/customers/{customerId}/rfis/{id}/documents/upload-request`

Authenticated customer-scoped upload request for Case RFI documents. Verifies the RFI belongs to the customer, then returns a signed upload URL.

## Path parameters

- `customerId` string, required
- `id` string, required

## Headers

- `X-API-Key` string

## Request body

- PublicRfiUploadRequestDto
  - `requirementKey` string
  - `fileName` string, required
  - `contentType` string, required
  - `isAdditional` boolean

## Response `201`

- PublicRfiUploadResponseDto
  - `documentId` string, required
  - `uploadUrl` string, required
  - `expiresAt` string, date-time, required

## Other responses

- `401` — Unauthorized - Invalid or missing authentication credentials

## Changes

- **2026-09-26** `0b0a3231b482` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/infinite/apis/infinite-api/changes/v1/customers/:customerId/rfis/:id/documents/upload-request/post.md)

---

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