Supergood | Aderant API

Supergood | Aderant API

Programmatically access matters, time entries, rates, prebills/invoices, eBilling statuses, and trust balances from Aderant with a stable REST API. Supergood builds and operates production-grade, unofficial Aderant integrations so your team can automate legal billing and matter workflows without heavy custom engineering.

Plain English: Aderant is software law firms use to run the business of law—tracking time, managing clients and matters, generating bills, submitting eBills, handling trust and AR, enforcing outside counsel guidelines (OCGs), and reporting on firm performance. An unofficial API lets you pull clients, matters, WIP, and invoices—and push time/expense entries, prebill edits, narrative updates, and invoice submissions—so your apps can fit naturally into fee earner and billing workflows.

For a tech company integrating with Aderant—especially if your customer lives in iManage—this means you can mirror matter context from the DMS, capture and validate time against OCGs before it hits WIP, surface budgets and AR inside workspaces, attach invoice PDFs stored in iManage, and keep eBilling statuses in sync. You can build features like document-context time capture, prebill collaboration, automated LEDES packaging, and real-time matter dashboards without building brittle screen-scrapers.

What is Aderant?

Aderant (https://www.aderant.com) provides practice management and financial systems for law firms, including Aderant Expert and Expert Sierra (cloud), plus products like iTimekeep (time capture), BillBlast (eBilling), CompuLaw (docketing/calendaring), Handshake (knowledge/intranet), and OCG Live (guideline enforcement). Firms rely on Aderant to handle timekeeping, matter and client records, billing and eBilling, trust and AR, conflicts and intake, docketing, reporting, and role-based approvals.

Core product areas include:

  • Timekeeping & Rates (time/expense capture, rate tables, alternative fee arrangements)
  • Matter & Client Management (intake, conflicts, client/matter hierarchies, assignments)
  • Billing & eBilling (prebills, narratives, write-ups/downs, LEDES files, BillBlast submission)
  • OCG Management (policy rules, validations, exception routing)
  • Docketing & Calendaring (rules-based court deadlines via CompuLaw)
  • Trust, AR & Collections (trust balances, receipts, write-offs, payment application)
  • Reporting & Analytics (WIP/AR dashboards, utilization, realization)
  • Knowledge & Integrations (Handshake portals, iManage/SharePoint links)

Common data entities:

  • Clients & Contacts (client number, billing addresses, payors)
  • Matters (matter number, titles, responsible partners, practice groups, phases/tasks)
  • Timekeepers/Users (attorneys, paralegals, roles, rates)
  • Rates & Rate Cards (standard, client/matter negotiated, timekeeper-specific)
  • Time & Expense Entries (date, hours/amount, UTBMS codes, narratives, status)
  • Prebills & Invoices (line items, adjustments, taxes, LEDES exports, statuses)
  • eBilling Submissions (target vendor, file versions, acceptance/rejection)
  • Payments & Trust (receipts, allocations, balances, transfers)
  • OCG Rules (policy definitions, violations, exceptions)
  • Approvals & Audit (who approved, when, changes)

The Aderant Integration Challenge

Legal finance data and workflows are robust—and integrating cleanly is non-trivial:

  • Multi-environment variability: Expert on-prem vs Expert Sierra, custom fields via Designer, regional ledgers, and firm-specific workflows
  • Prebill lifecycle: WIP, draft, routing, revisions, and finalization span days and require idempotent, auditable updates
  • OCG nuance: Client-specific rules (activity/task codes, narratives, rates, caps) must be validated consistently to avoid eBilling rejections
  • eBilling complexity: LEDES generation, BillBlast submissions, vendor acknowledgements, and rejection remediation are asynchronous
  • Authentication & security: AD/SSO/MFA and session handling differ by firm; least-privilege and entitlement alignment are mandatory
  • DMS context: iManage workspaces are often the primary attorney interface; mapping matter and document context is essential
  • Audit rigor: Every post, edit, and approval needs traceability with before/after values and user attribution

How Supergood Creates Aderant APIs

Supergood reverse-engineers authenticated browser flows and network interactions to deliver a resilient API endpoint layer for your Aderant tenant.

  • Handles username/password, SSO/OAuth, and MFA (SMS, email, TOTP) securely for on-prem or cloud deployments
  • Maintains session continuity with automated refresh and change detection
  • Normalizes matter, time/expense, rate, prebill, and invoice objects into consistent schemas
  • Aligns with customer entitlements and role-based permissions to ensure compliant access
  • Supports high-volume operations (time capture, prebill sync) with polling or webhooks for long-running jobs (billing runs, eBilling responses)
  • Maps DMS context (e.g., iManage workspace IDs) to Aderant clients/matters so your features live where attorneys work

Use Cases

Time Capture From iManage

  • Capture time against the active iManage document/workspace and post to the correct client/matter with UTBMS codes
  • Validate entries against OCGs pre-post, suggest compliant narratives, and flag exceptions
  • Auto-apply negotiated rates and calculate WIP amounts

Matter Finance Inside the DMS

  • Show budgets, WIP, AR, and rate info inside iManage workspaces
  • Let users request rate exceptions or add matter notes that sync back to Aderant
  • Keep matter lists in sync across practice teams and deal rooms

Prebill Review & eBilling

  • Pull prebills with line-level details for in-app redlines, write-ups/downs, and narrative edits
  • Attach invoice PDFs stored in iManage, generate LEDES, and submit via BillBlast
  • Track acceptance/rejection statuses and remediate with one-click corrections

Intake, Conflicts, and Approvals

  • Start matter intake from your app, capture required fields, and route to approvers
  • Run conflicts via the firm’s process and sync the resulting matter to create an iManage workspace
  • Enforce approval gates before time or billing can proceed

Available Endpoints

Authentication

POST /sessions: Establish a session using credentials. Supergood manages MFA (SMS, email, TOTP) and SSO/OAuth when enabled. Returns a short-lived auth token maintained by the platform.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/sessions \
  --header 'Authorization: Basic <Base64 encoded token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "username": "[email protected]",
    "password": "<password>",
    "mfa": { "type": "totp", "code": "123456" }
  }'

