Harvest

Online Time Tracking and Invoicing Software

Integrate the Harvest API with the Python API

Setup the Harvest API trigger to run a workflow which integrates with the Python API. Pipedream's integration platform allows you to integrate Harvest and Python remarkably fast. Free for developers.

Run Python Code with Python API on New Invoice Entry from Harvest API
Harvest + Python
 
Try it
Run Python Code with Python API on New Time Entry from Harvest API
Harvest + Python
 
Try it
Run Python Code with Python API on New Timesheet Entry from Harvest API
Harvest + Python
 
Try it
New Invoice Entry from the Harvest API

Emit new notifications when a new invoice is created

 
Try it
New Time Entry from the Harvest API

Emit new notifications when a new time entry is created

 
Try it
New Timesheet Entry from the Harvest API

Emit new notifications when a new timesheet entry is created

 
Try it
Create Timesheet Entry with the Harvest API
 
Try it
Run Python Code with the Python API

Write Python and use any of the 350k+ PyPi packages available. Refer to the Pipedream Python docs to learn more.

 
Try it
Start Time Entry with the Harvest API

Restart a stopped timer entry. See docs here

 
Try it
Stop Time Entry with the Harvest API

Stop a timer entry. See docs here

 
Try it

Connect Harvest

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import { axios } from "@pipedream/platform"
export default defineComponent({
  props: {
    harvest: {
      type: "app",
      app: "harvest",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://api.harvestapp.com/v2/users/me`,
      headers: {
        Authorization: `Bearer ${this.harvest.$auth.oauth_access_token}`,
        "Harvest-Account-Id": `${this.harvest.$auth.account_id}`,
        "User-Agent": `Pipedream.com`,
      },
      params: {
        account_id: `${this.harvest.$auth.account_id}`,
      },
    })
  },
})

Connect Python

1
2
3
4
5
def handler(pd: "pipedream"):
  # Reference data from previous steps
  print(pd.steps["trigger"]["context"]["id"])
  # Return data for use in future steps
  return {"foo": {"test":True}}