Expensify API Documentation
This is the complete API documentation for connecting to the Expensify API using MindCloud's Universal API. If you are new to MindCloud, start with the Introduction to see how one API can sit in front of many different apps.
MindCloud is an integration company that offers one normalized API to access 3,100+ apps from a single place. It cleans up provider-specific quirks, keeps requests and responses consistent, and centralizes authentication so you do not need to manage separate flows for every app. Browse other apps.
Meet Expensify: Expensify is an expense management platform. This app wraps the Expensify Integration Server for policy, report, export, and related back-office automation. Keep reading to get started.
Quickstart
Before you run your first Expensify request, you need three things:
- A MindCloud account — sign in or create an account at MindCloud.
- A MindCloud API Key — create one in API Keys. Keep it on your server.
- At least one Expensify connection — create or choose one in Connections. Note its
connectionId.
Every Expensify action uses the same URL pattern:
POST https://connect.mindcloud.co/v2/universal/apps/expensify/actions/{actionSlug}/runYou need a MindCloud API Key and a Expensify connection. Then call an action such as List Policies:
curl --request POST \
--url "https://connect.mindcloud.co/v2/universal/apps/expensify/actions/list-policies/run" \
--header "Authorization: Bearer $MINDCLOUD_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"connectionId": "$CONNECTION_ID",
"arguments": {}
}'Every response comes back in the same envelope, with your rows in a data array:
{
"success": true,
"data": [
{ "id": "1042", "name": "Ava" }
],
"meta": {}
}After your first request works, use Shape your requests to control arguments, pagination, filtering, fields, and errors.
Authenticate with a MindCloud API Key plus a connectionId for your Expensify account. See Expensify API Authentication for the full flow and how to get your connection credentials.
Expensify actions
All 30 published actions for this Expensify version. Each page documents the endpoint, arguments, and response controls.
- PUTAssign Employees To Domain Groups
- POSTCreate Expense Rule
- POSTCreate Expenses
- POSTCreate Policy
- POSTCreate Report
- GETDownload Generated File
- GETDry Run Domain Group Assignment
- GETDry Run Employee Sync
- GETDry Run Employee Sync From SFTP
- GETDry Run Employee Sync From URL
- GETDry Run Employee Terminations
- GETExport Reports
- GETGet Policies
- GETList Domain Cards
- GETList Policies
- GETRun Reconciliation Export
- PUTSync Additional Policy Memberships
- PUTSync Employee Default Tags
- PUTSync Employee Primary Policies
- PUTSync Employee Roles
- PUTSync Employees
- PUTSync Employees From SFTP
- PUTSync Employees From URL
- PUTTerminate Employees
- PUTUpdate Expense Rule
- PUTUpdate Policy Categories
- PUTUpdate Policy Report Fields
- PUTUpdate Policy Tags
- PUTUpdate Report Status
- PUTUpdate Tag Approvers
Related apps
More Commerce apps on the Universal API, behind the same REST shape. Or browse all apps.