---
title: "Create a File"
method: POST
path: "/files"
tags: ["Files"]
---

# Create a File

`POST /files`

Before uploading a file, you must create a `File` resource.

Once created, you can [upload](/guides/platform-payments/onboarding-sellers/seller-onboarding-uploading-files/) your file to the new `File` resource.

## Headers

- `Finix-Version` string
- `Content-Type` string

## Request body

- CreateFile
  - `display_name` string — The human-readable name to use for the `File`.
  - `linked_to` string, required — The ID of the resource the `File` will be linked to. This can be either a Merchant ID or Identity ID.
  - `tags` Tags, nullable — Include up to 50 `key: value` pairs to annotate requests with custom metadata. - Maximum character length for individual `keys` is 40. - Maximum character length for individual `values` is 500. (For example, `order_number: 25`, `item_type: produce`, `department: sales`)
  - `type` 'BANK_STATEMENT' | 'BANK_STATEMENT_ONE_MONTH' | 'BANK_STATEMENT_THREE_MONTHS' | 'BUSINESS_ADDRESS_DOCUMENT' | 'BUSINESS_ADDRESS_VERIFICATION' | 'BUSINESS_INCORPORATION_DOCUMENT' | 'BUSINESS_OWNERSHIP_STRUCTURE' | 'BUSINESS_REGISTRATION' | 'BUSINESS_REGISTRATION_DOCUMENT' | 'BUSINESS_TAX_EXEMPTION_STATUS_DOCUMENT' | 'BUSINESS_TAX_ID_DOCUMENT' | 'DEVICE_IDLE_IMAGE' | 'DIGITAL_SIGNATURE' | 'DRIVERS_LICENSE_BACK' | 'DRIVERS_LICENSE_FRONT' | 'ENHANCED_DUE_DILIGENCE_DOCUMENT' | 'IDENTIFICATION_CARD_BACK' | 'IDENTIFICATION_CARD_FRONT' | 'OTHER' | 'OWNER_GOVERNMENT_ISSUED_PHOTO_ID' | 'OWNER_TAX_ID_DOCUMENT' | 'PASSPORT' | 'PCI_DOCUMENT' | 'PROCESSING_STATEMENT' | 'SCREEN_RECORDING' | 'TAX_DOCUMENT' | 'VIDEO_DOCUMENT', required — The type of document.

## Response `201`

A single `File`

- File
  - `id` string — The ID of the resource.
  - `created_at` string, date-time — Timestamp of when the object was created.
  - `updated_at` string, date-time — Timestamp of when the object was last updated.
  - `application` string — ID of the `Application` the resource was created under.
  - `display_name` string — The human-readable name of the `File`. The file name format is `<type>_<id>` by default.
  - `extension` string, nullable — The extension of the file.
  - `file_name` string, nullable — The name of the uploaded `File`. It is `null` when the `File` resource is first created and is automatically updated to the uploaded file's name. You cannot change this field.
  - `identity_id` string, nullable — The ID of the `Application` that the `File` was created under.
  - `linked_to` string — The ID of the resource the `File` is linked to. This can be either a Merchant ID or Identity ID.
  - `linked_type` string — The type of the resource that the `File` is linked to.
  - `platform_id` string — The ID of the `Platform` that the `File` was created under.
  - `size_in_bytes` integer, nullable — The size of the uploaded `File` in bytes. It is set to `null` when the `File` resource is first created and updates automatically after a `File` is uploaded.
  - `status` 'REQUIRES_UPLOAD' | 'PENDING' | 'UPLOADED' | 'INVALID' — The file's upload status.
  - `tags` Tags, nullable — Include up to 50 `key: value` pairs to annotate requests with custom metadata. - Maximum character length for individual `keys` is 40. - Maximum character length for individual `values` is 500. (For example, `order_number: 25`, `item_type: produce`, `department: sales`)
  - `type` 'BANK_STATEMENT' | 'BANK_STATEMENT_ONE_MONTH' | 'BANK_STATEMENT_THREE_MONTHS' | 'BUSINESS_ADDRESS_DOCUMENT' | 'BUSINESS_ADDRESS_VERIFICATION' | 'BUSINESS_INCORPORATION_DOCUMENT' | 'BUSINESS_OWNERSHIP_STRUCTURE' | 'BUSINESS_REGISTRATION' | 'BUSINESS_REGISTRATION_DOCUMENT' | 'BUSINESS_TAX_EXEMPTION_STATUS_DOCUMENT' | 'BUSINESS_TAX_ID_DOCUMENT' | 'DEVICE_IDLE_IMAGE' | 'DIGITAL_SIGNATURE' | 'DRIVERS_LICENSE_BACK' | 'DRIVERS_LICENSE_FRONT' | 'ENHANCED_DUE_DILIGENCE_DOCUMENT' | 'IDENTIFICATION_CARD_BACK' | 'IDENTIFICATION_CARD_FRONT' | 'OTHER' | 'OWNER_GOVERNMENT_ISSUED_PHOTO_ID' | 'OWNER_TAX_ID_DOCUMENT' | 'PASSPORT' | 'PCI_DOCUMENT' | 'PROCESSING_STATEMENT' | 'SCREEN_RECORDING' | 'TAX_DOCUMENT' | 'VIDEO_DOCUMENT' — The type of document. Finix may return more enums than those provided. Ensure your code accepts additional enums returned by Finix.

## Other responses

- `400` — Bad Request. The server cannot process the request due to malformed syntax or invalid data.
- `401` — Unauthorized. Authentication is required and has failed or has not been provided.
- `403` — Forbidden. The client is authenticated but does not have permission to access the resource.
- `406` — Not Acceptable. The server could not accept the submitted request. Confirm how the request was formatted and submitted.

---

[API](https://skmtc.net/finix/apis/finix-api-reference.md) · [All operations](https://skmtc.net/finix/apis/finix-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/finix/finix-api-reference/versions/5426f6f99c52/schema)
