4

Has anyone been able to use the SharePoint Designer "Call HTTP Web Service" action with the _vti_bin/author.dll methods?

In particular, I'd like to move documents and their version history from one library into a sub folder of another library.

1

Actually you don't need to use the author.dll to move files between libraries. This can be done via object model to.

In the blog post Maintain file version history when moving/copying files between SharePoint sites you will find detailed information what you need to do. This also includes a code snippet you can use.

Update

In Office 365 you can create a sand box solution that uses the server side code because all the required code is available. The code from the Article can also be rewritten to support client object model. If you don't like to execute it directly in Office 365. Please take a look at Microsoft.SharePoint.Client.File or Microsft.SharePoint.Client.FileVersionCollection.

Author.dll is more likely to be used only by SharePoint Designer.

  • Thanks Stefan - I'm looking at ways to achieve this on an Office 365 environment, so the object model is not an option. – Ivan Wilson Jan 12 '14 at 7:11
0

I use the Web Request action with Nintex Worflow.

Take a look at this: http://www.vadimtabakman.com/nintex-workflow-move-documents-and-preserve-version-history.aspx

URL:

(Your web URL)/_vti_bin/_vti_aut/author.dll
Method: POST
Content Type: application/x-www-form-urlencoded
Header Name: X-Vermeer-Content-Type
Header Value: application/x-www-form-urlencoded

Code:

method=move+document:14.0.2.5420&service_name=/&oldUrl=(Your source path and filename)&newUrl=(Your destination path and filename)&url_list=[]&rename_option=findbacklinks&put_option=overwrite,migrationsemantics
  • Thanks Robert. I don't have Nintex Workflow in this environment, as it is Office 365. I'm trying to work out how to invoke Author.dll from the "Call HTTP Web Service" action in SharePoint Designer 2013. The parameters available are: Address: intranet/_vti_bin/_vti_aut/author.dll RequestType: HTTP Post RequestHeaders: Dictionary variable RequestContent: Dictionary variable ResponseContent: Dictionary variable ResponseHeaders: Dictionary variable ResponseStatusCode: string variable – Ivan Wilson Jan 12 '14 at 7:50
  • in my Nintex Workflow for Office 365 I have AppStep containging a Call HTTP Web Service with dictRequestContent var : key= method, value = copy+document:15.0.0.4420&service_name=/&oldUrl=tenant.sharepoint.com/teamsite/Source Library/MyDoc.doc&newUrl=tenant.sharepoint.com/teamsite/Dest Library/MyDoc.doc I am getting unauthorised in the response code ;-( does this look correct anyone – westerdaled Sep 26 '16 at 10:27
0

Figured out how to do it with the REST service and 2013 workflow's Call HTTP Webservice.

http://johnliu.net/blog/2014/2/19/using-sharepoint-designer-2013-workflow-to-copy-file-via-res.html

Haven't succeeded yet with author.dll

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.