LeanLaw · OAuth Scopes

LeanLaw OAuth Scopes

OAuth 2.0 probed

LeanLaw uses OAuth 2.0 but publishes no discrete scopes — access is governed by the grant itself (e.g. client-credentials or role-based authorization) rather than per-scope consent.

This index is generated from the provider’s OpenAPI security definitions (and, where available, its documented scope reference) and refreshes on every APIs.io network build. Browse every provider’s scopes at scopes.apis.io.

LegalLegal BillingLaw FirmsTime TrackingBillingInvoicingAccountingTrust AccountingPractice ManagementQuickBooksPaymentsLegal TechSoftware-as-a-Service
Scopes: 0 Flows: Method: probed

Scopes (0)

LeanLaw implements OAuth 2.0 but publishes no discrete scopes — access is governed by the grant itself (client-credentials or role-based authorization) rather than per-scope consent.

Derived from the LIVE OAuth metadata, not from the OpenAPI. The published OpenAPI declares only a `BearerAuth` (http/bearer) scheme with no oauth2 flows, so derive-oauth-scopes.py found zero scopes in the spec; the real scope surface is published in the authorization-server and protected-resource discovery documents. This is a genuine gap between LeanLaw's contract and its deployed auth.

Source

OAuth Scopes

Raw ↑
generated: '2026-08-25'
method: probed
source: https://api.leanlaw.io/.well-known/oauth-protected-resource
docs: https://platform.leanlaw.io/agents
note: >-
  Derived from the LIVE OAuth metadata, not from the OpenAPI. The published OpenAPI declares only a
  `BearerAuth` (http/bearer) scheme with no oauth2 flows, so derive-oauth-scopes.py found zero scopes
  in the spec; the real scope surface is published in the authorization-server and protected-resource
  discovery documents. This is a genuine gap between LeanLaw's contract and its deployed auth.
authorization_server: https://auth.myleanlaw.co/
issuer: https://auth.myleanlaw.co/
protected_resource: https://api.leanlaw.io/mcp
authorization_endpoint: https://api.myleanlaw.co/oauth/authorize
token_endpoint: https://api.myleanlaw.co/oauth/token
revocation_endpoint: https://api.myleanlaw.co/oauth/revoke
jwks_uri: https://api.myleanlaw.co/.well-known/jwks.json
flows:
- authorization_code
- refresh_token
pkce:
  supported: true
  code_challenge_methods: [S256, plain]
token_endpoint_auth_methods:
- none
- client_secret_basic
- client_secret_post
- private_key_jwt
scope_count: 16
scopes:
- name: openid
  description: OpenID Connect authentication; issues an ID token (RS256).
  source: openid-configuration
- name: offline_access
  description: Issue a refresh token so the agent can act after the initial session expires.
  source: both
- name: 'read:*'
  description: Read access to every supported resource. Wildcard grant.
  source: both
- name: 'write:*'
  description: Write access to every supported resource. Wildcard grant.
  source: both
- name: 'read:clients'
  description: Read law-firm clients, including contact details when requested via select=contact.
  source: both
- name: 'write:clients'
  description: Create, update and delete clients.
  source: both
- name: 'read:matters'
  description: Read matters, their responsible/originator users, practice area and LEDES configuration.
  source: both
- name: 'write:matters'
  description: Create, update and delete matters. Creating a matter can also create the matching
    QuickBooks Online customer/sub-customer for firms on the QBO integration.
  source: both
- name: 'read:time-entries'
  description: Read billable time entries.
  source: both
- name: 'write:time-entries'
  description: Create, update and delete time entries.
  source: both
- name: 'read:expenses'
  description: Read matter expenses.
  source: both
- name: 'write:expenses'
  description: Create, update and delete expenses.
  source: both
- name: 'read:fixed-fees'
  description: Read fixed-fee (flat-fee) billable items.
  source: both
- name: 'write:fixed-fees'
  description: Create, update and delete fixed fees.
  source: both
- name: 'read:invoices'
  description: Read invoices. There is no write scope for invoices — the invoice surface is read-only.
  source: both
- name: 'read:balances'
  description: Read client account balances.
  source: both
- name: 'read:codes'
  description: Read LEDES activity, task and expense code sets.
  source: both
observations:
- No write scope exists for invoices, balances or codes — those surfaces are read-only by design and
  the scope list reflects it.
- Trust accounts and settlements are explicitly excluded from the agent surface per
  https://platform.leanlaw.io/agents, and no scope is published for them.
- The `read:*` / `write:*` wildcards let a client request blanket access; a least-privilege
  integration should request the specific resource scopes instead.

Work with this as data

Every scope set here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for oauth scopes

4 MCP tools reach this
  • find_scopesBrowse and filter every scope set in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This scope set
curl "https://apis.io/api/v1/scopes/leanlaw-scopes"
All oauth scopes
curl "https://apis.io/api/v1/scopes?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.