Docs/Connectors

Clio

Clio Manage matters and time and expense entries as records, and each matter's work as an episode.

The clio connector reads Clio Manage: the matters a law firm opens and the time and expenses its people record on them.

Connector name clio
Products Records, episodes
Credentials The portal's Connect button, or a Clio developer app's OAuth tokens
Permissions Read access to Matters and Activities

What it pulls

Records.

Object Contents
matter Display number, description, status, practice area, responsible and originating attorney, client name, billable flag, open, pending and close dates, created and updated times
time_entry Matter, date, hours and rounded hours, rate, total, note, billed, non-billable and no-charge flags, user, activity description
expense_entry The same fields, with the expense category instead of hours

Choose a subset with objects (matters, activities) and activityTypes (default TimeEntry,ExpenseEntry).

Episodes. One per matter updated in the window: the matter opening, then every time and expense entry on it in date order, each with the person who recorded it, what they did, and whether it was billed, then the close when the matter is closed.

Client, attorney and staff names become tokens. Descriptions and notes are free text and are redacted, including names that appear in them.

Connect with the button

  1. In the portal, go to Settings → Connected systems and click Connect next to Clio.
  2. Sign in to Clio and allow access.
  3. On the machine that runs the SDK:
bash
datayield connect clio --broker

The SDK asks Datayield for a fresh access token before each run, then reads Clio directly from your machine. No token is stored on the machine. If the connection stops working, the run says so; click Connect again in the portal.

Connect with your own app

Register a developer app in Clio with read access to Matters and Activities, authorize it, and give the SDK its tokens:

bash
datayield connect clio -o region=eu -o clientId=<client id> \
  -o clientSecret=env:CLIO_CLIENT_SECRET -o refreshToken=env:CLIO_REFRESH_TOKEN

Clio access tokens last 30 days and refresh tokens do not expire. You can pass a current accessToken instead of the app's details for a one-off run.

Clio keeps each region separate. A token from one region does not work in another, and each region needs its own app. Set region to where the firm's account lives.

Options

Option Required Meaning
region no us (default), eu, ca or au
accessToken one of A current access token. Stored as a secret.
clientId, clientSecret, refreshToken one of Your app's details and its refresh token. The secret and token are stored as secrets.
objects no matters, activities. Defaults to both.
activityTypes no Any of TimeEntry, ExpenseEntry, HardCostEntry, SoftCostEntry, FixedFee. Defaults to TimeEntry,ExpenseEntry.

New records on each run

Matters and entries are requested with updated_since set to the last successful run, and filtered by their update time. A matter updated again later is sent again, and its episode is rebuilt from all of its entries.

Rate limits

Clio allows about 50 requests a minute per token during working hours, and more at night. The SDK reads 200 records per request and waits as Clio asks when it reaches the limit. A first run on a large firm can take several minutes.