Skip to main content

Update Time Entry

PATCH /public/action/timeWorked/update

Pass the entry’s id and any writable fields. Omitted values are preserved. Optional notes, metadata and relationships can be cleared with explicit null. customFields replaces the entire metadata object.

FieldsAccepted values
idRequired entry ID from list, get or create.
timerStart, timerEndRFC-3339 timestamps with timezone; both required on the resulting entry. End cannot precede start.
pausedSecondsNon-negative seconds, no greater than elapsed time.
userIdWorkspace member ID.
clientId, projectId, deliverableId, ticketIdRelated record IDs or null.
notes, internalNotesClient-facing and private notes respectively; string or null.
customFieldsPrivate JSON object or null; excluded from invoices and client-facing responses.
billableBoolean.
formatMarkdown or HTML.
curl -X PATCH https://api.withmoxie.com/public/action/timeWorked/update \
-H "X-API-KEY: your_api_key_here" \
-H "Content-Type: application/json" \
-d '{"id":"entry_id","notes":"Updated billing detail","internalNotes":"Script reviewed","customFields":{"source":"script"},"billable":false}'

Returns the updated entry. Relationships must belong to the workspace. Project and ticket links determine the client. Tickets cannot be combined with projects or tasks; clear incompatible links explicitly when switching context. A task ID can identify a standalone task.

Invoiced entries are locked. An entry with missingRelatedItems permits only billable=false with other editable values unchanged. Unknown fields and read-only fields (including accountId, invoiceId, invoiceNumber, calculated billing data, feeSchedule and timestamps) are rejected. API quota checks, hooks and realtime updates apply.

To remove an entry, use Delete time entry. Deletion moves it to the workspace trash and returns true; invoiced entries cannot be deleted.