Expand my Community achievements bar.

SOLVED

How to create a Static Website Proof via the API

Avatar

Level 2

Hi all,

 

We're trying to integrate Workfront Proof directly into our web build process, where we have automated tooling to create translations of sites and want to initiate Proofs on all the pages, which are public.

 

We want to initiate a Workfront Proof of a static page, which you can do in the UI via the www.shareyourlink.com box, which then generates the following type of Document, with a Proof on it:

 

pcardno_0-1688472450845.png

https://experienceleague.adobe.com/docs/workfront/using/workfront-proof/wf-proof-tech-corner/proof-t...

 

I can create a Proof via the API, but only of an existing document, but I can't find anything in the documentation that explains how to create a Document that's actually a Static Website proof.

The documentation suggests, as far as I can tell, that we should sniff the network activity on the page to work out the Advanced Proofing Options, which isn't massively helpful, but doing so suggests that it's actually using a REST API on ProofHQ, rather than a SOAP API, which is again not massively helpful given that doesn't appear to be documented anywhere:

 

pcardno_2-1688472923622.png

 

Unless that's a proxy onto the standard Workfront /upload REST API call:

 

pcardno_3-1688472996509.png

 

So, I'm fairly stumped. Has anyone figured this out and got a pattern for it that they can share?

 

Thanks,

 

 

Paul.

 

 

Topics

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

1 Accepted Solution

Avatar

Correct answer by
Level 2

Just in case anyone stumbles across this post and wants to do the same thing, we did manage to solve it by using the ProofHQ SOAP API, and then an undocumented endpoint in the Workfront API, which we found by reverse-engineering the UI (although it might be quite a common approach).

 

We firstly create the Proof in ProofHQ, via SOAP. Then we use /internal/documents/bulkImportProof from the Workfront endpoints to create a Document under a Project, which brings in the relevant proof.

 

Here's the code, from node.js, to do it

 

Create the Proof in SOAP HQ, where name parameter is the name I want the Proof to have, and sourceName is the URL of the webpage to be proofed:

 

pcardno_0-1690535447792.png

 

Then create the document in Workfront using the bulkimportproof:

 

pcardno_1-1690535539134.pngpcardno_2-1690535570937.png

pcardno_3-1690535634181.png

pcardno_4-1690535649541.png

 

 

 

Note that in the above we've already got a session ID from Workfront via the OAuth2 approach, and the project has already been picked via a simple UI that we built in our application.

Also note that we had to do multiple retries on the CreateDocument, as Workfront fails silently fairly often. It returns an object with a property called "data" where the value is a Document Object ID, but maybe 10-20% of the time it didn't actually create it. So we immediately go back to check if it's actually there.

 

So not too bad, in the end. I've create a video showing it all in action here:

 

https://paulcardno.com/adobe/Generative%20Proofs%20via%20the%20API.mp4

 

Thanks,

 

 

Paul.

 

 

 

View solution in original post

3 Replies

Avatar

Community Advisor

Hi there, have you checked out this article on how to create a static web proof of web content? Wondering if this is actually what you need - https://experienceleague.adobe.com/docs/workfront/using/review-and-approve-work/proofing/create-proo...

If this helped you, please mark correct to help others : )

Avatar

Level 2

Hi @Madalyn_Destafney - yep, that's how we know it can be done via the front-end. But we are trying to do it via the API.

 

We've managed to do it, so I'll add another post with details as to how.

Avatar

Correct answer by
Level 2

Just in case anyone stumbles across this post and wants to do the same thing, we did manage to solve it by using the ProofHQ SOAP API, and then an undocumented endpoint in the Workfront API, which we found by reverse-engineering the UI (although it might be quite a common approach).

 

We firstly create the Proof in ProofHQ, via SOAP. Then we use /internal/documents/bulkImportProof from the Workfront endpoints to create a Document under a Project, which brings in the relevant proof.

 

Here's the code, from node.js, to do it

 

Create the Proof in SOAP HQ, where name parameter is the name I want the Proof to have, and sourceName is the URL of the webpage to be proofed:

 

pcardno_0-1690535447792.png

 

Then create the document in Workfront using the bulkimportproof:

 

pcardno_1-1690535539134.pngpcardno_2-1690535570937.png

pcardno_3-1690535634181.png

pcardno_4-1690535649541.png

 

 

 

Note that in the above we've already got a session ID from Workfront via the OAuth2 approach, and the project has already been picked via a simple UI that we built in our application.

Also note that we had to do multiple retries on the CreateDocument, as Workfront fails silently fairly often. It returns an object with a property called "data" where the value is a Document Object ID, but maybe 10-20% of the time it didn't actually create it. So we immediately go back to check if it's actually there.

 

So not too bad, in the end. I've create a video showing it all in action here:

 

https://paulcardno.com/adobe/Generative%20Proofs%20via%20the%20API.mp4

 

Thanks,

 

 

Paul.