Transactions API станет устаревшим 3 мая 2023 года, а 13 июня 2023 года прекращается действие диалоговых действий. Дополнительные сведения см. в разделе Прекращение диалоговых действий .

Method: orders.patch

Обновление порядка с 3p до AOG. Возвращает INVALID_ARGUMENT, если идентификатор заказа пуст или не равен идентификатору существующего заказа.

HTTP-запрос

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

URL-адрес использует синтаксис транскодирования gRPC .

Параметры пути

Параметры
orderUpdate.order.merchantOrderId

string

Требуется: Продавец назначает внутренний идентификатор заказа. Этот идентификатор должен быть уникальным и требуется для последующих операций обновления заказа. Этот идентификатор может быть установлен равным предоставленному googleOrderId или любому другому уникальному значению. Обратите внимание, что идентификатор, представленный пользователям, — это 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.

orderUpdate.order.userVisibleOrderId

string

Идентификатор пользователя, указывающий на текущий заказ. Этот идентификатор должен соответствовать идентификатору, отображаемому для этого заказа в других контекстах, включая веб-сайты, приложения и электронную почту.

orderUpdate.order.userVisibleStateLabel
(deprecated)

string

Устарело: вместо этого используйте статус OrderExtensions. Видимая пользователем метка для состояния этого заказа.

orderUpdate.order.buyerInfo

object ( UserInfo )

Информация о покупателе.

orderUpdate.order.image

object ( Image )

Изображение, связанное с заказом.

orderUpdate.order.createTime

string ( Timestamp format)

Обязательно: Дата и время создания заказа.

Отметка времени в формате RFC3339 UTC "Zulu" с точностью до наносекунд. Пример: "2014-10-02T15:01:23.045123456Z" .

orderUpdate.order.lastUpdateTime

string ( Timestamp format)

Дата и время последнего обновления заказа. Требуется для обновления заказа.

Отметка времени в формате RFC3339 UTC "Zulu" с точностью до наносекунд. Пример: "2014-10-02T15:01:23.045123456Z" .

orderUpdate.order.transactionMerchant

object ( Merchant )

Продавец, который упростил оформление заказа. Это может отличаться от поставщика уровня позиции. Пример: заказ Expedia с позицией от ANA.

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 .

ЗаказатьОбновить

Обновление заказа.

Представление 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 Обновить снимок заказа.

Уведомление пользователя

Необязательное уведомление пользователя для отображения в рамках обновления заказа.

Представление JSON
{
  "title": string,
  "text": string
}
Поля
title

string

Заголовок уведомления пользователя. Максимально допустимая длина составляет 30 символов.

text

string

Содержание уведомления. Максимально допустимая длина составляет 100 символов.