Method: orders.patch

將訂單從 3p 更新為 AOG。如果訂單 ID 空白或與現有訂單相同,系統會傳回 INVALID_src。

HTTP 要求

PATCH https://actions.googleapis.com/v3/orders/{orderUpdate.order.merchantOrderId}

這個網址使用 gRPC 轉碼語法。

路徑參數

參數
orderUpdate.order.merchantOrderId

string

必填:商家指定的內部訂單 ID。此 ID 不得重複,而且是後續訂單更新作業的必要項目。這個 ID 可設為提供的 googleOrderId 或任何其他不重複的值。請注意,向使用者顯示的 ID 是 userVisibleOrderId,可能會是另一個更易用的值。長度上限為 64 個半形字元。

要求主體

要求主體的資料會採用以下結構:

JSON 表示法
{
  "header": {
    object (OrderRequestHeader)
  },
  "orderUpdate": {
    "type": enum (Type),
    "order": {
      "googleOrderId": string,
      "userVisibleOrderId": string,
      "userVisibleStateLabel": string,
      "buyerInfo": {
        object (UserInfo)
      },
      "image": {
        object (Image)
      },
      "createTime": string,
      "lastUpdateTime": string,
      "transactionMerchant": {
        object (Merchant)
      },
      "contents": {
        object (Contents)
      },
      "priceAttributes": [
        {
          object (PriceAttribute)
        }
      ],
      "followUpActions": [
        {
          object (Action)
        }
      ],
      "paymentData": {
        object (PaymentData)
      },
      "termsOfServiceUrl": string,
      "note": string,
      "promotions": [
        {
          object (Promotion)
        }
      ],
      "disclosures": [
        {
          object (Disclosure)
        }
      ],
      "vertical": {
        "@type": string,
        field1: ...,
        ...
      },

      // Union field verticals can be only one of the following:
      "purchase": {
        object (PurchaseOrderExtension)
      },
      "ticket": {
        object (TicketOrderExtension)
      }
      // End of list of possible types for union field verticals.
    },
    "updateMask": string,
    "userNotification": {
      object (UserNotification)
    },
    "reason": string
  }
}
欄位
header

object (OrderRequestHeader)

更新訂單要求的標頭。

orderUpdate.type
(deprecated)

enum (Type)

已淘汰:請改用 OrderUpdate.update_mask。如果 type = SNAPSHOT,OrderUpdate.order 就應為整筆訂單。如果 type = ORDER_STATUS,這是指訂單層級的狀態變更。系統只會接收 order.last_update_time 和這個產業的狀態。注意:type.ORDER_STATUS 僅支援 PurcahaseOrderExtension 狀態更新,且目前沒有延長這項支援服務的計畫。建議使用 updateMask,因為這是更通用、可擴充且適用於所有產業。

orderUpdate.order.googleOrderId

string

Google 指派的訂單 ID。

orderUpdate.order.userVisibleOrderId

string

參照目前訂單的使用者 ID。這個 ID 應與這個訂單在其他內容 (包括網站、應用程式和電子郵件) 中顯示的 ID 一致。

orderUpdate.order.userVisibleStateLabel
(deprecated)

string

已淘汰:請改用 OrderExtensions 狀態。此訂單狀態的使用者可見標籤。

orderUpdate.order.buyerInfo

object (UserInfo)

買方資訊。

orderUpdate.order.image

object (Image)

與訂單相關的圖片。

orderUpdate.order.createTime

string (Timestamp format)

必填:訂單建立日期和時間。

RFC3339 世界標準時間「Zulu」格式的時間戳記,精確度達奈秒單位。範例:"2014-10-02T15:01:23.045123456Z"

orderUpdate.order.lastUpdateTime

string (Timestamp format)

訂單上次更新日期和時間。對 OrderUpdate 來說為必填。

RFC3339 世界標準時間「Zulu」格式的時間戳記,精確度達奈秒單位。範例:"2014-10-02T15:01:23.045123456Z"

orderUpdate.order.transactionMerchant

object (Merchant)

進行結帳的商家。這可能與委刊項層級供應商不同。範例:包含 ANA 委刊項的 Expedia 訂單。

orderUpdate.order.contents

object (Contents)

必要:訂單內容,也就是委刊項群組。

