更新目录对象

您可以更新部分 Catalog 对象,方法是在PATCH请求的路径中包含其ID。 本文档介绍了对目录对象执行PATCH操作的两种方法:

  • 使用字段
  • 使用JSON修补程序表示法
NOTE
对对象的PATCH操作无法修改其可扩展字段,这些字段表示相互关联的对象。 必须直接对相关对象进行修改。

使用字段更新

以下示例调用演示了如何使用字段和值更新对象。

API格式

PATCH /{OBJECT_TYPE}/{OBJECT_ID}
参数
描述
{OBJECT_TYPE}

类型 Catalog 要更新的对象。 有效对象为:

  • batches
  • dataSets
  • dataSetFiles
{OBJECT_ID}
要更新的特定对象的标识符。

请求

以下请求将更新 namedescription 数据集的字段到有效负荷中提供的值。 可以从有效负载中排除不更新的对象字段。

curl -X PATCH \
  https://platform.adobe.io/data/foundation/catalog/dataSets/5ba9452f7de80400007fc52a \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -d '{
       "name":"Updated Dataset Name",
       "description":"Updated description for Sample Dataset"
      }'

响应

成功的响应会返回一个数组,其中包含已更新数据集的ID。 此ID应该与PATCH请求中发送的ID匹配。 现在,为此数据集执行GET请求会显示 namedescription 已更新,而所有其他值保持不变。

[
    "@/dataSets/5ba9452f7de80400007fc52a"
]

使用JSON修补程序表示法更新

以下示例调用演示了如何使用JSON修补程序更新对象,如中所述 RFC-6902.

有关JSON修补程序语法的更多信息,请参见 API基础指南.

API格式

PATCH /{OBJECT_TYPE}/{OBJECT_ID}
参数
描述
{OBJECT_TYPE}

类型 Catalog 要更新的对象。 有效对象为:

  • batches
  • dataSets
  • dataSetFiles
{OBJECT_ID}
要更新的特定对象的标识符。

请求

以下请求将更新 namedescription 数据集的字段与在每个JSON修补程序对象中提供的值相对应。 使用JSON修补程序时,还必须将Content-Type标头设置为 application/json-patch+json.

curl -X PATCH \
  https://platform.adobe.io/data/foundation/catalog/dataSets/5ba9452f7de80400007fc52a \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json-patch+json' \
  -d '[
        { "op": "add", "path": "/name", "value": "New Dataset Name" },
        { "op": "add", "path": "/description", "value": "New description for dataset" }
      ]'

响应

成功的响应会返回一个数组,其中包含已更新对象的ID。 此ID应该与PATCH请求中发送的ID匹配。 现在对此对象执行GET请求时,只会显示 namedescription 已更新,而所有其他值保持不变。

[
    "@/dataSets/5ba9452f7de80400007fc52a"
]
recommendation-more-help
c5c02be6-79a3-4a2f-b766-136bffe8b676