Connecting to Collaboflow
The Collaboflow API uses a APIKey or Password based authentication.
Using APIKey Authentication
Your Collaboflow API Key is required to create a connection to Collaboflow. Generate the API Key at Collaboflow admin settings page, then set it in the ProfileSettings connection property. You should specify the Instance and AppCd properties in the connection string as well.
Example Connection string
Profile=C:\profiles\collaboflow.apip;User=my_user;ProfileSettings='Instance=my_instance;AppCd=my_appcd;APIKey=my_api_key;'
Using Password Authentication
Alternatively, you can authenticate using password authentication. To do so, specify the Username, Password, Instance name, and AppCd in the connection string.
Example Connection string
Profile=C:\profiles\collaboflow.apip;User=my_user;Password=my_password;ProfileSettings='Instance=my_instance;AppCd=my_appcd;'
Connecting to Collaboflow
Once the authentication is configured, you can connect to Collaboflow and query data from any of the available tables such as Users, Groups, Titles, and Forms.
Available Tables
The Collaboflow API Profile provides access to the following tables:
- Users: Returns the users registered in Collaboflow. Supports listing all users or retrieving a single user by Id
- Groups: Returns the groups configured in Collaboflow. Supports listing all groups or retrieving a single group by Id
- Titles: Returns the titles configured in Collaboflow. Supports listing all titles or retrieving a single title by Id
- Forms: Returns the forms available in Collaboflow. Optionally filter by CategoryId
- Determs: Returns the determination history for a document. Requires DocumentId. Optionally filter by Current
- DocumentOverview: Returns overview information for a specific document. Requires DocumentId
- DocumentContents: Returns the submitted contents of a specific document. Requires DocumentId
- DocumentSearch: Returns documents that match a search term. Optionally filter by SearchTerm
- MyRequests: Returns the requests submitted by the authenticated user
- MyDrafts: Returns the draft documents saved by the authenticated user
- MyDeterms: Returns the documents awaiting the authenticated user's determination
- MyProcesses: Returns the workflow processes available to the authenticated user
- MyStatus: Returns the authenticated user's document status list. Optionally filter by Status (myrequests, mydrafts, or mydeterms)
- AllStatus: Returns the document status list across all users in the instance. Optionally filter by UserIds
- AllDocumentOverview: Returns document overview information across all users in the instance. Optionally filter by SearchTerm
- AllDocumentContents: Returns document contents across all users in the instance. Optionally filter by SearchTerm
Important Notes
- The Determs, DocumentOverview, and DocumentContents tables require the DocumentId input.
- The Groups, Titles, and Users tables support retrieving a single record directly by its Id, in addition to listing all records.
- The AllStatus, AllDocumentOverview, and AllDocumentContents tables aggregate data across every user in the Collaboflow instance and can take longer to execute than the My* tables, which are scoped to the authenticated user.
Usage Examples
Users:
SELECT * FROM Users
Users (retrieve a single user by Id):
SELECT * FROM Users WHERE Id = 'my_user_id'
Groups:
SELECT * FROM Groups
Groups (retrieve a single group by Id):
SELECT * FROM Groups WHERE Id = 'my_group_id'
Titles:
SELECT * FROM Titles
Titles (retrieve a single title by Id):
SELECT * FROM Titles WHERE Id = 'my_title_id'
Forms:
SELECT * FROM Forms
Forms (filter by CategoryId):
SELECT * FROM Forms WHERE CategoryId = '1'
Determs (requires DocumentId):
SELECT * FROM Determs WHERE DocumentId = '12345'
Determs (filter by Current):
SELECT * FROM Determs WHERE DocumentId = '12345' AND Current = 'true'
DocumentOverview (requires DocumentId):
SELECT * FROM DocumentOverview WHERE DocumentId = '12345'
DocumentContents (requires DocumentId):
SELECT * FROM DocumentContents WHERE DocumentId = '12345'
DocumentSearch:
SELECT * FROM DocumentSearch WHERE SearchTerm = 'invoice'
MyRequests:
SELECT * FROM MyRequests
MyDrafts:
SELECT * FROM MyDrafts
MyDeterms:
SELECT * FROM MyDeterms
MyProcesses:
SELECT * FROM MyProcesses
MyStatus (optionally filter by Status):
SELECT * FROM MyStatus WHERE Status = 'mydrafts'
AllStatus (optionally filter by UserIds):
SELECT * FROM AllStatus WHERE UserIds = 'user1,user2'
AllDocumentOverview (optionally filter by SearchTerm):
SELECT * FROM AllDocumentOverview WHERE SearchTerm = 'invoice'
AllDocumentContents (optionally filter by SearchTerm):
SELECT * FROM AllDocumentContents WHERE SearchTerm = 'invoice'
Connection Properties
The connection string properties are the various options that can be used to establish a connection. This section provides a complete list of the options you can configure in the connection string for this provider.
| Property | Description |
| APIKey | Api Key you get from your Collaboflow admin account. |
| AppCd | AppCd you get from your Collaboflow. |
| AuthScheme | The scheme used for authentication. Accepted entries are APIKey, Basic, or None. Allowed values are: BASIC, NONE, NTLM, OAUTH, APIKEY, OAUTH_CLIENT, OAUTH_PASSWORD |
| Instance | Instance you get from your Collaboflow URL. |
| Password | The password used to authenticate to Collaboflow. |
| URL | The URL of the Collaboflow instance to connect to. |
| User | The Collaboflow username used to authenticate. |