Solved

Get URL/Path to Sighature File in OneDrive and Delete File

  • 7 March 2021
  • 2 replies
  • 15 views

I have a form with a signature field. The signature field is saved to OneDrive and used to generate a document.

 

After the document is generated, I want the workflow to delete the signature file from OneDrive.

 

But I don't seem to have a way to identify the url of the signature file to do that. 

 

Is that available anywhere in the flow?

icon

Best answer by msalamon 8 March 2021, 23:50

View original

2 replies

I discovered that this information is available from the Get an Instance REST API call:  https://us.nintex.io/workflows/v1/instances/instance_id?startdata=true, as part of the instance's start data.


 


But to make that call, you would need a bearer token and the instanceid from inside the workflow. I am not aware of any way to get that information.  There should be a more direct way to gather the signature's path, which is in fact stored with the instance.

I managed to figure it out. 🙂



It's a bit complex, but if you use the Call a Web Service action and make the call against the Nintex get instance REST call, passing in the instance id from the Context variables and using your personal token (below) -- see these pages for more info on how to do this:  https://help.nintex.com/en-US/nwc/Content/Designer/Actions/Callwebservice.htm and https://help.nintex.com/en-US/nwc/Content/Settings/APItokens.htm) -- you can retrieve the instance data.


 


I then needed to add 2 Query JSON steps, the first to retrieve the signature value from the startData.  The signature value is a JSON object stored as a string.  The second Query JSON step then pulls from that string JSON object the path value.



Here is more detail:


1 - Call a Web Service.  GET https://us.nintex.io/workflows/v1/instances/[Workflow InstanceID]?startdata=true


btw, I made startdata=true but from my testing any value for that parameter will work to retrieve the startData


2 - Take the response from the web service call and extract the signature info using Query JSON with this JSON Path expression:  $.startData.se_form_variables.se_signature_#_######


3 - Take the signature info and extract the path using this JSON Path expression:  $.path


 


 

Reply