Harpoon API Documentation
This is the complete API documentation for connecting to the Harpoon 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 Harpoon: Plan finances, track time, send invoices, and manage projects. Keep reading to get started.
Quickstart
Before you run your first Harpoon 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 Harpoon connection — create or choose one in Connections. Note its
connectionId.
Every Harpoon action uses the same URL pattern:
POST https://connect.mindcloud.co/v2/universal/apps/harpoon/actions/{actionSlug}/runYou need a MindCloud API Key and a Harpoon connection. Then call an action such as List Projects:
curl --request POST \
--url "https://connect.mindcloud.co/v2/universal/apps/harpoon/actions/list-projects/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 Harpoon account. See Harpoon API Authentication for the full flow and how to get your connection credentials.
Harpoon actions
All 22 published actions for this Harpoon version. Each page documents the endpoint, arguments, and response controls.
- POSTClone Time Entry
- POSTCreate Estimate
- POSTCreate Expense
- POSTCreate Project
- POSTCreate Time Entry
- DELETEDelete Time Entry
- GETGet Client
- GETGet Expense
- GETGet Invoice
- GETGet Project
- GETGet Time Entry
- GETList Clients
- GETList Estimates
- GETList Expenses
- GETList Invoices
- GETList Projects
- GETList Time Entries
- PUTUpdate Client
- PUTUpdate Expense
- PUTUpdate Invoice
- PUTUpdate Project
- PUTUpdate Time Entry
Related apps
More Commerce apps on the Universal API, behind the same REST shape. Or browse all apps.