Downloads | Support | Developers | Contact

Remote API Manual

The DFC3.2 provides a REST style API. The original API manual is available here. Many things have changed since this manual was released including the new JavaScript engine, but the function names are the same as the Cmd names in this manual. A new manual is in the works and we will post it soon.

Workflow Overview

The DFC3 allows you to program your business logic in JavaScript. Using metadata fields (a.k.a tags) for your information, you can perform stateful operations on the assets in your system.

The JavaScript engine triggers off of DFC Events which are logged into the event log. Since almost every operation in the DFC has an associated event, you can trigger off anything that happens in the system. To select an event to trigger on, your write a filter in plain english that describes the event you are waiting for. The filter language is detailed in the next section.

Once your event happens, it triggers your JavaScript workflow. Here is an example of a simple workflow:

Filter:user logged in to dfc.
Action:
SendEmail(Session, "myemail@mymail.com", "User logged in", "The user " + User + " logged into the DFC");

In this simple example the system sends an email to myemail@mymail.com anytime anyone logs into the DFC3.

The list of JavaScript variables available to you when your workflow runs are:

For a complete example of workflow programming, look at the source code for Track Your Messages application.

Filters For DFC Workflow

The table below shows all words avaialable in the filter grammar.

Verbs
  • put
  • altered
  • uploaded
  • copied
  • moved
  • deleted
  • reviewed
  • signed
  • initialed
  • submitted
  • logged in
  • logged out
Objects
  • file
  • form
  • folder
  • user
  • group
  • dfc
Prepositions
  • in
  • under
  • by
  • to
  • from
  • of
Objects
  • file
  • form
  • folder
  • user
  • group
  • dfc
Qualifiers
    with
  • filetype
  • field
  • date
Conjuntions
  • and
  • or
  • but not
Operators
  • =
  • >
  • <
  • !=
  • like
  • between

Context

Only certain combinations of words are meaningful as filters. Here are the terms in context with the DFC3 Event that they translate to when filtering. Note that DFC3 Events are the same events you report on in the event log report.

SubjectVerbRelated EventsExamples
File put Upload, FileMoved file put in folder "Root:Documents".
File uploaded Upload file uploaded to dfc.
file uploaded to folder "Root:Documents".
File copied Upload file copied to folder "Root:Documents".
File moved FileMoved file moved in dfc.
file moved to folder "Root:Documents".
File deleted DeleteFile file deleted from folder "Root:Documents".
File deleted DeleteFile file deleted from folder "Root:Documents".
File reviewed Reviewed file reviewed in folder "Root:Documents".
File signed Signed file signed in folder "Root:Documents".
File initialed Initialed file initialed in folder "Root:Documents".
File altered MetadataChanged file altered in folder "Root:Documents".
Folder created FolderCreated folder created in dfc.
Folder created FolderCreated folder created in dfc.
Folder moved FolderMoved folder moved in dfc.
folder moved under folder "Root:Documents".
Form submitted FormSubmitted, HTML form submitted to folder "Root:Documents".
User logged in Login user logged in to dfc.
User logged out Logout user logged out of dfc.
User created UserCreated user created in dfc.
User deleted UserDeleted user deleted from dfc.

Qualifier

The qualifer terms are used for further filtering the events. Note that using qualifier terms is many times faster than using Javascript for filtering on metadata values.

QualiferExampleNotes
filetype file uploaded to folder "Root:Documents" with filetype = "application/pdf". The file type is checked against the full mime type name in the database.
field file uploaded to folder "Root:Documents" with field "Author" = "John Doe".
file uploaded to folder "Root:Documents" with field "Author" like "john".
user logged into dfc with field "email" = "dent@swcp.com".
For files, the fields are the metadata fields. For users the fields are email, first name, middle name, last name, address, address 2, phone number, city, state, and zip.
date file uploaded to folder "Root:Documents" with date = "09/24/2007".
file uploaded to folder "Root:Documents" with date between "09/24/2007" and "10/01/2007".