Clio Manage v2
Provides integration with Clio Manage to query and retrieve practice records, and to create, update, and delete contacts, matters, tasks, and activities using the regional API v4 service.
Revision History
0.0.0.3 - Initial release.
Connection
Use this Connection to store your regional Clio application credentials and OAuth tokens.
| Property | Type | Description |
|---|---|---|
Region |
Enum | Region containing your account and developer application: US, EU, CA, or AU. Defaults to US. |
ClientId |
String | Clio developer application client ID. Required for OAuth authorization and renewal. |
ClientSecret |
Masked | Clio developer application client secret. Required for OAuth authorization and renewal. |
AccessToken |
Masked | OAuth bearer token used for API requests. Populated by authorization. |
RefreshToken |
Masked | OAuth token used to renew access. Populated by authorization when returned by Clio. |
AccessTokenExpiresAtUtc |
String | Optional ISO-8601 access-token expiry timestamp. Populated when Clio returns an expiry. An expired token is renewed before record requests. |
ApiVersion |
String | Optional API minor version sent in the X-API-VERSION header. Leave blank to use Clio's latest minor version. |
TimeoutSeconds |
Integer | Timeout for each API or OAuth token request in seconds. Defaults to 100 and must be greater than 0. |
Setup Notes
- Configure a Clio developer application in the same region as your Clio account, with access to the records your Workflow needs.
- Register the OAuth callback URI
https://app.flowgear.net/r/auth. - Enter
Region,ClientId, andClientSecretin the Connection. - Complete OAuth authorization for the Connection.
- Test the Connection to confirm that it can retrieve the current user.
The Node runs on cloud Clusters. The region determines the API and OAuth service used. Flowgear renews tokens through the saved Connection when renewal is required, retain the application credentials and refresh token for this purpose.
An authorization attempt expires after ten minutes and can be completed only once. Start a new attempt if it expires or authorization is declined. The Connection can retain at most sixteen unexpired attempts, wait for an attempt to expire if that limit is reached.
Operation templates can be loaded without live account metadata. Select a template to populate OperationId, the supported input fields, and the response structure.
Methods
The Node exposes the following record families. Users are read-only.
| Resource | Methods |
|---|---|
| Contacts | Query, Retrieve, Create, Update, Delete. |
| Matters | Query, Retrieve, Create, Update, Delete. |
| Tasks | Query, Retrieve, Create, Update, Delete. |
| Activities | Query, Retrieve, Create, Update, Delete. |
| Users | Query, Retrieve. |
| Current User | Retrieve. |
Query
Queries contacts, matters, tasks, activities, or users. Select the resource-specific template. The Node follows continuation pages automatically and returns one row per record.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | Regional Clio Manage credentials. |
OperationId |
String | Fixed operation identifier supplied by the selected template. |
Options |
Object | Filters and field selection supported by the selected resource. Refer to the template for available filters and their types. |
Options.fields |
String | Fields to return using Clio's field-selection syntax. Defaults to a small set of useful scalar fields for the selected resource. Supports one expanded association level. |
Options.ids[] |
String | CSV record IDs on templates that support this filter. Maximum 200 IDs per query. |
| Return | Type | Description |
|---|---|---|
Response |
Array | Resource records containing the selected fields, without the provider's data envelope or mutation Flowgear metadata. No matches return no rows. |
Retrieve
Retrieves a contact, matter, task, activity, or user by ID, or retrieves the authenticated current user.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | Regional Clio Manage credentials. |
OperationId |
String | Fixed operation identifier supplied by the selected template. |
Options |
Object | Target ID and field selection. |
Options.id |
Integer | Required positive record ID, except for the Retrieve Current User template. |
Options.fields |
String | Fields to return. Supports the same field-selection syntax as Query. |
| Return | Type | Description |
|---|---|---|
Response |
Array | One resource record containing the selected fields. Read results do not include mutation Flowgear metadata. |
Create
Creates contacts, matters, tasks, or activities. Each input item creates one record using the selected resource-specific template.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | Regional Clio Manage credentials. |
OperationId |
String | Fixed operation identifier supplied by the selected template. |
Items |
Array | Required stream of resource objects using the selected template's writable fields. Map fields directly under each item; do not add a data wrapper. An empty stream creates no records. |
Options |
Object | Operation-specific options, including response field selection. |
Options.fields |
String | Resource fields to return after creation. |
| Return | Type | Description |
|---|---|---|
Response |
Array | One result per input item. Successful rows contain the selected resource fields. Each result includes Flowgear.IsSuccess, Flowgear.StatusMessage, and the submitted input in Flowgear.Request. |
For task creation, assignment requirements depend on the Clio account. If the account rejects unassigned tasks, map an existing user from Query Users or Retrieve Current User to assignee.id and set assignee.type to User. Alternatively, supply assignees containing existing firm user IDs. Do not supply both alternatives or submit the template's sample IDs.
Update
Updates contacts, matters, tasks, or activities using one PATCH request per input item. Include the target ID in each item.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | Regional Clio Manage credentials. |
OperationId |
String | Fixed operation identifier supplied by the selected template. |
Items |
Array | Required stream of updates containing the target id and writable resource fields directly under each item. An empty stream performs no updates. |
Items.id |
Integer | Required positive target record ID. This is a route value and is not sent in the JSON body. |
Items.IfMatch |
String | Optional quoted ETag from a prior read, sent in the IF-MATCH header for this item only. Use it to prevent an update when the record has changed. |
Options |
Object | Operation-specific options, including response field selection. |
Options.fields |
String | Resource fields to return after the update. |
| Return | Type | Description |
|---|---|---|
Response |
Array | One result per input item with selected resource fields on success, plus Flowgear.IsSuccess, Flowgear.StatusMessage, and Flowgear.Request. |
Delete
Deletes contacts, matters, tasks, or activities using one request per input item.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | Regional Clio Manage credentials. |
OperationId |
String | Fixed operation identifier supplied by the selected template. |
Items |
Array | Required stream of objects containing only id. An empty stream deletes no records. The Node sends no request body. |
Items.id |
Integer | Required positive target record ID. |
Options |
Object | Only options supported by the selected deletion template, if any. Target IDs belong in Items. |
| Return | Type | Description |
|---|---|---|
Response |
Array | One result per input item with Flowgear.IsSuccess, Flowgear.StatusMessage, and Flowgear.Request. An empty successful provider response still produces a result. |
Usage Notes
- Use the exact field names and scalar types shown by the selected template. The Node does not trim strings or coerce incorrectly typed values.
- Use
Options.fieldsto request the fields your Workflow needs. Associations use braces, with at most one expansion level. Unsupported field selections are rejected before provider execution. - Paging uses 200 records per page and follows Clio's continuation cursor internally. Do not supply
limit,page_token,order, or other paging controls. - String and integer collections advertised as CSV use quoted CSV, including collection filters such as
ids[]. Quote values containing commas, newlines, or quotes, and double embedded quotes. String whitespace is preserved; use integers without surrounding spaces. Empty text means an empty collection;""means one empty string. Invalid integers are rejected. Object collections remain structured arrays. - Inspect
Flowgear.IsSuccesson mutation results. Per-record business failures return failed rows and allow later inputs to continue. Authentication, transport, and malformed-response failures stop processing. - Invalid first input records fail before a write. Invalid later records return failed rows. The first provider request completes when the Method starts, subsequent pages or items are processed as the response stream is consumed. Multiple writes are not transactional.
- Contact
co_counsel_rateis supported only byUpdate, not byCreate.
Examples
Create a Company Contact from a JSON Document
For a document-driven write, use a complete object envelope:
{
"Items": [
{
"name": "Example Company",
"type": "Company"
}
]
}
- Parse the document with the JSON Document Node's
ParseAsObjectMethod. - Select the
Clio ManageNode'sCreate Contactstemplate. - Define
Object.Itemson the parser using the selected contact template's item structure. - Map the parsed
Object.Itemsarray to theClio ManageNode'sItemsParameter. - Check
Response.Flowgear.IsSuccessbefore using each returned contactid.
Parsing the complete object validates JSON syntax before any contact is written. A streaming ParseAsArray input can write an earlier record before discovering malformed JSON later in the document. Object parsing does not make the writes transactional or validate every record's business rules in advance.
Known Issues
The Node supports only the record families and Methods listed above. It does not expose financial lifecycle actions, document or binary transfers, webhooks, or other Clio products. Dynamic custom-field query filters are not supported.