v1
latestOpenAPI 3.1.02026-07-26294215839.4 KBGoals
Public API
Create Goal
Create a new goal for an employee. To create a simple goal without milestones, omit the milestones field; the goal's progress can then be changed with update-goal-progress. To create a milestone-based goal, provide milestones as a non-empty array of { "title": string } objects; the goal's percent complete is then derived from milestone completion and should be changed via update-goal-milestone-progress. Sending milestones: null is treated as omitted (creates a simple goal).
OAuth Scopes: goal.write
post/api/v1/performance/employees/{employeeId}/goals
Path parameters
employeeIdstring required
The internal employee ID of the employee who owns the new goal.
Request body
Example request
{
"title": "New Goal To update",
"description": "This should be fun!",
"dueDate": "2025-12-17",
"sharedWithEmployeeIds": [
1234,
5678
],
"milestones": [
{
"title": "Surprise, it is a milestone"
},
{
"title": "Now there are two of them!"
}
]
}Response
A goal object that includes the new goal.
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
}
}
}