Short answer: You can create harvest time entry in Harvest by hand from its own interface, but it won’t repeat itself. On TinyCommand, add the Harvest Create Harvest Time Entry action to a workflow, map its 5 inputs from any upstream app, and it runs automatically every time the trigger fires. No code, and a free tier to start.
Every field can be mapped from an upstream trigger, AI step, table row, or hard-coded literal.
| Field | Type | Required | Description |
|---|---|---|---|
Project ID project_id | number | Required | The Project ID assigned by Harvest. Find via the corresponding list/search operation in this app. Use the exact ID, not a name or label. |
Task ID task_id | number | Required | Task ID |
Date spent_date | date | Required | Date. (date/time) |
Hours hours | number | Required | Hours. e.g. "2.5" |
Notes notes | string | Optional | Notes |
{"project_id": "{{trigger.project_id}}","task_id": "{{trigger.task_id}}","spent_date": "{{trigger.spent_date}}","hours": "2.5","notes": "{{trigger.notes}}"}
{"id": 12345,"task": {"id": 200,"name": "Development"},"hours": 2.5,"project": {"id": 100,"name": "My Project"},"spent_date": "2026-04-11"}
Use these fields in downstream nodes for routing, logging, or error handling.
Any of these apps can fire this action as part of a workflow.