Updates a personal goal identified by path id. The assignee field is the LMS reference of the goal owner; api-service resolves it via userByRef and impersonates that user on goals-service with the api-service role. Allowed fields are title, description, skill, dueDate, and tasks. Goal status is derived from task completion and cannot be set on this path. Completed goals are rejected.
This is a full-field replace, not a sparse PATCH. tasks is the complete desired set — any existing task omitted from the array is removed. Optional fields left out keep their current value; send an explicit null to clear them (description, dueDate).
HTTP Basic authentication using your Tenant ID and API secret.
- Username is the Tenant ID (i.e.
eu-west-2_AbcdEfghI) - Password is the API secret you would have received.
You can also authenticate using OAuth 2.0 client credentials (oauth2 security scheme) instead of Basic auth.
OAuth 2.0 client credentials authentication.
Use the following token endpoints (replace :tenantId with your Tenant ID):
Public API access tokens
- Staging:
https://public.api.learnstaging.link/oauth2/token/:tenantId - Production:
https://public.api.learn.link/oauth2/token/:tenantId - Staging MEA:
https://public.api.meastaging.learn.tech/oauth2/token/:tenantId - Production MEA:
https://public.api.mea.learn.tech/oauth2/token/:tenantId
- Staging:
Webhooks access tokens
- Staging:
https://user.api.learnstaging.link/oauth2/token/:tenantId - Production:
https://user.api.learn.link/oauth2/token/:tenantId - Staging MEA:
https://user.api.meastaging.learn.tech/oauth2/token/:tenantId - Production MEA:
https://user.api.mea.learn.tech/oauth2/token/:tenantId
- Staging:
All access tokens must be sent using the Authorization: Bearer <access_token> header.
Scopes
For API access (non-webhooks), the following scopes are available:
api/all– Full read and write access to the API.api/read– Read-only access to the API.api/write– Write access to the API.
For webhooks, the following scopes are available:
api/webhooks– Access to webhook functionality.api/all– Full read and write access to the API, including webhooks.
Tokens must include appropriate scopes for the endpoints you wish to call.
The personal goal ID
LMS reference of the goal owner
Name of a skill that already exists in the organisation. A name that is not a skill is rejected with 422.
Complete desired task set. An empty array removes all existing tasks.
Existing task id. Omit to create a new task.
Empty or omitted for basic tasks; required and non-empty for content tasks. Each id must be a 24-character hex ObjectId of content that exists in the tenant. A missing id is rejected with 422.
Existing task id. Omit to create a new task.
Existing task id. Omit to create a new task.
The updated personal goal
A user goal (personal or assigned).
The goal ID
The goal owner's user ID
Unauthorized
Unauthorized
Forbidden
Forbidden
Not Found
Not found
Unsupported Media Type — Content-Type must be application/json
The request could not be processed due to a validation error
Unprocessable Content
Unprocessable Content
Bad Gateway
The request could not be completed because a service it depends on failed. For write operations the content was not modified.
Internal Server Error
Internal Server Error