Expand my Community achievements bar.

Join us for our Coffee Break Sweepstakes on July 16th! Come ask your questions or share your use cases on Creative Briefs for a chance to win a piece of Workfront swag!
SOLVED

Download document using the API

Avatar

Level 9

Hello,

 

I would like to download the binary of a document via the API to get a blob object. 

Is this somehow possible? I cannot find the corresponding information using the API-explorer.

I know, that I can retrieve the field downloadURL, but using this requires to be logged in to Workfront.

 

Thanks in advance.

 

Regards

Lars

Topics

Topics help categorize Community content and increase your ability to discover relevant content.

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

That's what you have to do. You have to get the download url, and then download it with that url, and both of those require an API key or a session ID.

View solution in original post

6 Replies

Avatar

Correct answer by
Community Advisor

That's what you have to do. You have to get the download url, and then download it with that url, and both of those require an API key or a session ID.

Avatar

Level 2

How can I get the file extension in the endpoint -  /attask/api/v17.0/document/search?projectID=xxxxxxxxx&fields=folders,downloadURL . I tried adding fileType, but I'm getting below message.

 

"field 'fileType' is not available"
Could you please help?

Avatar

Community Advisor

The file Type parameter is on the version object, so if you include currentVersion:ext, that should give it to you.

Avatar

Level 1

Hey Chris,

This information has be quite useful, however curious how to navigate the Download URL call returning the HTML webpage vs. downloading the binary. The API Key authenticates, but does returns the HTML page. Any thoughts?

Avatar

Level 1

I am also having a problem downloading a document. I am providing an apiKey (I've tried in both $body and $header) in a CURL command through Powershell.

The $url variable contains something like this:
https://<mycompany>.my.workfront.com/internal/document/download?ID=abc123456def123456
$downloadResponse = Curl -Uri $url -Header $header -Body $body -OutFile $downloadPath

All I am getting back is a 4k file, starting with this:

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
 
<body onload="document.forms[0].submit()">
<noscript>
<p>
<strong>Note:</strong> Since your browser does not support JavaScript,
you must press the Continue button once to proceed.
</p>
</noscript>