orderUpdate.order.priceAttributes[]

object (PriceAttribute)

價格、折扣、稅金等。

orderUpdate.order.followUpActions[]

object (Action)

訂單層級的後續操作。

orderUpdate.order.paymentData

object (PaymentData)

訂單的付款相關資料。

orderUpdate.order.termsOfServiceUrl

string

適用於訂單/提議訂單的服務條款連結。

orderUpdate.order.note

string

附加至訂單的附註。

orderUpdate.order.promotions[]

object (Promotion)

與這筆訂單相關聯的所有促銷活動。

orderUpdate.order.disclosures[]

object (Disclosure)

與這筆訂單相關的揭露資訊。

orderUpdate.order.vertical
(deprecated)

object

已淘汰:請改用產業別。除非某些委刊項遭到覆寫,否則這些屬性會套用至所有委刊項。這個產業必須與委刊項層級的產業類型相符。可能的值:google.actions.orders.v3.verticals.purchase.PurchaseOrderExtension google.actions.orders.v3.verticals.ticket.TicketOrderExtension

含有任意類型欄位的物件。額外的 "@type" 欄位則包含能辨識類型的 URI。範例:{ "id": 1234, "@type": "types.example.com/standard/id" }

orderUpdate.updateMask

string (FieldMask format)

注意:以下是有關下列特殊欄位的考量/建議:1. order.last_update_time 會一律在更新要求中更新。2. order.create_time、order.google_order_id 和 order.merchant_order_id,如果 updateMask 的一部分,則會被略過。

以半形逗號分隔的完整欄位名稱清單。範例:"user.displayName,photo"

orderUpdate.userNotification

object (UserNotification)

如果有指定,系統會向使用者顯示含有指定標題和文字的通知。指定通知是通知系統的推薦做法,而且不保證一定會收到通知。

orderUpdate.reason

string

變更/更新的原因。

聯集欄位 verticals。除非某些委刊項遭到覆寫,否則這些屬性會套用至所有委刊項。這個產業必須與委刊項層級的產業類型相符。verticals 只能是下列其中一項:
orderUpdate.order.purchase

object (PurchaseOrderExtension)

訂購單

orderUpdate.order.ticket

object (TicketOrderExtension)

票券訂單

回應主體

如果成功,回應主體會包含 Order 的執行例項。

OrderUpdate

更新訂單。

JSON 表示法
{
  "type": enum (Type),
  "order": {
    object (Order)
  },
  "updateMask": string,
  "userNotification": {
    object (UserNotification)
  },
  "reason": string
}
欄位
type
(deprecated)

enum (Type)

已淘汰:請改用 OrderUpdate.update_mask。如果 type = SNAPSHOT,OrderUpdate.order 就應為整筆訂單。如果 type = ORDER_STATUS,這是指訂單層級的狀態變更。系統只會接收 order.last_update_time 和這個產業的狀態。注意:type.ORDER_STATUS 僅支援 PurcahaseOrderExtension 狀態更新,且目前沒有延長這項支援服務的計畫。建議使用 updateMask,因為這是更通用、可擴充且適用於所有產業。

order

object (Order)

updateMask

string (FieldMask format)

注意:以下是有關下列特殊欄位的考量/建議:1. order.last_update_time 會一律在更新要求中更新。2. order.create_time、order.google_order_id 和 order.merchant_order_id,如果 updateMask 的一部分,則會被略過。

以半形逗號分隔的完整欄位名稱清單。範例:"user.displayName,photo"

userNotification

object (UserNotification)

如果有指定,系統會向使用者顯示含有指定標題和文字的通知。指定通知是通知系統的推薦做法,而且不保證一定會收到通知。

reason

string

變更/更新的原因。

類型

已淘汰:請改用 OrderUpdate.update_mask。允許更新訂單。

列舉
TYPE_UNSPECIFIED 未指定類型,不應明確設定這個屬性。
ORDER_STATUS 僅更新訂單狀態。
SNAPSHOT 更新訂單數據匯報。

UserNotification

顯示於訂單更新項目的使用者通知 (選用)。

JSON 表示法
{
  "title": string,
  "text": string
}
欄位
title

string

使用者通知的標題。長度上限為 30 個半形字元。

text

string

通知的內容。長度上限為 100 個半形字元。