Incora logo
AI Consulting
Expert Advice On Tech, Architecture And AI
Backend Development
Server-side Architecture And APIs
Frontend Development
Modern, Responsive Frontend Applications
UI/UX Design
Creating Intuitive User Experiences
Software QA & Testing
Ensuring Software Quality And Reliability
DevOps Services
Streamline Your Development Operations
AI Agents
Custom Agents That Handle Real Business Tasks
AI Voice Agents
Voice Assistants For Calls And Support
Agentic Automation
Multi-Step Workflows Run By AI Agents
Legacy Modernization
Upgrade Old Systems Faster With AI
Code Audit & Due Diligence
Check If AI-Built Code Is Safe To Ship
MCP Server Development
Connect AI Clients To Your Internal Systems
RAG Development
Accurate AI Answers From Your Own Data
Custom Software Development
Tailored Software Solutions For Unique Business Needs
Legacy App Modernization
Modernize And Transform Legacy Systems
Saas Development
End-To-End Saas Development From Idea To Launch
Business Process Automation
Automate Workflows And Business Operations
Startup Development
Rapid Product Development For Startups To Scale Quickly
Cross-Platform Apps
One Codebase For iOS And Android
Team Extension
Boost Your Team With Skilled Niche Developers
Dedicated Team
A Full Team Focused Solely On Your Project Needs
Real Estate
Smart Home Systems And Property Management
Fintech
Payment Processing And Banking Solutions
Booking Systems
Scheduling And Reservation Platforms
Construction
Site Management And Resource Planning
Management Systems
Workflow Optimization And Reporting Tools
Delivery & Shipping
Order Tracking And Route Optimization
Manufacturing
Production Systems And Quality Control
Supply Chain
Logistics Tracking And Inventory Management
Energy
Monitoring And Sustainable Tech solutions
Healthcare
Patient Portals And Telemedicine Platforms
Edutech
Learning Platforms And Course Management
IT Tools
Developer Tools And Internal Platforms
React.Js Developers
Build Dynamic Uls With React And Next.Js
Three.Js Developers
3D Graphics And WebGL Experiences
Next.Js Developers
Server-Rendered React With Next.Js
JavaScript Developers
Cross-Browser J Development
Vue.Js Developers
Lightweight And Performant Vue Interfaces
Redux Developers
State Management For Complex Apps
Angular Developers
Enterprise-Grade Angular Applications
Node.Js Developers
Scalable Server-Side Javascript Applications
GoLang Developers
High-Performance Microservices in Go
Full Stack Developers
End-To-End Web Application Development
Python Developers
Data-Driven Backends And APIs
NestJS Developers
Progressive Node.Js Framework
Flask Developers
Lightweight Python Web Framework
Express.Js Developers
Fast, Minimalist Web Framework
Django Developers
High-Level Python Web Framework
MERN Stack Developers
MongoDB, Express, React, Node.Js
AWS Developers
Cloud Architecture On Amazon Web Services
DevOps Engineers
CI/CD Pipelines And Infrastructure Automation
Azure Developers
Microsoft Azure Cloud Solutions
Google Cloud Developers
GCP Infrastructure And Services
Cloud Engineers
Multi-Cloud Infrastructure Management
Data Engineers
Data Pipelines And Warehouse Design
WebRTC Developers
Real-Time Communication Solutions
QA Engineers
Automated And Manual Testing Specialists
Offshore Developers
Cost-Effective Remote Development Teams
ERP Developers
Enterprise Resource Planning Solutions
Saas Developers
Saas Product Development Specialists
author photo

By Tetiana Stoyko

 - CTO & Co-Founder

API Integration Into LPMS: Clio, PracticePanther, Rocket Matter, Actionstep

How to connect to the PracticePanther, Clio, Actionstep and Rocket Matter APIs: getting credentials, OAuth 2.0 flow, token refresh and code examples.

19 min read
Updated: November 11, 2026Created: February 02, 2022
1448 views

Key Takeaways

  • Clio, PracticePanther, Actionstep, and Rocket Matter all offer open APIs secured with OAuth 2.0.
  • Clio lets developers register apps on their own. PracticePanther, Actionstep, and Rocket Matter issue API credentials on request.
  • Token lifetimes differ: 24 hours in PracticePanther, 8 hours in Actionstep, and 30 days in Clio Manage. Your integration should refresh them automatically.
  • Clio accounts are split by region (US, EU, Canada, Australia), and a token works only in its own region.
  • Actionstep charges a $500 setup fee for API credentials and reviews every production app.

Most popular legal practice management software (LPMS) platforms, including Clio, PracticePanther, Actionstep, and Rocket Matter, have open APIs you can use to build custom integrations. All four use OAuth 2.0, but they differ in how you get API access, how long tokens last, and how base URLs are built.

