← Back to API docs

Public API documentation

Common Information changelog

Last updated 28 Aug 2026, 08:54 UTC.

Updated 28 Aug

Clarified imported organization type edit/delete restrictions and privileged role bypass roles in orgtypes API docs.

api-docsorgtypes
  • Documented imported organization type edit/delete restrictions in orgtypes operations.
  • Documented privileged role exemptions that can bypass imported-type restrictions.

Clarified imported-entity edit/delete restrictions and privileged role exemptions in groups, orgattributecategories, and orgchart API docs.

api-docsgroupsorgattributecategoriesorgchart
  • Documented edit/delete restrictions for imported entities in groups and orgattributecategories operations.
  • Documented role exemptions for privileged users where imported-entity restrictions can be bypassed.
  • Updated orgchart endpoint documentation to reflect imported-unit restriction behavior and allowed exceptions.

Added searchTerm query parameter to groups find operation for language-agnostic name search across all configured locales.

groupsapi-docs
  • The searchTerm parameter performs a case-insensitive search against all locale keys of the group name field, so groups with no English translation are still returned.

Updated contentpools API docs: introduced searchTerm for language-agnostic name search and added name.{lang}[$search] for locale-specific search.

contentpoolsapi-docs
  • Added searchTerm query parameter that searches across all configured locale keys, fixing cases where pools with no English name could not be found.
  • Added name.{lang}[$search] query parameter for language-specific search scoped to a single locale (e.g. name.en[$search]=News).
  • searchTerm is preferred over name.{lang}[$search] for language-agnostic search.

Clarified workflow approval constraints for content and task-answer actions in API docs.

workflowapi-docs
  • Updated workflow create operation docs to state content approve/reject requires contents.approvereject permission.
  • Documented that content creators cannot approve or reject their own content.
  • Clarified action-specific constraints for pending-status checks and task-answer approval eligibility.
  • Updated workflow request schema descriptions for action/ref/value fields to reflect content vs task-answer targeting.

Clarified learningProgress export docs for moved-user inclusion and empty-ZOI broad-match prevention.

api-docsexportstrainingprogress
  • Documented moved-user inclusion in learningProgress export when trainingprogress orgunitsOfCreator overlaps exporter orgZoneOfInfluence and userActiveNotDeleted is true.
  • Documented safeguard that skips moved-user lookup when exporter orgZoneOfInfluence is empty to prevent broad matching.

Documented selected-users assignment for tasktemplates and creator ZoI validation behavior.

api-docstasktemplates
  • Added selectedUsers field to tasktemplates schema documentation.
  • Clarified that when selectedUsers is provided, tasks are created only for those users.
  • Documented create/patch validation behavior: all selected users must belong to creator ZoI or the request fails.

Changed learningProgress export to target a single training by required trainingId; active-only users, Roles column, and exact status labels added.

exportsapi-docs
  • learningProgress export now requires a trainingId field; pool-wide export mode is no longer supported.
  • Eligible users are derived from the training document's own orgchartSelection, orgchartAttrSelection, and groups targeting, intersected with the request orgunits and the requesting user's zone of influence.
  • Only active, non-deleted, firstLoginDone users are included in the export (ignoreActive flag removed).
  • Added Roles column to the export output; roles are emitted as plain comma-separated strings.
  • Status values are now exactly: Completed, In progress, Not started.
  • Column order: Training ID, Training Name, Content Pool, User, Progress, Started Date, Completed, Completion Date, Groups, Roles, OrgLevel1..N.
  • 400 error is returned when trainingId is missing, the training is not found, or the training does not belong to the supplied ref content pool.

Flattened orgchartAttrSelection docs to remove nested arrays and align targeting shapes across affected APIs.

api-docscontentsflowtemplatesfolderspagestasktemplatesreach
  • Aligned contents.orgchartSelection docs to the include/exclude object shape used by the service model.
  • Updated orgchartAttrSelection schema docs for contents and flowtemplates to use flat include/exclude ObjectId arrays.
  • Updated tasktemplates docs to describe orgchartAttrSelection as a flat ObjectId array.
  • Updated reach request schema docs so orgchartAttrSelection include/exclude match flattened runtime input shape.
  • Updated pages docs so orgchartAttrSelection include/exclude use flat ObjectId arrays after normalization during orgunit expansion.
  • Updated folders docs so orgchartAttrSelection is documented as a flat ObjectId array matching the persisted model shape.

Updated themes Swagger docs to accept CloudFront background image URLs from FE and clarified frontend-config default behavior.

themesapi-docs
  • Updated themes service description to document CloudFront URL-based background image payloads in themeData.backgroundImage.
  • Removed storageId-focused wording for background images and clarified that FE provides the final URL.
  • Updated themeData.backgroundImage schema to use uri format and describe FE fallback to frontendConfig.defaultThemeBackgroundImage.

