I'm using HTTP::Request::Common and I'd like my request to look like this: Connected by ('127.0.0.1', 32800) POST / HTTP/1.1 Connection: close Host: 127.0.0.1 User-Agent: libwww-perl/5.65 Content-Length: 233 Content-Type: multipart/form-data; boundary="----bla--" ----bla-- Content-Type: text/XML; name=outgoingfile.xml Content-Transfer-Encoding: binary Content-Disposition: attatchment; filename=outgingfile.xml Content-ID: baaaaa! ----bla-- Content-Type: text/XML; name=outgoingfile.xml Content-Transfer-Encoding: binary Content-Disposition: attatchment; filename=outgingfile.xml Content-ID: baaaaa! ie there are two documents attatched, with the headers and boundaries as shown. The perl code I'm using works just fine for a single document and looks something like this: my $request = POST $url, Content_Type => 'form-data', Content => [ filename => 'foo.xml', formname => 'bababa', formcontent => 'this is a file' ]; my $results = $ua->request($request); How can I get this now to append a second document, with a new boundary line followed by some header info and then a bit more xml as shown in the first snipped? christo