Using @tlikarish’s suggestion of setting this up as a resumable upload rather than multipart/related, I was able to get this working. The pipeline is a REST POST used to create the resumable upload UIR followed by a REST PUT that uploads the file to the URI.
Red boxes indicate the fields you need to configure and how I configured them. Since this is a basic demonstration pipeline you will need to modify it to account for your needs, such as paramaterization. Note that the file does not upload in the REST POST snap.
Here are the Query Parameters and HTTP Headers set based on Google’s documentation:
Here is the REST PUT snap which uses the $response.headers.location URI from the REST POST to upload the file. That link will contain a token to ensure the file data is associated with the metadata we previously sent via REST POST.
Here is a screenshot of the file going into my Google Drive with the correct name.
Finally, there is a caveat to this approach: the multi-part form data included by the REST POST snap is added to the file (rows 1-4 and the last row, row 8 in this example).
Here is the pipeline and sample test.csv file:
REST_TO_GOOGLE_DRIVE.slp (17.6 KB)
test.csv.zip (908 Bytes)
I’ll provide another update if I can find a way around the additional HTTP Body information making its way into the file.