List a case's transaction categories

Add MCP server to your AI tool

Allow AI tools and LLMs to interact with the API documentation portal through MCP.

MCP server URL

https://docs.usehearsay.com/mcp

Standard setup for AI tools providing an mcp.json file

mcp.json
{
  "integrations MCP server": {
    "url": "https://docs.usehearsay.com/mcp"
  }
}

Close
GET /financial-data/case/{caseId}/transactions/categories

Returns each category, with its subcategories, that has transactions across the case's accounts or the ones given, with a count at both levels and the account ids used; optional date range. On a case shared with opposing counsel, only accounts the caller may see are counted. Returns 403 while the monthly category summary feature is turned off.

Path parameters

  • caseId string Required

    Case ID

Query parameters

  • accountIds array[string]

    Restrict the lookup to these FinancialAccount IDs (all must belong to the case). Omit to include every linked account in the case. Accepts a repeated query param or a comma-separated list.

  • startDate string

    Only consider transactions from this date (inclusive). Format: YYYY-MM-DD.

  • endDate string

    Only consider transactions up to this date (inclusive). Format: YYYY-MM-DD.

Responses

  • 200 application/json
    Hide response attributes Show response attributes object
    • data object Required
      Hide data attributes Show data attributes object
      • categories array[object] Required

        Distinct categories present across the included accounts, sorted alphabetically with uncategorized last.

        Hide categories attributes Show categories attributes object
        • category string | null Required

          Normalized category name (uppercase). Null for uncategorized transactions.

        • transactionCount number Required

          Number of transactions in this category across the included accounts.

        • subcategories array[object] Required

          Subcategories nested under this category, sorted alphabetically with uncategorized (null) last. Empty when the category has no subcategories.

          Hide subcategories attributes Show subcategories attributes object
          • subcategory string | null Required

            Normalized subcategory name (uppercase). Null for transactions with no Plaid subcategory or whose primary category was overridden.

          • transactionCount number Required

            Number of transactions in this subcategory across the included accounts.

      • accountIds array[string] Required

        FinancialAccount IDs included in the lookup.

    • statusCode number Required
    • timestamp string(date-time) Required
GET /financial-data/case/{caseId}/transactions/categories
curl \
 --request GET 'http://api.example.com/financial-data/case/{caseId}/transactions/categories' \
 --header "Authorization: Bearer $ACCESS_TOKEN"
Response examples (200)
{
  "data": {
    "categories": [
      {
        "category": "FOOD_AND_DRINK",
        "transactionCount": 37,
        "subcategories": [
          {
            "subcategory": "FOOD_AND_DRINK_RESTAURANT",
            "transactionCount": 12
          }
        ]
      }
    ],
    "accountIds": [
      "507f1f77bcf86cd799439011"
    ]
  },
  "statusCode": 200,
  "timestamp": "2026-01-15T10:15:00.000Z"
}