Question
Can we move (reassign) a worklog from one user to another?
Answer
Yes, but only via the Tempo REST API, not through the Jira or Tempo UI.
Neither Jira's native worklog UI nor the Tempo Timesheets UI exposes a way to change who a worklog belongs to.
How to do it via the Tempo REST API
Prerequisites
-
A Tempo API token (Bearer token) with permission to manage worklogs.
-
The Jira account ID of the user you want to move the worklog to (find via the Jira
/rest/api/3/user/searchendpoint or Jira admin user management). -
The Tempo worklog ID for the worklog you want to reassign — note this is not the same as the Jira worklog ID.
Step 1 — Look up the Tempo worklog ID
Tempo keeps its own internal worklog ID separate from the Jira worklog ID. If you only have the Jira worklog ID, resolve it first:
curl -X GET \
https://api.tempo.io/4/worklogs/jira/{jiraWorklogId} \
-H 'Authorization: Bearer {tempoApiToken}' \
-H 'Content-Type: application/json'
The response includes tempoWorklogId, which you'll use in the next step.
Step 2 — Update the worklog's author
Call the update (PUT) endpoint for that worklog, passing the target user's Jira accountId in the authorAccountId field:
curl -X PUT \
https://api.tempo.io/4/worklogs/{tempoWorklogId} \
-H 'Authorization: Bearer {tempoApiToken}' \
-H 'Content-Type: application/json' \
-d '{
"issueId": 12868,
"timeSpentSeconds": 3600,
"billableSeconds": 3600,
"startDate": "2019-11-27",
"startTime": "16:11:15",
"authorAccountId": "557058:3322bc29-17c6-493f-b4f5-1945319acf06"
}'
Note: The PUT call replaces the full worklog record, so include the other fields (issueId, time spent, date, etc.) alongside authorAccountId — not just the field you're changing — to avoid unintentionally clearing data.
Step 3 — Verify
Re-fetch the worklog (GET /4/worklogs/{tempoWorklogId}) and confirm the author.accountId now reflects the new user.
Common use cases
-
Correcting a worklog logged under the wrong account after an org restructure or account migration.
-
Reassigning worklogs when a user's Jira account was recreated (e.g., email/domain change resulted in a new
accountId). -
Cleaning up worklogs after a Cloud migration, where entries temporarily land under a generic "Tempo Timesheets" app user.
Limitations / things to watch for
-
Bulk reassignment (many worklogs at once) requires scripting this call in a loop; there's no native bulk-reassign endpoint.