View as Markdown
Harvest icon

Harvest ACTION

Delete Invoice

Permanently delete an invoice. Use List Invoices to find a valid ID. Example: call with invoiceId set to a draft invoice's ID to remove it before it's sent. See the documentation.
  • Action
  • Writes data
  • Destructive
  • OAuth
  • SDK
  • MCP

IMPLEMENTATION

Call this tool

Connect a user's Harvest account once, then configure and run Delete Invoice 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: "harvest-delete-invoice",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    harvest: { authProvisionId: "apn_xxxxxxx" },
    accountId: "Account ID",
    invoiceId: "Invoice ID",
  },
})

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.

Delete Invoice inputs
Property Type Description
accountId Account ID string
Your Harvest account ID, e.g. 1234567. Run List Account ID Options to find it.
Required
invoiceId Invoice ID string
Free-form invoice ID, e.g. 13150403. Run List Invoices first to find valid IDs.
Required

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
harvest-delete-invoice
Version
0.0.1
App
Harvest
Authentication
OAuth
Read-only
No
Destructive
Yes
Open world
Yes