Is there a way to get a specific version of a file from the vault through API?

I am looking for a way to fetch an older version of a file from the vault using the API or dispatch.  Is this possible?

Here's my situation.  A file is released at Revision A (version 6).  An ECN is requested and the file goes through several changes.  The ECN is then cancelled for reasons outside of engineering's control.  I now need to get the file back to the condition it was in before the ECN and get it back into the released state.

I would like to setup a macro/dispatch action that would fetch the version of the file prior to the ECN (in this case version 6) and save this over the latest version.  It is similar to a rollback, but I wouldn't lose the history from the cancelled ECN and I could batch process.

I know this is easily done on a single file manually, but when an ECN includes 100's of files, it becomes cumbersome.  Seems like a macro should be able to handle the situation.

Any help would be appreciated.

Thanks in advance,

Dan

SolidworksApi/macros