A modern law firm needs dependable software to keep its operations running smoothly. At the very least, an LPMS takes care of matter management, client management, and task management. Many firms also add a client portal, trust accounting, and document assembly on top.

In essence, an LPMS brings many separate parts of legal practice into one system. Most platforms work alongside your existing software or offer an Open API, so you can build PracticePanther integrations and other custom connections on your own.

Below, we cover the most popular law APIs and show you how to implement each one in detail. All of them follow a similar pattern and use OAuth 2.0 authorization.

LPMS APIs at a Glance

All four platforms use OAuth 2.0, so the main differences come down to how you get access, how long tokens last, and where you send requests. Here’s a quick comparison (as of October 2026):

How to get accessAuthToken lifetimeBase URLDocs
PracticePanther APIRequest from support, approved case by caseOAuth 2.0 (authorization code)Access 24 h; refresh up to 14 daysapp.practicepanther.com/api/v2API reference
Rocket Matter APICredentials on request from Rocket MatterOAuth 2.0 (authorization code)Check with the vendorProvided by Rocket Matter with credentialsRocket Matter support
Actionstep APIRequest via support: sandbox first, $500 setup fee, review before productionOAuth 2.0 (authorization code)Access 8 h; refresh 21 days, renewed with each new access tokenapi_endpoint returned with the tokendocs.actionstep.com
Clio API (Manage v4)Register an app yourself in the Clio developer portalOAuth 2.0 (authorization code)Access 30 days; refresh doesn’t expireapp.clio.com/api/v4 (US); eu., ca., au.app.clio.comdocs.developers.clio.com

PracticePanther API

PracticePanther is a legal practice management platform that you can connect with other systems. With the PracticePanther API, developers can integrate it with other applications or services, create custom reports and dashboards, automate workflows, and tailor PracticePanther to a firm’s practice.

The API covers accounts, bank accounts, call logs, contacts, custom fields, expenses, invoices, matters, and time entries.

Credentials

To get a Client ID and Client Secret, first create an account on the PracticePanther website. Then request API access: click Support at the top right of the page, choose Ask us Anything, and ask for API access.

There’s no self-serve signup here. For API partnerships, PracticePanther approves access case by case.

Once you’re approved, you’ll be able to create an app. Give it a name, add your redirect URL, and save it. PracticePanther then generates your OAuth 2.0 credentials: a Client ID and a Client Secret.

Please note: your redirect URL must use HTTPS and be registered with the PracticePanther development team. In development, local http hosts are also accepted.

Authorization

With your OAuth 2.0 credentials in hand, you can request access and refresh tokens. First, redirect the user to this URL:

https://app.practicepanther.com/oauth/authorize?response_type=code&client_id=YOUR_CLIENT_ID&redirect_uri=YOUR_REDIRECT_URI&state=YOUR_STATE

After the user signs in, PracticePanther sends them back to your redirect URL with an authorization code:

https://YOUR_REDIRECT_URI/?code=THE_AUTHORIZATION_CODE

Next, exchange the code for access and refresh tokens with a POST request to https://app.practicepanther.com/oauth/token. The request looks like this:

import * as qs from 'qs';
import axios from 'axios';

const code = body.code;

const authPayload = {
  grant_type: 'authorization_code',
  code,
  client_id: 'YOUR_CLIENT_ID',
  client_secret: 'YOUR_CLIENT_SECRET',
  redirect_uri: 'YOUR_REDIRECT_URI',
};

const authHeaders = {
  headers: {
    'Content-Type': 'application/x-www-form-urlencoded',
  },
};

const response = await axios.post('https://app.practicepanther.com/oauth/token', qs.stringify(authPayload), authHeaders);

Please note: send the payload as x-www-form-urlencoded.

The response will look like this:

{
  "access_token": "SOME_TOKEN",
  "token_type": "bearer",
  "expires_in": 86400,
  "refresh_token": "SOME_TOKEN"
}

The access token expires in one day. To refresh it, send the same request with this payload:

const authPayload = {
  grant_type: 'refresh_token',
  refresh_token: 'YOUR_REFRESH_TOKEN',
  client_id: 'YOUR_CLIENT_ID',
  client_secret: 'YOUR_CLIENT_SECRET',
};

Keep an eye on the refresh token too. According to PracticePanther’s API reference, it lasts up to 14 days, so make sure your integration refreshes tokens before then.

Perform API calls

API requests go to https://app.practicepanther.com/api/v2/. For every call, include the access token in the Authorization header:

const requestHeaders = {
  Authorization: `Bearer YOUR_ACCESS_TOKEN`,
};

List endpoints also support OData queries, so you can filter and sort results with parameters like $filter and $orderby.

You’ll find the full reference, sample code, SDKs, and libraries in the PracticePanther API documentation.