Example response

{
  "authToken": "eyJhbGciOi...",
  "expiresIn": 3600,
  "user": {
    "id": "u_adrt_7a31c2",
    "name": "Billing Admin",
    "entitlements": ["matters", "time", "rates", "billing", "ebilling"]
  }
}

POST /sessions/refresh: Refresh an existing token to keep sessions uninterrupted.

Matters

GET /matters: List matters with filters for client, status, and update windows. Useful for syncing iManage workspace cards with live financial context.

Query parameters

  • clientId: string
  • matterNumber: string (supports partial match)
  • status: open | closed | pending_intake
  • updatedFrom, updatedTo: ISO 8601 timestamps
  • page, pageSize: integers for pagination

Example response

{
  "items": [
    {
      "matterId": "mat_200341",
      "matterNumber": "012345-0001",
      "title": "Acquisition of Contoso Ltd.",
      "client": { "clientId": "cli_10982", "clientNumber": "012345", "name": "Fabrikam PLC" },
      "status": "open",
      "openedDate": "2025-10-03",
      "responsibleTimekeeperId": "tk_00421",
      "practiceGroup": "Corporate",
      "billing": {
        "currency": "USD",
        "rateCardId": "rate_2025_corp",
        "budgetHours": 650,
        "wipAmount": 183250.00,
        "arAmount": 94210.50
      },
      "utbms": { "phaseCode": "L100" },
      "externalRefs": {
        "iManageWorkspaceId": "iMW-012345-0001",
        "dms": "imanage"
      },
      "updatedAt": "2026-01-18T14:11:22Z"
    }
  ],
  "page": 1,
  "pageSize": 50,
  "total": 1
}

POST /matters: Create a new matter (post-intake) or update select fields.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/matters \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "clientId": "cli_10982",
    "title": "Contoso IP Portfolio Review",
    "practiceGroup": "IP",
    "responsibleTimekeeperId": "tk_00115",
    "billing": {"currency": "USD", "rateCardId": "rate_2026_ip"},
    "externalRefs": {"iManageWorkspaceId": "iMW-012345-0002"}
  }'

Example response

{
  "matterId": "mat_200512",
  "matterNumber": "012345-0002",
  "status": "open",
  "createdAt": "2026-01-21T10:03:11Z"
}

Time Entries

POST /time-entries: Create or update a time entry for a matter and timekeeper. Optionally validate against OCGs before committing to WIP.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/time-entries \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "externalId": "imevt_8f3a2c",  
    "matterId": "mat_200341",
    "timekeeperId": "tk_00421",
    "date": "2026-01-21",
    "hours": 2.3,
    "activityCode": "A102",
    "taskCode": "L120",
    "narrative": "Reviewed draft share purchase agreement (iManage doc 98.1)",
    "validateOcg": true
  }'

Example response

{
  "timeEntryId": "te_91c20a",
  "status": "wip",
  "rate": 525.00,
  "amount": 1207.50,
  "ocg": {
    "validated": true,
    "violations": []
  },
  "createdAt": "2026-01-21T11:20:44Z"
}

GET /time-entries: List entries by matter, timekeeper, or date range for prebill assembly.

Query parameters: matterId, timekeeperId, dateFrom, dateTo, status, page, pageSize

Invoices

GET /invoices: List prebills and finalized invoices with filters.

Query parameters

  • status: prebill | pending_approval | approved | submitted | paid | rejected
  • clientId, matterId: string
  • updatedFrom, updatedTo: ISO 8601 timestamps
  • page, pageSize: integers for pagination

Example response

{
  "items": [
    {
      "invoiceId": "inv_7ab821",
      "invoiceNumber": "2026-000487",
      "clientId": "cli_10982",
      "matterId": "mat_200341",
      "currency": "USD",
      "totalAmount": 29450.00,
      "status": "prebill",
      "ledes": {"available": true, "version": "1998B"},
      "attachments": [{"fileName": "prebill_2026-000487.pdf", "source": "imanage", "docId": "98.2"}],
      "updatedAt": "2026-01-21T11:21:03Z"
    }
  ],
  "page": 1,
  "pageSize": 50,
  "total": 1
}

