Genesys Cloud Web Messaging SDK file upload returns 415 for valid PDF

We’re hitting a wall with the file upload feature in the Genesys Cloud Web Messaging SDK. I’ve got the basic chat working fine, but as soon as a user tries to attach a file, the SDK throws a 415 Unsupported Media Type error. This is weird because I’ve explicitly allowed PDFs in my configuration, and the file is a standard 50KB PDF.

Here’s the relevant part of my Terraform config for the messaging application:

resource "genesyscloud_messaging_application" "main" {
 name = "Customer Support Bot"
 
 file_upload {
 enabled = true
 allowed_mime_types = [
 "application/pdf",
 "image/jpeg",
 "image/png"
 ]
 max_file_size_kb = 5000
 }
}

I’ve verified the state file, and the file_upload block is definitely there. The API returns a 200 OK when I query the app settings, so the config is applied. But on the client side, using the genesys-cloud-messenger-react package, the upload fails immediately.

I’ve tried logging the request payload in the browser network tab. It looks like this:

{
 "filename": "doc.pdf",
 "mimeType": "application/pdf",
 "size": 51200,
 "data": "base64string..."
}

The MIME type matches exactly. The size is well under the 5MB limit. I even tried lowering the limit to 1MB in Terraform just to rule out a rounding error, but no luck. The error response from the API is just {"code":"415","message":"Unsupported media type"}.

Is there a known issue with how the SDK handles the multipart/form-data encoding for file uploads? Or is there a separate setting in the Architect flow that needs to be enabled to accept these files? I’ve checked the webhook payload structure, and it seems to expect the file data inline, which might be causing the mismatch. Any ideas on what I’m missing here?