Skip to content

Update Knowledge Entry

About 453 wordsAbout 2 min

2026-09-14

Description

Updates content fields of a knowledge entry, such as title, folder, and body. Only fields to be changed need to be passed; omitted fields keep their current values.

This API is the platform standard object-update API; the object is specified via dataObjectApiName, with a fixed value of ServiceKnowledgeObj.

Request Specification

HTTP Method: POST + application/json

Request Path: https://${Cloud Domain}/cgi/crm/v2/data/update?thirdTraceId=${Random String}

Request Headers: Refer to Common Parameters

Request Parameters

For detailed field conventions, refer to Parameter Filling Guide

ParameterTypeRequiredDescription
triggerApprovalFlowBooleanNoWhether to trigger the approval flow; defaults to true when omitted
triggerWorkFlowBooleanNoWhether to trigger the workflow; defaults to true when omitted
dataMapYesData
  object_dataMapYesThe knowledge entry to update. Only fields to be changed are required
  object_data.dataObjectApiNameStringYesObject apiName, fixed value ServiceKnowledgeObj
  object_data._idStringYesKnowledge entry ID
  object_data.titleStringNoTitle
  object_data.categoryStringNoCode of the target knowledge folder
  object_data.content_typeStringNoContent type: text plain text, rich_text rich text, enclosure attachment
  object_data.textStringNoPlain text content
  object_data.rich_textStringNoRich text content (HTML)
  object_data.material_messageArrayNoAttachment list
  object_data.summaryStringNoSummary
  object_data.permanent_validityBooleanNoWhether permanently valid
  object_data.validity_begin_timeLongNoValidity start time, in milliseconds
  object_data.validity_end_timeLongNoValidity end time, in milliseconds

Request Example

{
  "data": {
    "object_data": {
      "dataObjectApiName": "ServiceKnowledgeObj",
      "_id": "68c1a0f0abcd0001",
      "title": "Device Installation Guide (Revised)",
      "category": "16",
      "content_type": "rich_text",
      "rich_text": "<p>Revised steps</p>"
    }
  }
}

Response Parameters

ParameterTypeDescription
traceIdstringUnique request ID
errorDescriptionstringError description
dataIdStringUpdated knowledge entry ID
errorMessagestringError message
errorCodeIntError Codes

Response Example

{
  "traceId": "E-O.fktest4234.1000-20260914101000-xxxxxx",
  "errorDescription": "success",
  "dataId": "68c1a0f0abcd0001",
  "errorMessage": "OK",
  "errorCode": 0
}

Notes

  • Updating does not change the publish status: a published entry stays published after a successful update.
  • Change publish status via the Publish / Unpublish APIs; do not write public_status through this API, which bypasses the publish side effects (e.g. index sync).
  • Preview/download URL keys (preview_path, download_path, etc.) inside attachment elements (material_message, large_attachment) are stripped by the server and need not be passed.
  • When changing content_type, pass the corresponding body field at the same time, otherwise the body may become empty.
  • Personnel and attachment fields follow the standard-object openUserId / mediaId conventions; the gateway converts them automatically in both directions.
  • Verify the result via List Knowledge Entries.
  • Do not use the message field in the response for logical judgment, as errorMessage may change.