@pipedream/harvest 0.0.6 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -12
- package/actions/create-timesheet-entry/create-timesheet-entry.mjs +6 -1
- package/actions/get-projects/get-projects.mjs +6 -1
- package/actions/list-account-id-options/list-account-id-options.mjs +24 -0
- package/actions/start-timer/start-timer.mjs +6 -1
- package/actions/stop-timer/stop-timer.mjs +6 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -1,16 +1,11 @@
|
|
|
1
1
|
# Overview
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
in Harvest, a web-based time tracking application. With the API, developers can
|
|
5
|
-
create applications that submit and retrieve time tracking data, as well as
|
|
6
|
-
automate various aspects of the Harvest user experience.
|
|
3
|
+
Harvest is a time tracking and invoicing tool that can streamline the way freelancers and businesses record time for various projects and tasks. By leveraging the Harvest API on Pipedream, you can automate complex workflows that integrate time tracking data with other business tools. Generate reports, sync project data, and manage invoices with minimal manual intervention. Pipedream's serverless platform lets you create these automations using simple, code-driven components, enabling a seamless connection between Harvest and a multitude of other apps.
|
|
7
4
|
|
|
8
|
-
|
|
5
|
+
# Example Use Cases
|
|
9
6
|
|
|
10
|
-
-
|
|
11
|
-
|
|
12
|
-
-
|
|
13
|
-
|
|
14
|
-
-
|
|
15
|
-
in time tracking data from Harvest to provide a more complete picture of
|
|
16
|
-
project progress
|
|
7
|
+
- **Automated Invoicing Workflow**: Create an automation that triggers at the end of each billing cycle. It compiles timesheet data from Harvest and generates invoices automatically. Then, it sends these invoices to clients via email using a service like SendGrid or directly through accounting software like QuickBooks.
|
|
8
|
+
|
|
9
|
+
- **Slack Time Tracking Reminders**: Set up a Pipedream workflow that sends reminders to a Slack channel or directly to team members. Reminders prompt users to submit their timesheets if they haven't been completed by a certain time each day or week. The Harvest API checks for unsubmitted timesheets and triggers the Slack notifications accordingly.
|
|
10
|
+
|
|
11
|
+
- **Project Management Sync**: Build a workflow that synchronizes project and task updates between Harvest and a project management tool such as Trello or Asana. When a new project is created or a task is updated in Harvest, the corresponding card or task in the project management app is created or updated, keeping both systems in sync and up-to-date.
|
|
@@ -10,7 +10,12 @@ export default {
|
|
|
10
10
|
description: `Creates a new time entry object.
|
|
11
11
|
[Create a time entry via duration documentation](https://help.getharvest.com/api-v2/timesheets-api/timesheets/time-entries/#create-a-time-entry-via-duration),
|
|
12
12
|
[Create a time entry via start and end time documentation](https://help.getharvest.com/api-v2/timesheets-api/timesheets/time-entries/#create-a-time-entry-via-start-and-end-time)`,
|
|
13
|
-
version: "0.0.
|
|
13
|
+
version: "0.0.3",
|
|
14
|
+
annotations: {
|
|
15
|
+
destructiveHint: false,
|
|
16
|
+
openWorldHint: true,
|
|
17
|
+
readOnlyHint: false,
|
|
18
|
+
},
|
|
14
19
|
type: "action",
|
|
15
20
|
props: {
|
|
16
21
|
harvest,
|
|
@@ -5,7 +5,12 @@ export default {
|
|
|
5
5
|
key: "harvest-get-projects",
|
|
6
6
|
name: "Get Projects",
|
|
7
7
|
description: "Retrieve data for a project or projects. [See docs here](https://help.getharvest.com/api-v2/projects-api/projects/projects/#list-all-projects)",
|
|
8
|
-
version: "0.0.
|
|
8
|
+
version: "0.0.2",
|
|
9
|
+
annotations: {
|
|
10
|
+
destructiveHint: false,
|
|
11
|
+
openWorldHint: true,
|
|
12
|
+
readOnlyHint: true,
|
|
13
|
+
},
|
|
9
14
|
type: "action",
|
|
10
15
|
props: {
|
|
11
16
|
harvest,
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import harvest from "../../harvest.app.mjs";
|
|
2
|
+
|
|
3
|
+
export default {
|
|
4
|
+
key: "harvest-list-account-id-options",
|
|
5
|
+
name: "List Account ID Options",
|
|
6
|
+
description: "Retrieves available options for the Account ID field.",
|
|
7
|
+
version: "0.0.1",
|
|
8
|
+
type: "action",
|
|
9
|
+
annotations: {
|
|
10
|
+
destructiveHint: false,
|
|
11
|
+
openWorldHint: true,
|
|
12
|
+
readOnlyHint: true,
|
|
13
|
+
},
|
|
14
|
+
props: {
|
|
15
|
+
harvest,
|
|
16
|
+
},
|
|
17
|
+
async run({ $ }) {
|
|
18
|
+
const options = await harvest.propDefinitions.accountId.options.call(this.harvest);
|
|
19
|
+
$.export("$summary", `Successfully retrieved ${options.length} option${options.length === 1
|
|
20
|
+
? ""
|
|
21
|
+
: "s"}`);
|
|
22
|
+
return options;
|
|
23
|
+
},
|
|
24
|
+
};
|
|
@@ -4,7 +4,12 @@ export default {
|
|
|
4
4
|
key: "harvest-start-timer",
|
|
5
5
|
name: "Start Time Entry",
|
|
6
6
|
description: "Restart a stopped timer entry. [See docs here](https://help.getharvest.com/api-v2/timesheets-api/timesheets/time-entries/#restart-a-stopped-time-entry)",
|
|
7
|
-
version: "0.0.
|
|
7
|
+
version: "0.0.3",
|
|
8
|
+
annotations: {
|
|
9
|
+
destructiveHint: true,
|
|
10
|
+
openWorldHint: true,
|
|
11
|
+
readOnlyHint: false,
|
|
12
|
+
},
|
|
8
13
|
type: "action",
|
|
9
14
|
props: {
|
|
10
15
|
harvest,
|
|
@@ -4,7 +4,12 @@ export default {
|
|
|
4
4
|
key: "harvest-stop-timer",
|
|
5
5
|
name: "Stop Time Entry",
|
|
6
6
|
description: "Stop a timer entry. [See docs here](https://help.getharvest.com/api-v2/timesheets-api/timesheets/time-entries/#stop-a-running-time-entry)",
|
|
7
|
-
version: "0.0.
|
|
7
|
+
version: "0.0.4",
|
|
8
|
+
annotations: {
|
|
9
|
+
destructiveHint: true,
|
|
10
|
+
openWorldHint: true,
|
|
11
|
+
readOnlyHint: false,
|
|
12
|
+
},
|
|
8
13
|
type: "action",
|
|
9
14
|
props: {
|
|
10
15
|
harvest,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pipedream/harvest",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.1.0",
|
|
4
4
|
"description": "Pipedream Harvest Components",
|
|
5
5
|
"main": "harvest.app.mjs",
|
|
6
6
|
"keywords": [
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
"access": "public"
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"@pipedream/platform": "^1.
|
|
16
|
+
"@pipedream/platform": "^1.6.8",
|
|
17
17
|
"async-retry": "^1.3.3",
|
|
18
|
-
"moment": "^2.29.
|
|
18
|
+
"moment": "^2.29.4"
|
|
19
19
|
}
|
|
20
20
|
}
|