Maybe bug in `companionUrl` for AwsS3Multipart


I have a custom companion, say the URL is https://my.companion.url. When I pass tht into Uppy, as per the docs, I’m getting a 404 error on attempting an upload.


  const uppy = new Uppy({ logger: debugLogger, options })
    .use(AwsS3Multipart, {
      companionUrl: "https://my.companion.url",


POST http://localhost:5173/%22https://my.companion.url%22;/s3/multipart 404 (Not Found)
fetchWithNetworkError @ fetchWithNetworkError.js:7
_request2 @ RequestClient.js:251
await in _request2 (async)
post @ RequestClient.js:206
createMultipartUpload @ index.js:559
(anonymous) @ RateLimitedQueue.js:161
_call2 @ RateLimitedQueue.js:258
run @ RateLimitedQueue.js:140
(anonymous) @ RateLimitedQueue.js:156
(anonymous) @ RateLimitedQueue.js:155
getUploadId @ index.js:162
uploadFile @ index.js:203
_createUpload2 @ MultipartUploader.js:230
start @ MultipartUploader.js:168
(anonymous) @ index.js:823
uploadFile @ index.js:725
(anonymous) @ index.js:967
upload @ index.js:960
_runUpload2 @ Uppy.js:1704
await in _runUpload2 (async)
(anonymous) @ Uppy.js:1285
Promise.then (async)
upload @ Uppy.js:1268
StatusBar2.startUpload @ StatusBar.js:93
g @ props.js:154

Am I doing something wrong? Or is this a bug?

EDIT: I just tried with the AwsS3 destination and got the same error.


hard to say without seeing more code, but I assume that my.companion.url is not the real URL.
I can see from your error that https://my.companion.url%22;/s3/multipart looks like an invalid URL - not sure what’s happening there with %22;. %22 is " so it’s "; - looks like some javascript snuck in there somehow

Yes I literally just found a stray ; after the variable in my env file. I knew semicolons were made optional for a reason …