v1
latestOpenAPI 3.1.02026-07-26294215839.4 KBGoals
Public API
Update Goal Progress
Update the progress percentage of a simple, non-milestone goal. Do not use this endpoint for goals that contain milestones; BambooHR derives percent complete for milestone-based goals from milestone completion and will reject manual percent updates with a 400 response (UPDATE_GOAL_WITH_MILESTONE_PROGRESS_ERROR). For milestone-based goals, use update-goal-milestone-progress to mark individual milestones complete or incomplete.
OAuth Scopes: goal.write
put/api/v1/performance/employees/{employeeId}/goals/{goalId}/progress
Path parameters
employeeIdstring required
The internal employee ID of the employee the goal is associated with.
goalIdstring required
goalId is the goal ID for the specified employee.
Request body
Example request
{
"percentComplete": 100,
"completionDate": "2025-04-11"
}Response
A successful response indicates that all the requested changes were made. The content of the response will be the goal response object for the specified goalId.
Example response
{
"goal": {
"id": "4",
"title": "Complete Documentation Epic",
"description": "Document every endpoint for the goals API.",
"percentComplete": 78,
"dueDate": "2025-12-31",
"completionDate": "2025-12-17T10:30:00Z",
"lastChangedDateTime": "2025-12-17T10:30:00Z",
"status": "in_progress",
"milestones": [
{
"id": 2,
"employeeGoalId": 12,
"title": "Sell 15 Doohickeys",
"completedDateTime": "2025-04-10T15:36:38Z",
"lastUpdateDateTime": "2025-04-10T15:36:38Z",
"lastUpdateUserId": 24
}
],
"actions": {
"canEditGoalProgressBar": true
}
}
}