v1
latestOpenAPI 3.1.02026-07-26294215839.4 KBGoals
Public API
Close Goal
Closes a goal, moving it to the closed status. An optional comment may be included in the request body to record a note at closing time. Returns the updated goal object. Validate the result using the returned status, percentComplete, and completionDate fields; do not rely solely on lastChangedDateTime as the confirmation timestamp, because it may not match the HTTP response time or may reflect BambooHR's internal timezone/update semantics. Note: Cascading goals with visible children cannot be closed.
OAuth Scopes: goal.write
post/api/v1/performance/employees/{employeeId}/goals/{goalId}/close
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
{
"comment": "Closing this goal as the deadline has passed."
}Response
The goal was successfully closed. The response body contains the updated goal object.
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": {
"canEditGoalMilestoneProgressBar": true
}
}
}