Documented widget-scoped filtering inputs and query-operator support across contents, tasks, and widgets API docs.

api-docscontentstaskswidgets
  • Added tasks query documentation for widgetId, including support for suffixed IDs like <widgetId>-sticky used for server-side widget-group filtering.
  • Added widgets schema documentation for optional groups array used to derive backend content/task filtering and FE widget defaults.
  • Updated contents service behavior to allow additional MongoDB query operators ($not and $all) in whitelisted filters.

Updated reports access documentation to remove reports.admin/reports.supervise references and clarify scoped reports permission behavior.

api-docsusersreports
  • Clarified users management-mode, create/patch, and delete access rules for users.manage permission scopes.
  • Documented scoped reports permission behavior after removing reports.admin/reports.supervise access references, including usersForUsageReport special access constraints.

Added leaveConversation action to the chat service.

chatapi-docs
  • New leaveConversation action allows a participant to leave a one-to-one TalkJS conversation.
  • Action is only permitted on admin-less one-to-one conversations; group chats are rejected.

Documented externalNotificationContent usage and push text behavior across content-related API docs.

api-docscontentscontentsviewsearchcontentpooltypesswaggerdoc
  • Added externalNotificationContent to contentType enum documentation where supported by content services.
  • Clarified that externalNotificationContent is intended for custom external push scenarios.
  • Documented push text mapping for externalNotificationContent: title uses content creator full name and body uses content title.

Expanded aiassistant API docs for analytics category, subcategory, and unanswered query variants.

aiassistantapi-docs
  • Documented new find type values for analytics categories, subcategories, and unanswered topics.
  • Added categoryId query parameter usage and clarified pagination parameter applicability across analytics variants.
  • Extended OpenAPI response schema coverage for categories, subcategories, and unanswered analytics payloads.

Clarified imported-field restrictions and create defaults for groups, orgattributes, and orgattributecategories.

api-docsgroupsorgattributesorgattributecategories
  • Documented that the imported field defaults to false on create when omitted.
  • Documented that imported can only be changed by keephubAdmin or the system user.
  • Marked update behavior as internal-only where applicable.

Clarified users patch permissions and aligned users schema docs for loginMethod/imported fields.

api-docsusers
  • Updated users patch operation docs to state imported field access for keephubAdmin and system.
  • Added users.imported schema property and aligned loginMethod access wording with current permissions.
  • Removed readOnly from users.loginMethod and users.imported so privileged patch behavior matches the shared users schema.

Added top-level content hookurls for workflow approval/rejection callbacks and clarified webhook status derivation in contents and workflow API docs.

contentsworkflowswaggerdocapi-docs
  • Added top-level hookurls field to abstractContent schema (array of { url, active }) used for workflow content approval/rejection callbacks; payload sends _id, approvedBy, and createdBy.
  • Updated form.hookurls description to clarify it is a dedicated form-model abstraction separate from top-level content hookurls.
  • Updated contents find operation and webhookStatus query param description: top-level hookurls is now the primary source; form.hookurls serves as fallback for form content.
  • Updated workflow create operation to document that approve/reject actions trigger active content hook URLs with IDs-only payload.

Added top-level content hookurls for workflow approval/rejection callbacks and clarified webhook status derivation in contents and workflow API docs.

contentsworkflowswaggerdocapi-docs
  • Added top-level hookurls field to abstractContent schema (array of { url, active }) used for workflow content approval/rejection callbacks; payload sends _id, approvedBy, and createdBy.
  • Updated form.hookurls description to clarify it is a dedicated form-model abstraction separate from top-level content hookurls.
  • Updated contents find operation and webhookStatus query param description: top-level hookurls is now the primary source; form.hookurls serves as fallback for form content.
  • Updated workflow create operation to document that approve/reject actions trigger active content hook URLs with IDs-only payload.

Refreshed Keephub API docs layout and styling for improved navigation and changelog presentation.

generateDocumentationapi-docs
  • Updated the Redoc template, theme styling, and generated docs header and changelog presentation.

Updated audittrail Swagger docs to include roles in objectType enum filters.

audittrailapi-docs
  • Added roles as an accepted objectType value in audittrail query documentation.

Refreshed Keephub API docs styling for smoother sidebar navigation, search, buttons, and response panels.

api-docs
  • Applied a visual polish pass across the sidebar, navigation, search, button treatments, and response panels.

Test changelog rendering locally

api-docs

Initialized the API docs metadata source for last-updated timestamps and changelog tracking.

generateDocumentationswaggerInitConfapi-docs
  • Added the canonical docs metadata JSON source under documentation/.
  • Defined the initial public changelog entry for the docs metadata workflow.