View as Markdown
Expensify icon

Expensify ACTION

List Expenses

List individual expenses (transactions) for an employee within a date range, returning a structured JSON array (each with amount, currency, merchant, created date, category, receiptURL, reportID). NOT a file. Implemented via the Report Exporter with an embedded Freemarker JSON template that flattens transactionList, read in memory. Use List Policies to discover valid IDs for the optional policyId filter. To read all expenses on one specific report, use Get Report instead. See the documentation
  • Action
  • Read only
  • API key
  • SDK
  • MCP

IMPLEMENTATION

Call this tool

Connect a user's Expensify account once, then configure and run List Expenses from your backend or agent.

import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const result = await pd.actions.run({
  id: "expensify-list-expenses",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    expensify: { authProvisionId: "apn_xxxxxxx" },
    employeeEmail: "Employee Email",
    startDate: "Start Date",
  },
})

console.log(result)

SCHEMA

Inputs

Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.

List Expenses inputs
Property Type Description
employeeEmail Employee Email string
Employee email whose expenses to list.
Required
startDate Start Date string
Start of the date range, formatted yyyy-mm-dd (e.g. 2026-01-01).
Required
endDate End Date string
End of the date range, formatted yyyy-mm-dd (e.g. 2026-07-24). Required by the API when the range exceeds one year.
Required
policyId Policy ID string
Optional policy ID to filter by. Free-form string; run List Policies first to obtain valid IDs.
Optional

REFERENCE

Tool details

Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.

Registry key
expensify-list-expenses
Version
0.0.2
App
Expensify
Authentication
API key
Read-only
Yes
Destructive
No
Open world
Yes