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
- In the portal, go to Settings → Connected systems and click Connect next to Clio.
- Sign in to Clio and allow access.
- On the machine that runs the SDK:
datayield connect clio --brokerThe 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:
datayield connect clio -o region=eu -o clientId=<client id> \
-o clientSecret=env:CLIO_CLIENT_SECRET -o refreshToken=env:CLIO_REFRESH_TOKENClio 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.