PATCH /invoices/{invoiceId}: Update prebill lines, add attachments, finalize, and optionally submit to eBilling.

curl --request PATCH \
  --url https://api.supergood.ai/integrations/<integration_id>/invoices/inv_7ab821 \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "status": "approved",
    "writeDown": 450.00,
    "narrativeAddendum": "Discount applied per engagement letter.",
    "attachments": [
      {"fileName": "final_2026-000487.pdf", "uploadToken": "upl_0f9a51"}
    ],
    "submitToEbilling": true,
    "ebilling": {"target": "CounselLink", "version": "LEDES1998B"}
  }'

Example response

{
  "invoiceId": "inv_7ab821",
  "status": "submitted",
  "ebilling": {"submissionId": "eb_44c912", "target": "CounselLink"},
  "updatedBy": {"userId": "u_adrt_7a31c2", "name": "Billing Admin"},
  "updatedAt": "2026-01-22T08:15:12Z"
}

OCG Validation

POST /ocg/validate: Preflight-check a time or expense entry against client/matter OCGs and rate rules without posting it.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/ocg/validate \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "matterId": "mat_200341",
    "timekeeperId": "tk_00421",
    "date": "2026-01-21",
    "hours": 2.3,
    "activityCode": "A102",
    "taskCode": "L120",
    "narrative": "Reviewed draft share purchase agreement",
    "rate": 525.00
  }'

Example response

{
  "validated": false,
  "violations": [
    {
      "code": "OCG-NARR-001",
      "severity": "warning",
      "message": "Narrative must include client matter reference.",
      "suggestedFix": "Append matter number 012345-0001."
    },
    {
      "code": "OCG-RATE-002",
      "severity": "error",
      "message": "Partner rate exceeds negotiated cap (USD 500).",
      "suggestedFix": "Set rate to 500.00 or route for exception approval."
    }
  ]
}

Get full API Specs →


Technical Specifications

  • Authentication: Username/password with MFA (SMS, email, TOTP) and SSO/OAuth where enabled; supports service accounts or customer-managed credentials
  • Connectivity: Works with Expert on-prem (via secure connector/VPN) and Expert Sierra (cloud); honors firm network policies
  • Response format: JSON with consistent resource schemas and pagination across modules
  • Rate limits: Tuned for enterprise throughput while honoring customer entitlements and usage controls
  • Session management: Automatic reauth and cookie/session rotation with health checks
  • Data freshness: Near real-time retrieval of matters, time/WIP, prebills, invoices, and eBilling statuses
  • Security: Encrypted transport, scoped tokens, audit logging; respects Aderant role-based permissions and approval gates
  • Webhooks: Optional asynchronous delivery for long-running workflows (billing runs, eBilling accept/reject, trust receipts)

Performance Characteristics

  • Latency: Sub-second responses for list/detail queries under normal load; billing and eBilling operations reflect underlying platform timing
  • Throughput: Designed for high-volume time capture and prebill synchronization across large matter portfolios
  • Reliability: Retry logic, backoff, and idempotency keys minimize duplicates and support at-least-once processing
  • Adaptation: Continuous monitoring for UI/API changes with rapid adapter updates

Getting Started

  1. Schedule Integration Assessment

Book a 30-minute session to confirm your modules, licensing, deployment (on-prem vs cloud), and authentication model.

  1. Supergood Builds and Validates Your API

We deliver a hardened Aderant adapter tailored to your workflows, entitlements, and iManage context mapping.

  1. Deploy with Monitoring

Go live with continuous monitoring and automatic adjustments as Aderant evolves.

Schedule Integration Call →


Frequently Asked Questions

Q: Which Aderant modules can this integration cover?

Supergood commonly supports Time & Expense (iTimekeep), Matters & Rates, Billing & Prebills, eBilling (BillBlast), Trust & AR, and OCG validations, subject to your licensing and entitlements. We scope coverage during integration assessment.

Q: How do you map iManage workspaces to Aderant matters?

We normalize and store external references (e.g., iManage workspace IDs) on matter objects, allowing your iManage UI to display live budgets, WIP/AR, and invoice status, and ensuring time captured from documents posts to the right matter.

Q: Do you support LEDES generation and vendor submissions?

Yes. We generate LEDES (e.g., 1998B) from approved prebills, attach PDFs, submit via BillBlast, and track acceptance/rejection with webhook notifications or polling.

Q: How are OCG rules enforced during time capture?

Entries can be preflight-validated with detailed violations and suggested fixes. You can block posting on errors or route for exception approval while preserving an audit trail.

Q: How do you handle on-prem Aderant Expert?

We deploy a secure connector inside your network (or via VPN/bastion) to interact with Expert while keeping data within your control. All actions respect firm entitlements and approval chains.


iManage API - Bring Aderant finance data into your DMS workflows


Ready to automate your Aderant workflows?

Supergood can have your Aderant integration live in days with no ongoing engineering maintenance.

Get Started →

Read more