Upload file

Upload a file and link it to the provided Moov account. The maximum file size is 10MB. Each account is allowed a maximum of 50 files. Acceptable file types include csv, jpg, pdf, and png.

To use this endpoint from the browser, you’ll need to specify the /accounts/{accountID}/files.write scope when generating a token.
POST
/accounts/{accountID}/files
cURL
1
2
3
4
5
6
curl -X POST "https://api.moov.io/accounts/{accountID}/files" \
  -H "Authorization: Bearer {token}" \
  --form \
  -F "file=@/path/to/your/file.txt" \
  -F "filePurpose=business_verification" \
  -F "metadata={\"representative_id\":\"UUID\"}"
200 400 404 422 429
File added.
Describes a file linked to a Moov account.
{
  "accountID": "ec7e1848-dc80-4ab0-8827-dd7fc0737b43",
  "createdOn": "2019-08-24T14:15:22Z",
  "decisionReason": "not correct file",
  "fileID": "ec7e1848-dc80-4ab0-8827-dd7fc0737b43",
  "fileName": "logo.png",
  "filePurpose": "identity_verification",
  "fileSizeBytes": 1024,
  "fileStatus": "pending",
  "metadata": "{\"error_code\": \"document-name-mismatch\", \"requirement_id\": \"document.individual.verification\", \"representative_id\": \"c63ab175-251d-497e-a267-7346d087e180\", \"comment\": \"testing comment\"",
  "updatedOn": "2019-08-24T14:15:22Z"
}
The image provided could not be serialized.
No account with the specified accountID was found.
The request body could not be processed.
Request was refused due to rate limiting.

Retry-After

number

Path parameters

accountID

string <uuid> required
ID of the account.

Body

multipart/form-data
Request to attach a file to an account.

file

string<binary> required
The file to be added. Valid types are [csv, png, jpeg, pdf].

filePurpose

string<enum> required
Possible values: identity_verification, business_verification, representative_verification, individual_verification, merchant_underwriting, account_requirement

metadata

string<json>
Additional metadata to be stored with the file. Valid keys are [representative_id, comment, requirement_id, error_code]

Response

application/json
Describes a file linked to a Moov account.

accountID

string<uuid> <=36 characters
UUID

createdOn

string<date-time> <=24 characters

decisionReason

string

fileID

string<uuid> <=36 characters
UUID

fileName

string <=64 characters

filePurpose

string<enum>
Possible values: identity_verification, business_verification, representative_verification, individual_verification, merchant_underwriting, account_requirement

fileSizeBytes

integer

fileStatus

string<enum>
The file status.
Possible values: pending, approved, rejected

metadata

string<json>

updatedOn

string<date-time> <=24 characters