API issues

The key entities in this API are Contacts, Matters, Time Entries, and Expenses. One thing to keep in mind: the Contacts API is read-only. For create, update, and delete operations, use the Accounts endpoints instead.

Rocket Matter API

Rocket Matter is a legal practice management system (LPMS) that helps firms design workflows, move cases through their stages, set up automated online payments, and generate reports. By connecting the Rocket Matter API to your application, you can bring this data and functionality into your own product.

Credentials

API access isn’t self-serve, so start by contacting Rocket Matter support. Rocket Matter is part of ProfitSolv, and according to third-party integrations, new connections now go through the ProfitSolv Integration API.

Rocket Matter issues your credentials and tells you which API and hosts to use. When you reach out, describe what your integration does and which data it needs, so Rocket Matter can set up the right access.

Authorization

The flow is standard OAuth 2.0 with an authorization code. You redirect the user to Rocket Matter’s consent page, receive a code at your redirect URL, and exchange it for access and refresh tokens.

Rocket Matter provides the exact endpoints, hosts, and token lifetimes together with your credentials.

Please note: the older Rocket Matter API (API_V2, documented at developer.rocketmatter.com) uses session-based tokens. If you’re maintaining an older integration, plan a migration.

Perform API calls

Once you have an access token, send it with every request in the format your Rocket Matter documentation specifies.

According to third-party integrations, the newer API covers matters, clients and contacts, time entries, expenses, invoices, payments, transactions, users, and documents (read-only). Still, check the exact scope with Rocket Matter before you plan your integration, since features like tasks and calendars may not be available.

Actionstep API

Actionstep is a legal practice management platform built around workflows. With the Actionstep API, developers can work with workflow elements that describe the steps, tasks, and timing of any procedure. You can also access documents and management features through code.

Credentials

To get API credentials, contact Actionstep’s support team. You’ll get sandbox credentials first (an API access key and a client secret).

Keep the costs and timeline in mind, too. Actionstep charges a $500 setup fee for API credentials, and every production app goes through an API review before it gets its own production credentials. If you plan a launch date, give Actionstep’s support team at least two weeks’ notice to schedule the review.

Also note that sandbox and production credentials aren’t interchangeable, and API access isn’t available for Actionstep Express systems.

Authorization

The flow is similar to the previous integrations. Once you have your OAuth 2.0 credentials, redirect the user to this URL:

https://go.actionstep.com/api/oauth/authorize?response_type=code&scope=<YOUR_SCOPES>&client_id=<YOUR_CLIENT_ID>&redirect_uri=<YOUR_REDIRECT_URI>

The scope is required. List the resources your app needs, for example actions participants timerecords.

Actionstep then sends the user back to your redirect URL with a code:

https://YOUR_REDIRECT_URI/?code=THE_AUTHORIZATION_CODE

Use the code to request access and refresh tokens from https://api.actionstep.com/api/oauth/token. For the sandbox, use go.actionstepstaging.com to authorize and api.actionstepstaging.com to get tokens.

As with PracticePanther, set the Content-Type for this request to application/x-www-form-urlencoded:

const code = body.code;

const authPayload = {
  grant_type: 'authorization_code',
  client_id: '<YOUR_CLIENT_ID>',
  client_secret: '<YOUR_CLIENT_SECRET>',
  redirect_uri: '<YOUR_REDIRECT_URI>',
  code,
};

const headers = {
  'Content-Type': 'application/x-www-form-urlencoded',
};

const url = 'https://api.actionstep.com/api/oauth/token';

const tokens = await axios.post(url, qs.stringify(authPayload), { headers });

The access token lasts 8 hours. The refresh token lasts 21 days, and you get a new one with every new access token.

To refresh a token, send the same request with grant_type: 'refresh_token' and your refresh token instead of the code.

Perform API calls

For every API call, put the access token in the Authorization header. Also set both the Content-Type and Accept headers to application/vnd.api+json:

const requestHeaders = {
  'Content-Type': 'application/vnd.api+json',
  Accept: 'application/vnd.api+json',
  Authorization: 'Bearer <YOUR_ACCESS_TOKEN>',
};

Note that the base URL for API calls isn’t fixed. Take the api_endpoint value from the token response and add rest/ plus the resource name, for example:

https://ap-southeast-2.actionstep.com/api/rest/actiontypes

You’ll find the list of all available resources in the Actionstep API documentation.

Clio API

Clio is an LPMS designed for small and mid-sized law firms. Clio integrations with Clio Manage are built on the Clio Manage API (v4).

The API gives you access to the system’s functionality and the data stored in a firm’s Clio account. It includes methods for working with activities, bills, contacts, matters, tasks, and users.

Credentials

