---
title: "Upload a document or selfie image"
method: POST
path: "/api/transactions/images"
tags: ["Transaction"]
---

# Upload a document or selfie image

`POST /api/transactions/images`

## Request

- Base URL: `https://verification.trulioo.com`
- URL: `https://verification.trulioo.com/api/transactions/images`
- Auth: HTTP bearer

Upload file(s) for a verification process. Accepts:
- JPEG (`image/jpeg`)
- PNG (`image/png`)
- PDF (`application/pdf`)

Maximum file size: 10 MB. Minimum: 20 KB.

## Headers

- `Accept-Version` string, required

## Request body `multipart/form-data`

- object
  - `context` 'front' | 'back' | 'live' | 'pdf', required: `front` or `back` for document images, `live` for selfie, or `pdf` for PDF uploads.
  - `body` string, binary, required: The file to upload. Accepts image/jpeg, image/png, or application/pdf.

## Response `200`

Upload accepted.

- UploadResponse
  - `imageId` string, uuid: Identifier of the uploaded image.

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `413`: Payload Too Large
- `422`: Unprocessable Entity
- `429`: Too Many Requests (rate limited)
- `500`: Internal Server Error

---

[API](https://skmtc.dev/trulioo/apis/kyc-document-api.md) - [All operations](https://skmtc.dev/trulioo/apis/kyc-document-api/llms.txt) - [OpenAPI document](https://skmtc.dev/trulioo/apis/kyc-document-api/revisions/53a65736c9f8?raw)
