canonical: https://jentic.com/apis/eu.app.clio.com/clio-api-europe

# Eu App Clio Clio API Documentation (Europe)

The Clio API (EU region) is the OAuth 2.0 REST interface for Clio's legal practice management platform, hosted on European data centres. It exposes 282 endpoints covering matters, contacts, activities, bills, documents, calendar entries, tasks and trust accounting, so legal tech integrations can read and write the full case lifecycle. Versioning is controlled by the X-API-VERSION header, with 4.0.13 as the current default. Use the EU base URL for clients whose data must remain in the European region; the same surface is mirrored on US, Canada and Australia regional endpoints.

## For AI agents

Manage matters, contacts, activities, bills and calendar entries in a legal practice on Clio's European region with OAuth 2.0 access.

## Scope

Does not handle court e-filing, document drafting templates, or third-party legal research - use for managing matters, contacts, activities, bills and documents within Clio only.

## Capabilities

- Create and update matters that represent legal cases for a client
- Log time and expense activities against a matter for billing
- Manage contacts and their roles such as client, attorney or vendor
- Generate and retrieve bills for billable matters with line items
- Manage calendar entries, tasks and notes tied to a matter
- Read and write documents and document categories for case files
- Track trust account transactions and bank account reconciliation

## Use cases

### Time and billing automation

Log time entries against a matter as soon as they happen and roll them up into bills at month-end. POST /activities.json creates an activity with the matter ID, billable flag and quantity in seconds, and the activity then appears on the matter's draft bill. This replaces a manual timesheet flow that typically takes paralegals an hour each week.

Example prompt: POST /activities.json with matter_id, type Time, quantity in seconds and rate visibility, then verify the activity appears on GET /activities.json filtered by that matter_id.

### Matter intake from website forms

Convert a new client enquiry from a website form into a Clio contact and matter so the firm can begin work immediately. POST /contacts.json creates the contact, then POST /matters.json links the contact to a new matter with display_number and practice_area. Integration takes around two days against the live API.

Example prompt: POST /contacts.json with name and email from the form, capture the contact ID, then POST /matters.json with that ID and the chosen practice_area.

### Document management sync

Sync document metadata between Clio and an external DMS so attorneys can find files in either tool. The /documents.json endpoints expose name, category, matter association and version metadata; a nightly job calls GET /documents.json with updated_since to pull deltas. The 4.0.6 changelog notes the removal of the document_versions collection field, so version handling now uses a separate endpoint.

Example prompt: GET /documents.json with updated_since set to last sync timestamp, then upsert each document into the external DMS by matter ID.

### Trust account reconciliation

Reconcile client trust account balances against bank statements every month so the firm stays compliant with bar association rules. The /bank_accounts.json and /bank_transactions.json endpoints expose account totals and individual transactions which can be tied back to a matter for IOLTA compliance.

Example prompt: GET /bank_accounts.json filtered to trust accounts, then GET /bank_transactions.json for the period and group by matter_id.

### Agent-driven case automation via Jentic

An AI agent triages incoming client emails, finds the related matter via search, logs a brief activity and schedules a follow-up calendar entry through Clio. Jentic mediates the OAuth 2.0 access token so the agent never holds the long-lived refresh token, and discovers the right endpoint by intent.

Example prompt: Search Jentic for 'log time on a matter', load the schema for POST /activities.json, and execute with matter_id parsed from the email subject.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/activities.json` | List activities |
| POST | `/activities.json` | Create an activity (time or expense entry) |
| PATCH | `/activities/{id}.json` | Update an activity |
| GET | `/activity_rates.json` | List activity rates |
| POST | `/activity_rates.json` | Create a new activity rate |
| GET | `/activity_descriptions.json` | List activity descriptions |
| POST | `/activity_descriptions.json` | Create an activity description |
| DELETE | `/activities/{id}.json` | Delete an activity |

## Key resources

- **Activities** — Time and expense entries logged against matters
- **Matters** — Cases or projects managed for a client
- **Contacts** — People and companies including clients, attorneys and vendors
- **Bills** — Invoices generated from billable matters
- **Documents** — Files attached to matters
- **Calendar Entries** — Events tied to matters or users
- **Tasks** — To-do items assigned to users
- **Bank Accounts** — Operating and trust accounts with reconciliation
- **Bank Transactions** — Individual transactions on bank accounts
- **Activity Rates** — Billing rates applied to activities

## Why Jentic

- **Setup:** Wiring the Clio API (Europe) by hand means running its OAuth2 flow, refreshing tokens, targeting the EU eu.app.clio.com host, and mapping activity, matter, contact, and billing operations yourself. Through Jentic you install once, import the Clio API from the API Directory, store the OAuth credentials once, and your agent calls it.
- **Permission scoping:** Clio puts the record id in the URL path (`/activities/{id}.json`), so a rule can pin your agent to reading and updating one activity and nothing else. You choose the operations it may call, so DELETE `/activities/{id}.json` is not included unless you add it.
- **Credential handling:** Your Clio OAuth 2.0 access and refresh tokens are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'create a Clio activity' or 'list activity rates', and Jentic returns the matching Clio operation with its input schema so the agent calls the right endpoint without navigating the reference docs.

## Related APIs

- **Clio API (US region)** — Same Clio surface but on the US data region
- **Salesforce API** — Salesforce can serve as a generic CRM substitute for firms that build matter tracking on top of opportunities
- **Xero Accounting API** — Xero handles the firm's general accounting once Clio bills are issued

## FAQ

### What authentication does the Clio API (Europe) use?

Clio uses OAuth 2.0. Create a developer application in the EU developer portal at https://eu.developers.clio.com, then use the standard authorization-code flow to obtain an access token and refresh token. Through Jentic the refresh token sits in your Jentic One instance and the agent only sees a short-lived access token.

### Can I create matters and log time with the Clio API?

Yes. POST /matters.json creates a matter for a contact, and POST /activities.json logs a time or expense activity against that matter. Activity quantity is stored in seconds (per the 4.0.4 changelog), so multiply hours by 3600 before sending.

### How do I pin to a specific Clio API minor version?

Send the X-API-VERSION header with a value such as 4.0.13. Without the header you get the default version, which is currently 4.0.13. An invalid or unsupported version returns 410 Gone, so wire up version negotiation explicitly in production clients.

### What are the rate limits for the Clio API?

Clio applies per-application rate limits documented at https://docs.developers.clio.com/api-docs/rate-limits. The OpenAPI spec does not encode the exact ceiling - watch for 429 responses and the X-RateLimit headers in production.

### How do I sync documents through Jentic?

Use the Jentic search query 'list Clio documents updated since', which resolves to GET /documents.json with the updated_since query parameter. Run pip install jentic, load the operation, and execute with your last sync timestamp.

### Is there a difference between the EU and US Clio APIs?

The endpoints and shapes are identical, but the base URL and developer portal differ by region: eu.app.clio.com for EU, app.clio.com for US, plus AU and CA equivalents. Pick the region where the firm's data is hosted - they are not interchangeable.

### Can I limit what my agent is allowed to do with the Clio API (Europe)?

Yes. Jentic One is self-hosted by you, so your own rules decide which Clio operations the agent may call and which OAuth credentials it may use. Because Clio puts the record id in the URL path, such as `/activities/{id}.json`, you can pin the agent to reading and updating a single activity or matter and nothing else. You pick the operations it can reach, so a destructive call like DELETE `/activities/{id}.json` stays off unless you add it.
