Skip to main content
POST
Upload a portal session file

Path Parameters

client_id
integer
required

Client id in the current organization.

session_id
string
required

Opaque donor or recipient portal session token.

Body

multipart/form-data

Validated request fields for this operation.

file
file
required

Multipart file. Deployed PHP upload/post limits apply; direct images are additionally limited to50MiB and donation attachments to10MiB.

key
string
required

Permitted storage object key. URL-decoded and trimmed; empty, control characters, backslashes and dot/path-traversal segments are rejected.

Maximum string length: 1024
Example:

"550e8400-e29b-41d4-a716-446655440000.jpg"

content_type
string | null

Optional declared MIME type; must match detected content except validated CSV/plain-text and HEIC compatibility cases.

Maximum string length: 191
Example:

"image/jpeg"

Response

Operation result.

status
string

HTTP contracts traced from the deployed controller and delegated validation/serialization.

Example:

"success"

key
string

Final stored key; HEIC conversion can change the extension.

Example:

"550e8400-e29b-41d4-a716-446655440000.jpeg"

content_type
string

Stored MIME type.

Example:

"image/jpeg"

filename
string

Original filename, adjusted when converted.

Example:

"photo.jpeg"

converted
boolean

Whether the original HEIC/HEIF was converted to JPEG.

Example:

false

url
string<uri>

Public file URL.

Example:

"https://cdn.example.org/photo.jpeg"

upload_receipt
string<uuid>

Recipient-session attachment receipt UUID when eligible. Expires after60minutes and is bound to that session, record and key.