Getting credentials is easier here than with the other three platforms. Just create an account at Clio and register your app in the Clio developer portal. Once you fill in the required information, you’ll receive your App Key and App Secret.

Along with the app name, you’ll need to add at least one redirect URI. You can also set a deauthorization callback URL, so Clio notifies your app whenever a firm revokes its access.

Authorization

The authorization flow is very similar to the previous integrations, only with different URLs. First, redirect the user to:

https://app.clio.com/oauth/authorize?response_type=code&client_id=<YOUR_CLIENT_ID>&redirect_uri=<YOUR_REDIRECT_URI>&state=<YOUR_STATE>

After the user is redirected back to your REDIRECT_URI, send the code to https://app.clio.com/oauth/token with Content-Type application/x-www-form-urlencoded and grant_type=authorization_code.

The access token lasts 30 days. To renew it, send the same request with grant_type=refresh_token and your refresh token. Clio Manage refresh tokens don’t expire, so store them securely. If a firm disconnects your app, you can revoke its access token with a POST request to https://app.clio.com/oauth/deauthorize.

Pay attention to regions as well. Clio hosts accounts in four of them: US (app.clio.com), EU (eu.app.clio.com), Canada (ca.app.clio.com), and Australia (au.app.clio.com). A token issued in one region doesn’t work in another.

Clio also offers a newer Clio Platform API (auth.api.clio.com), which currently covers Clio Grow. It works a bit differently: access tokens last 24 hours, and the refresh token rotates on each use.

Perform API calls

For every API call, put the access token in the Authorization header:

const requestHeaders = {
  Authorization: 'Bearer <YOUR_ACCESS_TOKEN>',
};

You’ll find all endpoints in the Clio API documentation.

One more useful feature: Clio supports bulk actions. They come in handy when you need to move large amounts of data to or from Clio.

Not sure where to start with your LPMS integration?

We can help you figure out which API fits your workflow and what to connect first.

API Security for Law Firm Integrations

Legal data is confidential by default, so an LPMS integration needs more care than a typical SaaS connection. Here’s what law firm API security looks like in practice:

  • Request only the scopes you need. For example, ask for read-only access to matters if you never write data.
  • Store secrets safely. Keep client secrets and refresh tokens encrypted, and never put them in front-end code.
  • Automate token handling. Refresh tokens automatically, and revoke them when a firm disconnects your app.
  • Keep data in the right region. Clio, for example, separates US, EU, Canadian, and Australian accounts.
  • Log every API call that reads or changes client data, so the firm can audit it.
  • Expect a security review. Actionstep reviews production apps, and many firms will ask for SOC 2 or similar evidence.

Most of this work happens on the server side, so make sure your backend team plans for it from the start.

To wrap up

With API integration, an LPMS can do a lot more for a law firm. Firms can send fresh leads from automated searches straight into their system, store docket entries and documents, get automatic alerts about new filings and case updates, and much more.

For a traditional law firm, two benefits stand out: lower costs and higher productivity. In other words, lawyers save time, money, and effort by automating previously time-consuming operations.

Now you know the steps for API integration with Clio, PracticePanther, Rocket Matter, and Actionstep. If you need PracticePanther integrations or want to connect any other LPMS, our integration consultants will be glad to help you implement them.

FAQ

Which legal practice management software has an open API?

Clio, PracticePanther, Actionstep, and Rocket Matter all offer open APIs with OAuth 2.0. Clio lets developers register apps on their own, while PracticePanther, Actionstep, and Rocket Matter issue API credentials on request.

How do I get PracticePanther API access?

Request it from PracticePanther support. Access is approved case by case. Once approved, you get OAuth 2.0 client credentials, and your redirect URL must use HTTPS and be registered with their team.

Does Clio have an API?

Yes. Clio Manage has a REST API (v4) secured with OAuth 2.0. US accounts use app.clio.com, while EU, Canadian, and Australian accounts use their own regional URLs. Tokens only work in their own region.

How long do LPMS API tokens last?

Access tokens last 24 hours in PracticePanther, 8 hours in Actionstep, and 30 days in Clio Manage. Use the refresh token to get a new one automatically. Actionstep refresh tokens last 21 days and are renewed each time; PracticePanther refresh tokens last up to 14 days, and Clio Manage refresh tokens don’t expire.

How do law firms keep API integrations secure?

They limit what each integration can access and protect the credentials it uses. In practice, that means requesting only the scopes you need, storing secrets and tokens encrypted, keeping data in the right region, and logging every action on client data. Most firms will also ask for a security review before connecting a new app.

AI Summary
PerplexityChatGPTClaudeGemini

Get in Touch

Got no clue where to start? Why don’t we discuss your idea?

🌐
Danylo Karpa
Danylo Karpa
Head of Strategic Partnerships

Just pick a time. No forms.

30 minGoogle MeetNo commitment