<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Implementing a Vault API utility in Revit through the Revit API in Vault Customization Forum</title>
    <link>https://forums.autodesk.com/t5/vault-customization-forum/implementing-a-vault-api-utility-in-revit-through-the-revit-api/m-p/5454875#M10787</link>
    <description>&lt;P&gt;Hi Jeff,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It's been a while since I was struggling to implement this Vault connection using the &lt;STRONG&gt;Revit 2014 API&lt;/STRONG&gt;.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Yeah, it is feasible and lot easier than I was expecting, even with my programming skills, which is something more of a “monkey see, monkey do” type, rather than something else (at least when it comes about the Vault API) &lt;img id="smileyvery-happy" class="emoticon emoticon-smileyvery-happy" src="https://forums.autodesk.com/i/smilies/16x16_smiley-very-happy.png" alt="Smiley Very Happy" title="Smiley Very Happy" /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Essentially, the Vault part is related only to the Vault connection and to a striped down version (modified for the Revit files) of the file browser control (Form1) used by Autodesk in the Vault SDK sample titled &lt;STRONG&gt;VaultBrowserSample&lt;/STRONG&gt;, which can be found in &lt;STRONG&gt;C:\Program Files (x86)\Autodesk\Autodesk Vault 2014 SDK\VS10\CSharp&lt;/STRONG&gt; (or &lt;STRONG&gt;..\VB&lt;/STRONG&gt; for instance).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In order to do this, you will need to reference the following libraries:&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Autodesk.Connectivity.WebServices;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Autodesk.Connectivity.WebServicesTools;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Autodesk.DataManagement.Client.Framework;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Autodesk.DataManagement.Client.Framework.Vault;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Autodesk.DataManagement.Client.Framework.Vault.Forms;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So what I did, was basically to import that browser form and then copy/paste some chunks of code (from the aforementioned Vault SDK sample) related to the whole process and then tweak them in order to fit my particular needs.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We decided to go for a quiet&amp;nbsp;background&amp;nbsp;login&amp;nbsp;(using&amp;nbsp;&lt;STRONG&gt;AuthenticationFlags&amp;nbsp;=&amp;nbsp;WindowsAuthentication&lt;/STRONG&gt;, in which case the username and the password are ignored), instead of using the standard Vault login form, but this is something that you’ll have to decide for yourself.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Other than that, once the warehouse RVT file is reclaimed from the Vault, a copy of the file is made in a specific, then using the plain Revit API, the program will retrieve and list all the available drafting, schedule, reports and sheet views, thus giving the user the opportunity to insert the elements what he needs.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;When the job is done (or cancelled), the copy of the file is deleted and the Vault connection is closed.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;And since “a picture is worth a thousand words”, the few attached screen shots will shed some extra light.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hope this helps,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Constantin&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Mon, 29 Dec 2014 21:46:30 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2014-12-29T21:46:30Z</dc:date>
    <item>
      <title>Implementing a Vault API utility in Revit through the Revit API</title>
      <link>https://forums.autodesk.com/t5/vault-customization-forum/implementing-a-vault-api-utility-in-revit-through-the-revit-api/m-p/4661007#M10784</link>
      <description>&lt;P&gt;Hi everyone,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My name is Constantin, I work for an engineering consulting company in Montreal area and I'm a self-taught programmer with a solid experience with the AutoCAD API's (except the ObjectARX/C++) and some experience with the Revit API (C# and VB).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Lately I have been asked to do some custom programming and try to integrate Revit and Vault for a "simple" task like duplicating the "Insert From File" Revit command, as a custom external application using its own tab in the Revit ribbon menu (no problem with the ribbon integration), command which would be called something like&amp;nbsp;"Insert From Vault File", since it has to open the source file from Vault!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It is my understanding that this command should use some Vault API calls from a Revit API utility and I think that this &lt;A href="https://forums.autodesk.com/t5/Vault-Customization/Checking-in-and-out-a-file/td-p/4310663" target="_blank"&gt;Checking in and out a file&lt;/A&gt; demo would be a good point to start, but the problem is that as far as I understand, this is a Vault custom API utility, but I need it to be implemented like a Revit utility, so that it could be triggered from Revit.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;And here comes my question; is it possible to "manipulate" the Vault API from a Revit API custom command, therefore to implement this &lt;A href="https://forums.autodesk.com/t5/Vault-Customization/Checking-in-and-out-a-file/td-p/4310663" target="_blank"&gt;Checking in and out a file&lt;/A&gt; utility as a Revit custom command? Can you provide some code examples or some inspirational source(s) to suggest?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you in advance and I hope I made myself clear enough,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Constantin&lt;/P&gt;</description>
      <pubDate>Fri, 29 Nov 2013 18:46:57 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vault-customization-forum/implementing-a-vault-api-utility-in-revit-through-the-revit-api/m-p/4661007#M10784</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2013-11-29T18:46:57Z</dc:date>
    </item>
    <item>
      <title>Re: Implementing a Vault API utility in Revit through the Revit API</title>
      <link>https://forums.autodesk.com/t5/vault-customization-forum/implementing-a-vault-api-utility-in-revit-through-the-revit-api/m-p/4668465#M10785</link>
      <description>&lt;P&gt;The sample project you saw ("VaultBroswerSample" in Vault SDK) actually is a desktop application, technically speaking, Vault APIs are calling web services to vault server, so I do not see any reason why it cannot be used in Revit plugin (although I am not an expert of revit).&lt;/P&gt;</description>
      <pubDate>Tue, 03 Dec 2013 03:27:04 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vault-customization-forum/implementing-a-vault-api-utility-in-revit-through-the-revit-api/m-p/4668465#M10785</guid>
      <dc:creator>Daniel.Du</dc:creator>
      <dc:date>2013-12-03T03:27:04Z</dc:date>
    </item>
    <item>
      <title>Re: Implementing a Vault API utility in Revit through the Revit API</title>
      <link>https://forums.autodesk.com/t5/vault-customization-forum/implementing-a-vault-api-utility-in-revit-through-the-revit-api/m-p/5453549#M10786</link>
      <description>&lt;P&gt;I see its been a year plus since this post was created. Did you get anywhere&amp;nbsp;with this project? I have been thinking of doing the same thing and was wondering if you got it to work.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;J.&lt;/P&gt;</description>
      <pubDate>Sat, 27 Dec 2014 13:20:04 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vault-customization-forum/implementing-a-vault-api-utility-in-revit-through-the-revit-api/m-p/5453549#M10786</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2014-12-27T13:20:04Z</dc:date>
    </item>
    <item>
      <title>Re: Implementing a Vault API utility in Revit through the Revit API</title>
      <link>https://forums.autodesk.com/t5/vault-customization-forum/implementing-a-vault-api-utility-in-revit-through-the-revit-api/m-p/5454875#M10787</link>
      <description>&lt;P&gt;Hi Jeff,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It's been a while since I was struggling to implement this Vault connection using the &lt;STRONG&gt;Revit 2014 API&lt;/STRONG&gt;.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Yeah, it is feasible and lot easier than I was expecting, even with my programming skills, which is something more of a “monkey see, monkey do” type, rather than something else (at least when it comes about the Vault API) &lt;img id="smileyvery-happy" class="emoticon emoticon-smileyvery-happy" src="https://forums.autodesk.com/i/smilies/16x16_smiley-very-happy.png" alt="Smiley Very Happy" title="Smiley Very Happy" /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Essentially, the Vault part is related only to the Vault connection and to a striped down version (modified for the Revit files) of the file browser control (Form1) used by Autodesk in the Vault SDK sample titled &lt;STRONG&gt;VaultBrowserSample&lt;/STRONG&gt;, which can be found in &lt;STRONG&gt;C:\Program Files (x86)\Autodesk\Autodesk Vault 2014 SDK\VS10\CSharp&lt;/STRONG&gt; (or &lt;STRONG&gt;..\VB&lt;/STRONG&gt; for instance).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In order to do this, you will need to reference the following libraries:&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Autodesk.Connectivity.WebServices;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Autodesk.Connectivity.WebServicesTools;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Autodesk.DataManagement.Client.Framework;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Autodesk.DataManagement.Client.Framework.Vault;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Autodesk.DataManagement.Client.Framework.Vault.Forms;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So what I did, was basically to import that browser form and then copy/paste some chunks of code (from the aforementioned Vault SDK sample) related to the whole process and then tweak them in order to fit my particular needs.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We decided to go for a quiet&amp;nbsp;background&amp;nbsp;login&amp;nbsp;(using&amp;nbsp;&lt;STRONG&gt;AuthenticationFlags&amp;nbsp;=&amp;nbsp;WindowsAuthentication&lt;/STRONG&gt;, in which case the username and the password are ignored), instead of using the standard Vault login form, but this is something that you’ll have to decide for yourself.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Other than that, once the warehouse RVT file is reclaimed from the Vault, a copy of the file is made in a specific, then using the plain Revit API, the program will retrieve and list all the available drafting, schedule, reports and sheet views, thus giving the user the opportunity to insert the elements what he needs.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;When the job is done (or cancelled), the copy of the file is deleted and the Vault connection is closed.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;And since “a picture is worth a thousand words”, the few attached screen shots will shed some extra light.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hope this helps,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Constantin&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 29 Dec 2014 21:46:30 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vault-customization-forum/implementing-a-vault-api-utility-in-revit-through-the-revit-api/m-p/5454875#M10787</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2014-12-29T21:46:30Z</dc:date>
    </item>
    <item>
      <title>Re: Implementing a Vault API utility in Revit through the Revit API</title>
      <link>https://forums.autodesk.com/t5/vault-customization-forum/implementing-a-vault-api-utility-in-revit-through-the-revit-api/m-p/14053496#M13395</link>
      <description>&lt;DIV class=""&gt;I am developing a custom Revit add-in and trying to replicate the native&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;"Link from Vault"&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;behavior.&lt;BR /&gt;In the built-in Vault Revit add-in, using the "Link" command allows a model to be referenced into the project while it remains&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;Checked-In&lt;/STRONG&gt;. However, in my custom implementation, calling the file retrieval process results in an automatic&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;Checkout&lt;/STRONG&gt;, which I want to avoid.&lt;BR /&gt;&lt;STRONG&gt;Questions:&lt;/STRONG&gt;&lt;/DIV&gt;&lt;OL&gt;&lt;LI&gt;&lt;SPAN class=""&gt;Is there a specific&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;API method&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;or&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;service&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;exposed that handles "Link from Vault" as a single operation, or is it strictly a two-step process of downloading then linking?&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN class=""&gt;When programmatically calling the file acquisition method, which&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;settings or parameters&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;are required to ensure a "Get" (read-only) operation to the local workspace rather than a "Checkout"?&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN class=""&gt;How does the native add-in determine the local path for the link to ensure it matches the Vault working folder without locking the file for other users?&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;</description>
      <pubDate>Fri, 13 Mar 2026 10:43:56 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vault-customization-forum/implementing-a-vault-api-utility-in-revit-through-the-revit-api/m-p/14053496#M13395</guid>
      <dc:creator>vidhubala_j</dc:creator>
      <dc:date>2026-03-13T10:43:56Z</dc:date>
    </item>
    <item>
      <title>Re: Implementing a Vault API utility in Revit through the Revit API</title>
      <link>https://forums.autodesk.com/t5/vault-customization-forum/implementing-a-vault-api-utility-in-revit-through-the-revit-api/m-p/14053503#M13396</link>
      <description>&lt;DIV class=""&gt;I am developing a custom Revit add-in and trying to replicate the native&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;"Link from Vault"&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;behavior.&lt;BR /&gt;In the built-in Vault Revit add-in, using the "Link" command allows a model to be referenced into the project while it remains&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;Checked-In&lt;/STRONG&gt;. However, in my custom implementation, calling the file retrieval process results in an automatic&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;Checkout&lt;/STRONG&gt;, which I want to avoid.&lt;BR /&gt;&lt;STRONG&gt;Questions:&lt;/STRONG&gt;&lt;/DIV&gt;&lt;OL&gt;&lt;LI&gt;&lt;SPAN class=""&gt;Is there a specific&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;API method&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;or&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;service&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;exposed that handles "Link from Vault" as a single operation, or is it strictly a two-step process of downloading then linking?&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN class=""&gt;When programmatically calling the file acquisition method, which&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;STRONG&gt;settings or parameters&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;are required to ensure a "Get" (read-only) operation to the local workspace rather than a "Checkout"?&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN class=""&gt;How does the native add-in determine the local path for the link to ensure it matches the Vault working folder without locking the file for other users?&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 13 Mar 2026 10:46:17 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vault-customization-forum/implementing-a-vault-api-utility-in-revit-through-the-revit-api/m-p/14053503#M13396</guid>
      <dc:creator>balachandar_vVF4MG</dc:creator>
      <dc:date>2026-03-13T10:46:17Z</dc:date>
    </item>
    <item>
      <title>Re: Implementing a Vault API utility in Revit through the Revit API</title>
      <link>https://forums.autodesk.com/t5/vault-customization-forum/implementing-a-vault-api-utility-in-revit-through-the-revit-api/m-p/14057621#M13400</link>
      <description>&lt;P&gt;To download a file with or without check-out, the AquireFileSettings can add the file with the required option (e.g., parameter "checkout"):&lt;/P&gt;
&lt;LI-CODE lang="general"&gt;AcquireFilesSettings mDownloadSettings = new AcquireFilesSettings(_connection);
// set the default acquisition option to download only; this will apply to all files added to the settings unless specified otherwise
mDownloadSettings.DefaultAcquisitionOption = AcquireFilesSettings.AcquisitionOption.Download;

// set the acquisition option for this specific file according the parameter checkout
if (checkout)
{   // download and checkout
    mDownloadSettings.AddFileToAcquire(mFileIteration, AcquireFilesSettings.AcquisitionOption.Checkout | AcquireFilesSettings.AcquisitionOption.Download);
}
else
{  // download only
    mDownloadSettings.AddFileToAcquire(mFileIteration, AcquireFilesSettings.AcquisitionOption.Download);
}&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;I hope this helps.&lt;/P&gt;</description>
      <pubDate>Tue, 17 Mar 2026 21:34:18 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vault-customization-forum/implementing-a-vault-api-utility-in-revit-through-the-revit-api/m-p/14057621#M13400</guid>
      <dc:creator>Markus.Koechl</dc:creator>
      <dc:date>2026-03-17T21:34:18Z</dc:date>
    </item>
  </channel>
</rss>

