Get signed URLs to upload beneficiary documents

This endpoint does not accept file bytes. It returns short-lived
pre-signed S3 upload URLs so you can attach supporting documents to a
beneficiary (when Verto compliance requires them).


How to use (3 steps)

  1. Request upload URLs — POST /uploadDocuments with a JSON array
    of { fileName, fileType } objects.
    Allowed fileName extensions: jpeg, jpg, pdf, png, svg.

  2. Upload each file — HTTP PUT the file bytes to the matching
    items[].link from the response.

    • Use the file's content type (for example application/pdf).
    • Each link expires in 15 minutes.
    • Do not PUT to items[].url — that is not the upload target.
  3. Attach on create/update — when calling POST /recipients or
    PUT /recipients/{recipientId}, send:

    "documentDetails": [
      { "key": "<items[].key from step 1>", "name": "<original fileName>" }
    ]

Most integrations can skip this entire flow and omit documentDetails
unless Verto asks for supporting documents.

📘

Check your base URL

Each Verto service has its own host. Use the base URL shown in the endpoint definition on this page — do not reuse a host from another service.

Sandbox hosts end in -sandbox.vertofx.com; the matching production host replaces sandbox with beta. Sending a request to the wrong environment returns 403.

See URLs (Sandbox vs Production) for the full service-by-service list.


This endpoint returns a short-lived upload URL. It does not accept the file itself.


Flow

  1. Call this endpoint with a JSON array of { fileName, fileType }.
  2. PUT each file to the matching items[].link from the response (expires in 15 minutes).
  3. On Create beneficiary or Update beneficiary, send:
"documentDetails": [
  {
    "key": "<items[].key from step 1>",
    "name": "<original fileName>"
  }
]

Allowed extensions: jpeg, jpg, pdf, png, svg.

Most integrations can skip this flow unless Verto asks for supporting documents.

Query Params
string

Optional. Prefer omitting this — uploads use the company from your
access token. If you send companyId, it must match that company.

Body Params

JSON array of files to prepare for upload. Send the array as the raw
request body (not wrapped in an object).

string
required

Original file name including extension. Extension must be one of:
jpeg, jpg, pdf, png, svg.

string

MIME type of the file (for example application/pdf or image/jpeg).
Accepted for compatibility with clients; extension on fileName is
what the service validates today.

Responses

Language
Credentials
Bearer
JWT
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json