Method: fulfill

RPC, который представляет API выполнения.

HTTP-запрос

POST https://webhook_handler_service.googleapis.com/fulfill

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

Тело запроса

Тело запроса содержит данные следующей структуры:

JSON-представление
{
  "handler": {
    object (Handler)
  },
  "intent": {
    object (Intent)
  },
  "scene": {
    object (Scene)
  },
  "session": {
    object (Session)
  },
  "user": {
    object (User)
  },
  "home": {
    object (Home)
  },
  "device": {
    object (Device)
  },
  "context": {
    object (Context)
  }
}
Поля
handler

object ( Handler )

Необходимый. Информация для выполнения о том, как обрабатывать запрос. Например, запрос, предназначенный для получения факта, может иметь обработчик с именем «getFact».

intent

object ( Intent )

Необходимый. Представляет последнее совпавшее намерение. См. https://developers.google.com/assistant/conversational/intents .

scene

object ( Scene )

Необязательный. Информация о текущей и следующей сцене при вызове функции. Будет заполняться при выполнении вызова выполнения в рамках сцены. См. https://developers.google.com/assistant/conversational/scenes .

session

object ( Session )

Необходимый. Содержит данные сеанса, такие как идентификатор сеанса и параметры сеанса.

user

object ( User )

Необходимый. Пользователь, инициировавший беседу.

home

object ( Home )

Необязательный. Информация, относящаяся к структуре HomeGraph, к которой принадлежит целевое устройство. См. https://developers.google.com/actions/smarthome/concepts/homegraph .

device

object ( Device )

Необходимый. Информация об устройстве, которое пользователь использует для взаимодействия с Действием.

context

object ( Context )

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

Тело ответа

В случае успеха тело ответа содержит данные следующей структуры:

Представляет ответ, отправленный разработчиком в Actions on Google.

JSON-представление
{
  "prompt": {
    object (Prompt)
  },
  "scene": {
    object (Scene)
  },
  "session": {
    object (Session)
  },
  "user": {
    object (User)
  },
  "home": {
    object (Home)
  },
  "device": {
    object (Device)
  },
  "expected": {
    object (Expected)
  }
}
Поля
prompt

object ( Prompt )

Необязательный. Представляет запросы, которые будут отправлены пользователю. Эти запросы будут добавлены к ранее добавленным сообщениям, если они не будут перезаписаны явным образом.

scene

object ( Scene )

Необязательный. Представляет текущую и следующую сцену. Если установлен Scene.next среда выполнения немедленно перейдет к указанной сцене.

session

object ( Session )

Необязательный. Описывает данные для текущего сеанса, параметры сеанса могут быть созданы, обновлены или удалены при выполнении.

user

object ( User )

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

home

object ( Home )

Необязательный. Используется для указания параметров, связанных со структурой HomeGraph, к которой принадлежит целевое устройство. См. https://developers.google.com/actions/smarthome/concepts/homegraph .

device

object ( Device )

Необязательный. Используйте для перемещения между устройствами Ассистента, к которым у пользователя есть доступ.

expected

object ( Expected )

Необязательный. Описывает ожидания от следующего хода диалога.

Обработчик

Представляет обработчик выполнения, который сопоставляет информацию о событиях из Actions on Google с выполнением. Используйте имя обработчика, чтобы определить, какой код следует запустить для выполнения. Например, один обработчик может использоваться для получения информации о заказе пользователя с именем обработчика, например «OrderLookup», в то время как другой может получать информацию о продукте из базы данных с именем обработчика, например «GetProductInfo».

JSON-представление
{
  "name": string
}
Поля
name

string

Необязательный. Имя обработчика.

Намерение

Представляет намерение. См. https://developers.google.com/assistant/conversational/intents .

JSON-представление
{
  "name": string,
  "params": {
    string: {
      object (IntentParameterValue)
    },
    ...
  },
  "query": string
}
Поля
name

string

Необходимый. Имя последнего совпавшего намерения.

params

map (key: string, value: object ( IntentParameterValue ))

Необходимый. Представляет параметры, определенные как часть сопоставления намерений. Это сопоставление имени идентифицированного параметра со значением параметра, определенного на основе пользовательского ввода. Здесь будут отображены все параметры, определенные в сопоставленном намерении.

Объект, содержащий список пар "key": value . Пример: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

query

string

Необязательный. Напечатанный или устный ввод конечного пользователя, соответствующий этому намерению. Оно будет заполнено при совпадении намерения на основе пользовательского ввода.

IntentParameterValue

Представляет значение параметра намерения. См. https://developers.google.com/assistant/conversational/types .

JSON-представление
{
  "original": string,
  "resolved": value
}
Поля
original

string

Необходимый. Исходное текстовое значение, извлеченное из высказываний пользователя.

resolved

value ( Value format)

Необходимый. Структурированное значение параметра, извлеченное из пользовательского ввода. Оно будет заполнено только в том случае, если параметр определен в сопоставленном намерении и значение параметра можно определить во время сопоставления намерения.

Сцена

Представьте сцену. Сцены могут вызывать выполнение, добавлять подсказки и собирать значения слотов от пользователя. Сцены запускаются событиями или намерениями и могут запускать события и соответствовать намерениям для перехода к другим сценам.

JSON-представление
{
  "name": string,
  "slotFillingStatus": enum (SlotFillingStatus),
  "slots": {
    string: {
      object (Slot)
    },
    ...
  },
  "next": {
    object (NextScene)
  }
}
Поля
name

string

Необходимый. Название текущей сцены.

slotFillingStatus

enum ( SlotFillingStatus )

Необходимый. Текущий статус заполнения слотов. Это поле доступно только для чтения.

slots

map (key: string, value: object ( Slot ))

Слоты, связанные с текущей сценой. Ответы обработчика не могут возвращать слоты, которые не были отправлены в запросе.

Объект, содержащий список пар "key": value . Пример: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

next

object ( NextScene )

Необязательный. Информация о месте, где будет происходить следующая казнь.

Статус заполнения слота

Представляет текущий статус заполнения слотов.

Перечисления
UNSPECIFIED Резервное значение, если поле использования не заполнено.
INITIALIZED Слоты инициализированы, но заполнение слотов не началось.
COLLECTING Значения слотов собираются.
FINAL Все значения слотов являются окончательными и не могут быть изменены.

Слот

Представляет слот.

JSON-представление
{
  "mode": enum (SlotMode),
  "status": enum (SlotStatus),
  "value": value,
  "updated": boolean,
  "prompt": {
    object (Prompt)
  }
}
Поля
mode

enum ( SlotMode )

Режим слота (обязательный или необязательный). Может быть установлен разработчиком.

status

enum ( SlotStatus )

Статус слота.

value

value ( Value format)

Стоимость слота. Изменение этого значения в ответе приведет к изменению значения в заполнении слота.

updated

boolean

Указывает, было ли получено значение слота в последний ход. Это поле доступно только для чтения.

prompt

object ( Prompt )

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

Слотрежим

Представляет режим слота, то есть требуется он или нет.

Перечисления
MODE_UNSPECIFIED Резервное значение, если поле использования не заполнено.
OPTIONAL Указывает, что слот не требуется для завершения заполнения слота.
REQUIRED Указывает, что слот необходим для завершения заполнения слота.

Статус слота

Представляет состояние слота.

Перечисления
SLOT_UNSPECIFIED Резервное значение, если поле использования не заполнено.
EMPTY Указывает, что слот не имеет значений. Этот статус нельзя изменить посредством ответа.
INVALID Указывает, что значение слота недопустимо. Этот статус можно установить через ответ.
FILLED Указывает, что слот имеет значение. Этот статус нельзя изменить посредством ответа.

Быстрый

Представлять ответ пользователю. См. https://developers.google.com/assistant/conversational/prompts .

JSON-представление
{
  "override": boolean,
  "firstSimple": {
    object (Simple)
  },
  "content": {
    object (Content)
  },
  "lastSimple": {
    object (Simple)
  },
  "suggestions": [
    {
      object (Suggestion)
    }
  ],
  "link": {
    object (Link)
  },
  "canvas": {
    object (Canvas)
  },
  "orderUpdate": {
    object (OrderUpdate)
  }
}
Поля
override

boolean

Необязательный. Режим объединения этих сообщений с ранее определенными сообщениями. «true» удаляет все ранее определенные сообщения (первое и последнее простое, содержимое, ссылку на предложения и холст) и добавляет сообщения, определенные в этом приглашении. «false» добавляет сообщения, определенные в этом приглашении, к сообщениям, определенным в предыдущих ответах. Если оставить для этого поля значение «false», также можно будет добавлять к некоторым полям простые приглашения, приглашение «Предложения» и приглашение «Холст» (часть приглашения «Содержимое»). Сообщения «Содержимое» и «Ссылка» всегда перезаписываются, если они определены в приглашении. Значение по умолчанию — «ложь».

firstSimple

object ( Simple )

Необязательный. Первый голосовой и текстовый ответ.

content

object ( Content )

Необязательный. Содержимое, такое как карточка, список или медиафайл, который будет отображаться пользователю.

lastSimple

object ( Simple )

Необязательный. Последний голосовой и текстовый ответ.

suggestions[]

object ( Suggestion )

Необязательный. Предложения, которые будут отображаться пользователю и всегда будут появляться в конце ответа. Если поле «переопределить» в содержащем приглашении имеет значение «ложь», заголовки, определенные в этом поле, будут добавлены к заголовкам, определенным в любых ранее определенных подсказках предложений, а повторяющиеся значения будут удалены.

canvas

object ( Canvas )

Необязательный. Представляет ответ Interactive Canvas, который будет отправлен пользователю.

orderUpdate

object ( OrderUpdate )

Необязательное действие отвечает OrderUpdate после получения заказа во время потока транзакций. При получении этого Google записывает это обновление в заказ и в случае успеха отображает карточку квитанции вместе с TTS, отправленным на устройства отображения.

Простой

Представляет простой запрос, который необходимо отправить пользователю. См. https://developers.google.com/assistant/conversational/prompts-simple .

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

string

Необязательный. Представляет речь, которая будет произнесена пользователю. Это может быть SSML или преобразование текста в речь. Если поле «переопределить» в содержащем приглашении имеет значение «истина», речь, определенная в этом поле, заменяет речь предыдущего простого приглашения. См. https://developers.google.com/assistant/conversational/ssml .

text

string

Необязательный текст для отображения в чате. Если не задано, будет использоваться отображение речевого поля выше. Ограничено 640 символами. Если поле «переопределить» в содержащем приглашении имеет значение «истина», текст, определенный в этом поле, заменяется на текст предыдущего простого приглашения.

Содержание

Объект-контейнер для расширенных подсказок или подсказок выбора.

JSON-представление
{

  // Union field content can be only one of the following:
  "card": {
    object (Card)
  },
  "image": {
    object (Image)
  },
  "table": {
    object (Table)
  },
  "media": {
    object (Media)
  },
  "collection": {
    object (Collection)
  },
  "list": {
    object (List)
  },
  "collectionBrowse": {
    object (CollectionBrowse)
  }
  // End of list of possible types for union field content.
}
Поля

content поля объединения.

content может быть только одним из следующих:

card

object ( Card )

Базовая карта.

image

object ( Image )

Изображение.

table

object ( Table )

Настольная карта.

media

object ( Media )

Ответ, указывающий набор медиафайлов для воспроизведения.

collection

object ( Collection )

Карточка, представляющая набор вариантов на выбор.

list

object ( List )

Карточка со списком вариантов для выбора.

collectionBrowse

object ( CollectionBrowse )

Карточка с набором веб-страниц, которые нужно открыть.

Карта

Базовая карточка для отображения некоторой информации, например изображения и/или текста. См. https://developers.google.com/assistant/conversational/prompts-rich#basic_card .

JSON-представление
{
  "title": string,
  "subtitle": string,
  "text": string,
  "image": {
    object (Image)
  },
  "imageFill": enum (ImageFill),
  "button": {
    object (Link)
  }
}
Поля
title

string

Общее название карты. Необязательный.

subtitle

string

Необязательный.

text

string

Текст карточки. Поддерживает ограниченный набор синтаксиса уценки для форматирования. Обязательно, если изображение не присутствует.

image

object ( Image )

Изображение героя для карты. Высота фиксирована и равна 192dp. Необязательный.

imageFill

enum ( ImageFill )

Как будет заполнен фон изображения. Необязательный.

button

object ( Link )

Кнопка с исходящей ссылкой. Необязательный.

Изображение

Изображение, отображаемое на карточке. См. https://developers.google.com/assistant/conversational/prompts-rich#image-cards .

JSON-представление
{
  "url": string,
  "alt": string,
  "height": integer,
  "width": integer
}
Поля
url

string

Исходный URL изображения. Изображения могут быть в формате JPG, PNG и GIF (анимированные и неанимированные). Например, https://www.agentx.com/logo.png . Необходимый.

alt

string

Текстовое описание изображения, которое будет использоваться для обеспечения доступности, например программы чтения с экрана. Необходимый.

height

integer

Высота изображения в пикселях. Необязательный.

width

integer

Ширина изображения в пикселях. Необязательный.

Заполнение изображения

Возможные варианты отображения изображения, влияющие на представление изображения. Это следует использовать, когда соотношение сторон изображения не соответствует соотношению сторон контейнера изображения.

Перечисления
UNSPECIFIED
GRAY Заполните промежутки между изображением и контейнером изображения серыми полосами.
WHITE Заполните промежутки между изображением и контейнером изображения белыми полосами.
CROPPED Изображение масштабируется таким образом, чтобы ширина и высота изображения соответствовали размерам контейнера или превышали их. Это может обрезать верхнюю и нижнюю часть изображения, если масштабированная высота изображения больше высоты контейнера, или обрезать левую и правую часть изображения, если ширина масштабированного изображения больше ширины контейнера. Это похоже на «Режим масштабирования» на широкоэкранном телевизоре при воспроизведении видео с соотношением сторон 4:3.

OpenUrl

JSON-представление
{
  "url": string,
  "hint": enum (UrlHint)
}
Поля
url

string

Поле URL-адреса, которое может быть любым из: URL-адреса http/https для открытия приложения, связанного с приложением, или веб-страницы.

hint

enum ( UrlHint )

Указывает подсказку для типа URL-адреса.

URL-подсказка

Различные типы подсказок URL.

Перечисления
AMP URL-адрес, указывающий непосредственно на контент AMP, или канонический URL-адрес, который ссылается на контент AMP через . См. https://amp.dev/ .

Стол

Карточка таблицы для отображения таблицы текста. См. https://developers.google.com/assistant/conversational/prompts-rich#table_cards .

JSON-представление
{
  "title": string,
  "subtitle": string,
  "image": {
    object (Image)
  },
  "columns": [
    {
      object (TableColumn)
    }
  ],
  "rows": [
    {
      object (TableRow)
    }
  ],
  "button": {
    object (Link)
  }
}
Поля
title

string

Общее название таблицы. Необязательно, но должно быть установлено, если установлены субтитры.

subtitle

string

Подзаголовок к таблице. Необязательный.

image

object ( Image )

Изображение, связанное с таблицей. Необязательный.

columns[]

object ( TableColumn )

Заголовки и выравнивание столбцов.

rows[]

object ( TableRow )

Данные строки таблицы. Первые три строки гарантированно будут показаны, но на определенных поверхностях остальные могут быть обрезаны. Пожалуйста, протестируйте с помощью симулятора, чтобы увидеть, какие строки будут отображаться для данной поверхности. На поверхностях, поддерживающих возможность WEB_BROWSER, вы можете указать пользователю на веб-страницу с дополнительными данными.

button

object ( Link )

Кнопка.

ТаблицаСтолбец

JSON-представление
{
  "header": string,
  "align": enum (HorizontalAlignment)
}
Поля
header

string

Текст заголовка столбца.

align

enum ( HorizontalAlignment )

Горизонтальное выравнивание содержимого по столбцу. Если не указано, содержимое будет выровнено по переднему краю.

Горизонтальное выравнивание

Выравнивание содержимого внутри ячейки.

Перечисления
UNSPECIFIED
LEADING Передний край ячейки. Это значение по умолчанию.
CENTER Содержимое выравнивается по центру столбца.
TRAILING Содержимое выравнивается по заднему краю столбца.

ТаблицаРоу

Описывает строку в таблице.

JSON-представление
{
  "cells": [
    {
      object (TableCell)
    }
  ],
  "divider": boolean
}
Поля
cells[]

object ( TableCell )

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

divider

boolean

Указывает, должен ли быть разделитель после каждой строки.

Таблеселл

Описывает ячейку в строке.

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

string

Текстовое содержимое ячейки.

СМИ

Представляет один медиа-объект. Содержит информацию о носителе, такую ​​как имя, описание, URL-адрес и т. д. См. https://developers.google.com/assistant/conversational/prompts-media .

JSON-представление
{
  "mediaType": enum (MediaType),
  "startOffset": string,
  "optionalMediaControls": [
    enum (OptionalMediaControls)
  ],
  "mediaObjects": [
    {
      object (MediaObject)
    }
  ],
  "repeatMode": enum (RepeatMode),
  "firstMediaObjectIndex": integer
}
Поля
mediaType

enum ( MediaType )

startOffset

string ( Duration format)

Начальное смещение первого медиа-объекта.

Длительность в секундах, содержащая до девяти дробных цифр, заканчивающаяся символом « s ». Пример: "3.5s" .

optionalMediaControls[]

enum ( OptionalMediaControls )

Дополнительные типы управления мультимедиа, которые может поддерживать этот сеанс ответа на мультимедиа. Если установлено, запрос будет отправлен на 3p, когда произойдет определенное медиа-событие. Если не установлено, 3p все равно должен обрабатывать два типа управления по умолчанию: FINISHED и FAILED.

mediaObjects[]

object ( MediaObject )

Список медиа-объектов

repeatMode

enum ( RepeatMode )

Режим повтора для списка медиа-объектов.

firstMediaObjectIndex

integer

Отсчитываемый от 0 индекс первого медиа-объекта в mediaObjects для воспроизведения. Если не указано, равно нулю или выходит за пределы, воспроизведение начинается с первого медиа-объекта в mediaObjects.

Медиатип

Тип носителя этого ответа.

Перечисления
MEDIA_TYPE_UNSPECIFIED
AUDIO Аудио файл.
MEDIA_STATUS_ACK Ответ на подтверждение отчета о состоянии СМИ.

Необязательные элементы управления медиа

Дополнительные типы управления мультимедиа, которые может поддерживать ответ мультимедиа

Перечисления
OPTIONAL_MEDIA_CONTROLS_UNSPECIFIED Неустановленное значение
PAUSED Приостановленное мероприятие. Срабатывает, когда пользователь приостанавливает воспроизведение мультимедиа.
STOPPED Остановленное мероприятие. Срабатывает, когда пользователь выходит из сеанса 3p во время воспроизведения мультимедиа.

Медиаобъект

Представляет один медиа-объект

JSON-представление
{
  "name": string,
  "description": string,
  "url": string,
  "image": {
    object (MediaImage)
  }
}
Поля
name

string

Имя этого медиа-объекта.

description

string

Описание этого медиа-объекта.

url

string

URL-адрес, указывающий на медиа-контент. Файлы MP3 должны размещаться на веб-сервере и быть общедоступными через URL-адрес HTTPS. Прямая трансляция поддерживается только для формата MP3.

image

object ( MediaImage )

Изображение для показа вместе с медиа-картой.

Медиаизображение

JSON-представление
{

  // Union field image can be only one of the following:
  "large": {
    object (Image)
  },
  "icon": {
    object (Image)
  }
  // End of list of possible types for union field image.
}
Поля

image поля объединения.

image может быть только одним из следующих:

large

object ( Image )

Большое изображение, например обложка альбома и т. д.

icon

object ( Image )

Небольшой значок изображения отображается справа от заголовка. Его размер изменен до 36x36 dp.

Режим Повтора

Типы режима повтора для списка медиаобъектов.

Перечисления
REPEAT_MODE_UNSPECIFIED Эквивалент ВЫКЛ.
OFF Завершить сеанс мультимедиа в конце последнего медиа-объекта.
ALL Перейдите к началу первого медиа-объекта, когда будет достигнут конец последнего медиа-объекта.

Коллекция

Карточка, представляющая набор вариантов на выбор. См. https://developers.google.com/assistant/conversational/prompts-selection#collection.

JSON-представление
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (CollectionItem)
    }
  ],
  "imageFill": enum (ImageFill)
}
Поля
title

string

Название сборника. Необязательный.

subtitle

string

Подзаголовок сборника. Необязательный.

items[]

object ( CollectionItem )

Список предметов. Он может иметь минимум 2 и максимум 10 .

imageFill

enum ( ImageFill )

Как будут заполняться фоны изображений предметов коллекции. Необязательный.

КоллекцияЭлемент

Предмет в коллекции

JSON-представление
{
  "key": string
}
Поля
key

string

Необходимый. Ключ NLU, соответствующий имени ключа записи в связанном типе.

Список

Карточка для представления списка вариантов на выбор. См. https://developers.google.com/assistant/conversational/prompts-selection#list .

JSON-представление
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (ListItem)
    }
  ]
}
Поля
title

string

Название списка. Необязательный.

subtitle

string

Подзаголовок списка. Необязательный.

items[]

object ( ListItem )

Список предметов. Он может иметь минимум 2 и максимум 30 .

Пункт списка

Элемент в списке

JSON-представление
{
  "key": string
}
Поля
key

string

Необходимый. Ключ NLU, соответствующий имени ключа записи в связанном типе.

КоллекцияОбзор

Представляет набор веб-документов как коллекцию элементов большой плитки. Элементы могут быть выбраны для запуска связанного с ними веб-документа в средстве веб-просмотра. См. https://developers.google.com/assistant/conversational/prompts-selection#collectionBrowse .

JSON-представление
{
  "items": [
    {
      object (Item)
    }
  ],
  "imageFill": enum (ImageFill)
}
Поля
items[]

object ( Item )

Список предметов. Он может иметь минимум 2 и максимум 10 .

imageFill

enum ( ImageFill )

Тип опции отображения изображения.

Элемент

Предмет в коллекции.

JSON-представление
{
  "title": string,
  "description": string,
  "footer": string,
  "image": {
    object (Image)
  },
  "openUriAction": {
    object (OpenUrl)
  }
}
Поля
title

string

Необходимый. Название предмета коллекции.

description

string

Описание предмета коллекции.

footer

string

Текст нижнего колонтитула элемента коллекции, отображаемый под описанием. Одна строка текста, обрезанная многоточием.

image

object ( Image )

Изображение предмета коллекции.

openUriAction

object ( OpenUrl )

Необходимый. URI для открытия, если элемент выбран.

Предположение

Предложения предоставляют пользователям устройств с дисплеем чипы предложений, когда Ассистент отображает подсказку. Используйте чипы предложений, чтобы подсказать ответы пользователей, чтобы продолжить или развернуть разговор. При нажатии чип подсказки возвращает отображаемый текст в разговор дословно, как если бы пользователь его напечатал. См. https://developers.google.com/assistant/conversational/prompts#suggestions .

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

string

Необходимый. Текст, отображаемый в чипе предложения. При нажатии этот текст будет дословно отправлен обратно в беседу, как если бы пользователь его набрал. Каждое название должно быть уникальным среди набора фишек предложений. Макс. 25 символов

Холст

Представляет ответ Interactive Canvas, который будет отправлен пользователю. Его можно использовать вместе с полем «firstSimple» в содержащем приглашении для разговора с пользователем в дополнение к отображению ответа на интерактивном холсте. Максимальный размер ответа — 50 КБ. См. https://developers.google.com/assistant/interactivecanvas .

JSON-представление
{
  "url": string,
  "data": [
    value
  ],
  "suppressMic": boolean,
  "continuousMatchConfig": {
    object (ContinuousMatchConfig)
  }
}
Поля
url

string

URL-адрес интерактивного веб-приложения на основе холста для загрузки. Если не установлено, URL-адрес текущего активного холста будет использоваться повторно.

data[]

value ( Value format)

Необязательный. Данные JSON, которые будут переданы на веб-страницу иммерсивного опыта как событие. Если поле «переопределить» в содержащем приглашении имеет значение «ложь», значения данных, определенные в этом приглашении Canvas, будут добавлены после значений данных, определенных в предыдущих приглашениях Canvas.

suppressMic

boolean

Необязательный. Значение по умолчанию: ложь.

continuousMatchConfig

object ( ContinuousMatchConfig )

Конфигурация, используемая для запуска режима непрерывного сопоставления.

Конфигурация непрерывного матча

Конфигурация, используемая для запуска режима непрерывного сопоставления.

JSON-представление
{
  "expectedPhrases": [
    {
      object (ExpectedPhrase)
    }
  ],
  "durationSeconds": integer
}
Поля
expectedPhrases[]

object ( ExpectedPhrase )

Все возможные ожидаемые фразы во время сеанса в режиме непрерывного матча.

durationSeconds

integer

Продолжительность включения режима непрерывного матча. Если указано, микрофон будет закрыт по истечении времени. Максимально допустимое значение — 180.

Ожидаемая фраза

JSON-представление
{
  "phrase": string,
  "alternativePhrases": [
    string
  ]
}
Поля
phrase

string

Фраза для сопоставления во время сеанса режима непрерывного сопоставления.

alternativePhrases[]

string

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

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

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

JSON-представление
{
  "type": enum (Type),
  "order": {
    object (Order)
  },
  "updateMask": string,
  "userNotification": {
    object (UserNotification)
  },
  "reason": string
}
Поля
type
(deprecated)

enum ( Type )

Устарело: вместо этого используйте OrderUpdate.update_mask. Если тип = SNAPSHOT, OrderUpdate.order должен содержать весь заказ. Если тип = 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 Обновить снимок заказа.

Заказ

Сущность заказа. Примечание. 1. Все строки на всех уровнях должны содержать менее 1000 символов, если не указано иное. 2. Число всех повторяющихся полей на всех уровнях должно быть менее 50, если не указано иное. 3. Все временные метки на всех уровнях, если они указаны, должны быть действительными.

JSON-представление
{
  "googleOrderId": string,
  "merchantOrderId": 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.
}
Поля
googleOrderId

string

Google присвоил идентификатор заказа.

merchantOrderId

string

Обязательно: внутренний идентификатор заказа, присвоенный продавцом. Этот идентификатор должен быть уникальным и необходим для последующих операций обновления заказа. Этот идентификатор может быть установлен в соответствии с предоставленным googleOrderId или любым другим уникальным значением. Обратите внимание, что идентификатор, предоставляемый пользователям, — это userVisibleOrderId, который может иметь другое, более удобное для пользователя значение. Максимально допустимая длина — 128 символов.

userVisibleOrderId

string

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

userVisibleStateLabel
(deprecated)

string

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

buyerInfo

object ( UserInfo )

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

image

object ( Image )

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

createTime

string ( Timestamp format)

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

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

lastUpdateTime

string ( Timestamp format)

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

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

transactionMerchant

object ( Merchant )

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

contents

object ( Contents )

Обязательно: содержимое заказа, которое представляет собой группу позиций.

priceAttributes[]

object ( PriceAttribute )

Цена, скидки, налоги и так далее.

followUpActions[]

object ( Action )

Последующие действия на уровне заказа.

paymentData

object ( PaymentData )

Данные, связанные с оплатой заказа.

termsOfServiceUrl

string

Ссылка на условия обслуживания, применимые к заказу/предложенному заказу.

note

string

Примечания, прилагаемые к заказу.

promotions[]

object ( Promotion )

Все акции, которые связаны с этим заказом.

disclosures[]

object ( Disclosure )

Раскрытие информации, связанное с этим приказом.

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" } .

verticals полей объединения. Эти свойства будут применяться ко всем позициям, если они не будут переопределены в какой-либо позиции. Эта тематика должна соответствовать типу вертикали на уровне позиции. verticals могут быть только одним из следующих:
purchase

object ( PurchaseOrderExtension )

Заказ на покупку

ticket

object ( TicketOrderExtension )

Заказ билетов

Информация о пользователе

Информация о пользователе. Используется для представления информации о пользователе, связанной с заказом.

JSON-представление
{
  "email": string,
  "firstName": string,
  "lastName": string,
  "displayName": string,
  "phoneNumbers": [
    {
      object (PhoneNumber)
    }
  ]
}
Поля
email

string

Электронная почта пользователя, например: janedoe@gmail.com .

firstName

string

Имя пользователя.

lastName

string

Фамилия пользователя.

displayName

string

Отображаемое имя пользователя может отличаться от имени или фамилии.

phoneNumbers[]

object ( PhoneNumber )

Телефонные номера пользователя.

Номер телефона

Стандартное представление номера телефона.

JSON-представление
{
  "e164PhoneNumber": string,
  "extension": string,
  "preferredDomesticCarrierCode": string
}
Поля
e164PhoneNumber

string

Номер телефона в формате E.164, как определено в Рекомендации E.164 Международного союза электросвязи (ITU). ссылка на вики: https://en.wikipedia.org/wiki/E.164

extension

string

Расширение не стандартизировано в рекомендациях ITU, за исключением того, что оно определяется как серия чисел с максимальной длиной 40 цифр. Здесь он определяется как строка, допускающая возможное использование начального нуля в расширении (организации имеют полную свободу в этом, поскольку стандарт не определен). Помимо цифр, здесь могут храниться и некоторые другие символы набора, такие как «,» (обозначающие ожидание). Например, в ххх-ххх-хххх доб. 123, «123» — это расширение.

preferredDomesticCarrierCode

string

Код выбора оператора связи, который предпочтителен при звонках на этот номер телефона внутри страны. Сюда также входят коды, которые необходимо набирать в некоторых странах при звонках со стационарных телефонов на мобильные телефоны и наоборот. Например, в Колумбии перед номером телефона необходимо набрать цифру «3» при звонке с мобильного телефона на домашний стационарный телефон и наоборот. https://en.wikipedia.org/wiki/Telephone_numbers_in_Colombia https://en.wikipedia.org/wiki/Brazilian_Carrier_Selection_Code

Обратите внимание, что это «предпочтительный» код, что означает, что другие коды также могут работать.

Изображение

Изображение, отображаемое на карточке.

JSON-представление
{
  "url": string,
  "accessibilityText": string,
  "height": integer,
  "width": integer
}
Поля
url

string

Исходный URL изображения. Изображения могут быть в формате JPG, PNG и GIF (анимированные и неанимированные). Например, https://www.agentx.com/logo.png . Необходимый.

accessibilityText

string

Текстовое описание изображения, которое будет использоваться для обеспечения доступности, например программы чтения с экрана. Необходимый.

height

integer

Высота изображения в пикселях. Необязательный.

width

integer

Ширина изображения в пикселях. Необязательный.

Торговец

Продавец для корзины/заказа/позиции.

JSON-представление
{
  "id": string,
  "name": string,
  "image": {
    object (Image)
  },
  "phoneNumbers": [
    {
      object (PhoneNumber)
    }
  ],
  "address": {
    object (Location)
  }
}
Поля
id

string

Необязательный идентификатор, присвоенный продавцу, если таковой имеется.

name

string

Название торговца вроде «Панера Хлеб».

image

object ( Image )

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

phoneNumbers[]

object ( PhoneNumber )

Телефоны торговцев.

address

object ( Location )

Адрес торговца.

Расположение

Контейнер, представляющий местоположение.

JSON-представление
{
  "coordinates": {
    object (LatLng)
  },
  "formattedAddress": string,
  "zipCode": string,
  "city": string,
  "postalAddress": {
    object (PostalAddress)
  },
  "name": string,
  "phoneNumber": string,
  "notes": string,
  "placeId": string
}
Поля
coordinates

object ( LatLng )

Геокоординаты. Требуется разрешение [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION].

formattedAddress

string

Отобразить адрес, например, «1600 Amphitheatre Pkwy, Mountain View, CA 94043». Требуется разрешение [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION].

zipCode

string

Почтовый индекс. Требуется разрешение [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] или [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION].

city

string

Город. Требуется разрешение [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] или [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION].

postalAddress

object ( PostalAddress )

Почтовый адрес. Требуется разрешение [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] или [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION].

name

string

Название места.

phoneNumber

string

Номер телефона местоположения, например контактный номер офиса или номер телефона места доставки.

notes

string

Заметки о локации.

placeId

string

PlaceId используется с API Places для получения сведений о месте. См. https://developers.google.com/places/web-service/place-id .

ШиротаДлительность

Объект, представляющий пару широты и долготы. Это выражается в виде пары двойных чисел, обозначающих градусы широты и градусы долготы. Если не указано иное, этот объект должен соответствовать стандарту WGS84 . Значения должны находиться в пределах нормализованных диапазонов.

JSON-представление
{
  "latitude": number,
  "longitude": number
}
Поля
latitude

number

Широта в градусах. Оно должно находиться в диапазоне [-90,0, +90,0].

longitude

number

Долгота в градусах. Оно должно находиться в диапазоне [-180,0, +180,0].

Почтовый адрес

Представляет почтовый адрес, например, для адресов почтовой доставки или платежей. Учитывая почтовый адрес, почтовая служба может доставлять товары в помещение, почтовый ящик или другое место. Он не предназначен для моделирования географических мест (дорог, городов, гор).

Обычно адрес создается посредством пользовательского ввода или путем импорта существующих данных, в зависимости от типа процесса.

Советы по вводу/редактированию адреса: – Используйте виджет адреса с поддержкой i18n, например https://github.com/google/libaddressinput . – Пользователям не должны предоставляться элементы пользовательского интерфейса для ввода или редактирования полей за пределами стран, где это поле есть. использовал.

Дополнительные инструкции по использованию этой схемы см. на странице https://support.google.com/business/answer/6397478 .

JSON-представление
{
  "revision": integer,
  "regionCode": string,
  "languageCode": string,
  "postalCode": string,
  "sortingCode": string,
  "administrativeArea": string,
  "locality": string,
  "sublocality": string,
  "addressLines": [
    string
  ],
  "recipients": [
    string
  ],
  "organization": string
}
Поля
revision

integer

Версия схемы PostalAddress . Это значение должно быть установлено на 0, что соответствует последней версии.

Все новые версии должны быть обратно совместимы со старыми версиями.

regionCode

string

Необходимый. CLDR-код региона страны/региона адреса. Это никогда не предполагается, и пользователь должен убедиться в правильности значения. Подробности см. на http://cldr.unicode.org/ и http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html . Пример: «CH» для Швейцарии.

languageCode

string

Необязательный. Код языка BCP-47 содержимого этого адреса (если известен). Часто это язык пользовательского интерфейса формы ввода или ожидается, что он будет соответствовать одному из языков, используемых в стране/регионе адреса, или их транслитерированным эквивалентам. Это может повлиять на форматирование в некоторых странах, но не имеет решающего значения для правильности данных и никогда не повлияет на проверку или другие операции, не связанные с форматированием.

Если это значение неизвестно, его следует опустить (вместо указания возможно неправильного значения по умолчанию).

Примеры: «ж-Хант», «джа», «джа-Латн», «ен».

postalCode

string

Необязательный. Почтовый индекс адреса. Не все страны используют или требуют наличия почтовых индексов, но там, где они используются, они могут вызвать дополнительную проверку других частей адреса (например, проверка штата/почтового индекса в США).

sortingCode

string

Необязательный. Дополнительный код сортировки для конкретной страны. В большинстве регионов это не используется. Там, где оно используется, значение представляет собой либо строку типа «CEDEX», за которой необязательно следует число (например, «CEDEX 7»), либо просто число, представляющее «код сектора» (Ямайка), «указатель зоны доставки». (Малави) или «индикатор почтового отделения» (например, Кот-д'Ивуар).

administrativeArea

string

Необязательный. Высшее административное подразделение, используемое для почтовых адресов страны или региона. Например, это может быть штат, провинция, область или префектура. В частности, для Испании это провинция, а не автономное сообщество (например, «Барселона», а не «Каталония»). Многие страны не используют административную зону в почтовых адресах. Например, в Швейцарии это место следует оставить незаселенным.

locality

string

Необязательный. Обычно относится к части адреса, посвященной городу. Примеры: город в США, ИТ-коммуна, почтовый город Великобритании. В регионах мира, где населенные пункты не определены четко или не вписываются в эту структуру, оставьте locality пустым и используйте адресные строки.

sublocality

string

Необязательный. Сублокальность адреса. Например, это могут быть микрорайоны, районы, районы.

addressLines[]

string

Неструктурированные адресные строки, описывающие нижние уровни адреса.

Поскольку значения в адресных строках не содержат информации о типе и иногда могут содержать несколько значений в одном поле (например, «Остин, Техас»), важно, чтобы порядок строк был ясен. Порядок адресных строк должен быть «порядком конверта» для страны/региона адреса. В местах, где это может отличаться (например, в Японии), адрес_языка используется для явного указания (например, «ja» для упорядочения от большого к меньшему и «ja-Latn» или «en» для упорядочения от малого к большому). Таким образом, в зависимости от языка можно выбрать наиболее конкретную строку адреса.

Минимально допустимое структурное представление адреса состоит из кода региона, а вся остальная информация помещена в строки адреса. Можно было бы очень приблизительно отформатировать такой адрес без геокодирования, но никакие семантические рассуждения не могли быть сделаны ни о каком из компонентов адреса, пока он не был хотя бы частично решен.

Создание адреса, содержащего только регионКод и адресные строки, а затем геокодирование — рекомендуемый способ обработки полностью неструктурированных адресов (в отличие от угадывания, какие части адреса должны быть населенными пунктами или административными областями).

recipients[]

string

Необязательный. Получатель по адресу. Это поле может при определенных обстоятельствах содержать многострочную информацию. Например, он может содержать информацию об уходе.

organization

string

Необязательный. Название организации по адресу.

Содержание

Обертка для позиций.

JSON-представление
{
  "lineItems": [
    {
      object (LineItem)
    }
  ]
}
Поля
lineItems[]

object ( LineItem )

Список позиций заказа. Требуется как минимум 1 элемент строки, допускается не более 50. Все позиции должны относиться к одной тематике.

Линейный элемент

Одна позиция содержит одну вертикаль. Заказ или корзина могут содержать несколько позиций одной тематики. Подстроки/дополнения и т. д. должны быть определены в вертикальных прототипах в зависимости от вариантов их использования. Примечание. 1. Все строки на всех уровнях должны содержать менее 1000 символов, если не указано иное. 2. Число всех повторяющихся полей на всех уровнях должно быть менее 50, если не указано иное. 3. Все временные метки на всех уровнях, если они указаны, должны быть действительными.

JSON-представление
{
  "id": string,
  "name": string,
  "userVisibleStateLabel": string,
  "provider": {
    object (Merchant)
  },
  "priceAttributes": [
    {
      object (PriceAttribute)
    }
  ],
  "followUpActions": [
    {
      object (Action)
    }
  ],
  "recipients": [
    {
      object (UserInfo)
    }
  ],
  "image": {
    object (Image)
  },
  "description": string,
  "notes": [
    string
  ],
  "disclosures": [
    {
      object (Disclosure)
    }
  ],
  "vertical": {
    "@type": string,
    field1: ...,
    ...
  },

  // Union field verticals can be only one of the following:
  "purchase": {
    object (PurchaseItemExtension)
  },
  "reservation": {
    object (ReservationItemExtension)
  }
  // End of list of possible types for union field verticals.
}
Поля
id

string

Обязательно: идентификатор позиции, присвоенный продавцом. Используется для идентификации существующей позиции при применении частичных обновлений. Максимально допустимая длина — 64 символа.

name

string

Название позиции, отображаемое в чеке. Максимально допустимая длина — 100 символов.

userVisibleStateLabel
(deprecated)

string

Устарело. Вместо этого используйте статус вертикального уровня. Например, для покупок используйте PurchaseOrderExtension.status. Видимая пользователем метка состояния этой позиции.

provider

object ( Merchant )

Поставщик конкретной позиции, если он отличается от общего заказа. Пример: заказ Expedia с поставщиком позиций ANA.

priceAttributes[]

object ( PriceAttribute )

Цена и корректировки на уровне позиции.

followUpActions[]

object ( Action )

Последующие действия в позиции.

recipients[]

object ( UserInfo )

Клиенты на уровне позиции, это может отличаться от покупателя на уровне заказа. Пример: Пользователь X забронировал столик в ресторане на имя пользователя Y.

image

object ( Image )

Небольшое изображение, связанное с этим элементом, если таковое имеется.

description

string

Описание позиции.

notes[]

string

Дополнительные примечания, применимые к этой конкретной позиции, например, правила отмены.

disclosures[]

object ( Disclosure )

Раскрытие информации, связанное с этой статьей.

vertical
(deprecated)

object

Устарело: вместо этого используйте вертикали. Обязательно: семантическое содержание позиции в зависимости от ее типа/тематики. Каждая вертикаль должна включать свои собственные детали выполнения. Должно быть одно из следующих значений: google.actions.orders.v3.verticals.purchase.PurchaseItemExtension google.actions.orders.v3.verticals.reservation.ReservationItemExtension google.actions.orders.v3.verticals.ticket.TicketItemExtension

Объект, содержащий поля произвольного типа. Дополнительное поле "@type" содержит URI, идентифицирующий тип. Пример: { "id": 1234, "@type": "types.example.com/standard/id" } .

verticals полей объединения. Обязательно: семантическое содержание позиции в зависимости от ее типа/тематики. Каждая вертикаль должна включать свои собственные детали выполнения. verticals могут быть только одним из следующих:
purchase

object ( PurchaseItemExtension )

Заказы на покупку товаров, продуктов питания и т. д.

reservation

object ( ReservationItemExtension )

Заказы на бронирование, такие как ресторан, стрижка и т. д.

ЦенаАтрибут

Атрибут цены заказа или позиции.

JSON-представление
{
  "type": enum (Type),
  "name": string,
  "id": string,
  "state": enum (State),
  "taxIncluded": boolean,

  // Union field spec can be only one of the following:
  "amount": {
    object (Money)
  },
  "amountMillipercentage": integer
  // End of list of possible types for union field spec.
}
Поля
type

enum ( Type )

Обязательно: тип денежного атрибута.

name

string

Обязательно: отображаемая пользователем строка атрибута цены. Оно отправлено и локализовано продавцом.

id

string

Необязательно: идентификатор позиции, которой соответствует эта цена.

state

enum ( State )

Обязательно: Состояние цены: расчетная или фактическая.

taxIncluded

boolean

Включена ли цена в налог.

spec поля Union. Представляет либо денежную сумму, либо миллипроценты. spec может быть только одной из следующих:
amount

object ( Money )

Денежная сумма.

amountMillipercentage
(deprecated)

integer

Процентное значение до 1/1000 процента. Например: 8,750% обозначается как 8750, отрицательные проценты представляют собой процентные скидки. Устаревшее это поле. Можно рассмотреть возможность добавления обратно, когда требуется надежный вариант использования.

Тип

Обозначает тип денег.

Перечисления
TYPE_UNSPECIFIED Тип не указан, клиентам не нужно задавать его явно.
REGULAR Обычная отображаемая цена без учета скидок и т. д.
DISCOUNT Вычитается из промежуточной суммы.
TAX Добавляется к промежуточной сумме.
DELIVERY Добавляется к промежуточной сумме.
SUBTOTAL Итого, без учета некоторых сборов.
FEE Любая дополнительная плата.
GRATUITY Добавляется к промежуточной сумме.
TOTAL Отображается цена заказа или позиции.

Состояние

Представляет состояние цены.

Перечисления
STATE_UNSPECIFIED Не указан.
ESTIMATE Цена является приблизительной, но окончательная сумма будет близка к этой сумме. Пример: В случаях, когда на момент транзакции точно неизвестен налог, общая сумма будет ПРИМЕРНОЙ.
ACTUAL Фактическая цена, которая будет взиматься с пользователя.

Деньги

Представляет сумму денег с типом валюты.

JSON-представление
{
  "currencyCode": string,
  "amountInMicros": string
}
Поля
currencyCode

string

Трехбуквенный код валюты, определенный в ISO 4217.

amountInMicros

string ( int64 format)

Сумма в микро. Например, в этом поле должно быть установлено значение 1990000 за 1,99 доллара США.

Действие

Последующее действие, связанное с заказом или позицией.

JSON-представление
{
  "type": enum (Type),
  "title": string,
  "openUrlAction": {
    object (OpenUrlAction)
  },
  "actionMetadata": {
    object (ActionMetadata)
  }
}
Поля
type

enum ( Type )

Обязательно: Тип действия.

title

string

Название или метка действия, отображаемая пользователю. Максимально допустимая длина — 100 символов.

openUrlAction

object ( OpenUrlAction )

Действия, которые необходимо предпринять.

actionMetadata

object ( ActionMetadata )

Метаданные, связанные с действием.

Тип

Возможные последующие действия.

Перечисления
TYPE_UNSPECIFIED Неопределенное действие.
VIEW_DETAILS Действие «Просмотр сведений о заказе».
MODIFY Изменить действие заказа.
CANCEL Отменить действие заказа.
RETURN Действие заказа на возврат.
EXCHANGE Заказ обмена.
EMAIL

Действие по электронной почте. Типы электронной почты и вызовов устарели. OpenUrlaction.url можно использовать в качестве телефонного номера или электронного письма.

CALL

Вызовать действие.

REORDER Повторное действие.
REVIEW Просмотреть действие заказа.
CUSTOMER_SERVICE Свяжитесь со службой поддержки клиентов.
FIX_ISSUE Прямо на торговый сайт или приложение, чтобы решить проблему.
DIRECTION Направление ссылки.

OpenUrlaction

Открывает данный URL.

JSON-представление
{
  "url": string,
  "androidApp": {
    object (AndroidApp)
  },
  "urlTypeHint": enum (UrlTypeHint)
}
Поля
url

string

Поле URL-адреса, которое может быть любым из: URL-адреса http/https для открытия приложения, связанного с приложением, или веб-страницы.

androidApp

object ( AndroidApp )

Информация о приложении Android, если ожидается, что URL -адрес будет выполнен приложением Android.

urlTypeHint

enum ( UrlTypeHint )

Указывает подсказку для типа URL-адреса.

Androidapp

Спецификация приложения Android для ограничений выполнения

JSON-представление
{
  "packageName": string,
  "versions": [
    {
      object (VersionFilter)
    }
  ]
}
Поля
packageName

string

Имя пакета пакета должно быть указано при определении Android Pellfillment.

versions[]

object ( VersionFilter )

Когда будет указано несколько фильтров, любое совпадение фильтра запустит приложение.

Версияфильтра

VersionFilter следует включить, если требуются определенные версии приложения.

JSON-представление
{
  "minVersion": integer,
  "maxVersion": integer
}
Поля
minVersion

integer

Минимальный код версии или 0 включительно.

maxVersion

integer

Код максимальной версии включительно. Рассматриваемый диапазон [Minversion: Maxversion]. Нулевой диапазон подразумевает любую версию. Примеры. Чтобы указать одну версию, используйте: [target_version:target_version]. Чтобы указать любую версию, оставьте Minversion и Maxversion неопределенной. Чтобы указать все версии до максверов, оставьте Minversion неопределенной. Чтобы указать все версии из Minversion, оставьте Maxversion неопределенным.

Urltypehint

Различные типы подсказок URL.

Перечисления
URL_TYPE_HINT_UNSPECIFIED Неопределенные
AMP_CONTENT URL, который указывает непосредственно на содержание AMP, или на канонический URL, который относится к контенту AMP через <link rel = "amphtml">.

ActionMetadata

Связанные метаданные за действие.

JSON-представление
{
  "expireTime": string
}
Поля
expireTime

string ( Timestamp format)

Время, когда это действие истечет.

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

Раскрытие информации

Информация о продукте, услуге или политике, которая может быть представлена ​​пользователю.

JSON-представление
{
  "title": string,
  "disclosureText": {
    object (DisclosureText)
  },
  "presentationOptions": {
    object (DisclosurePresentationOptions)
  }
}
Поля
title

string

Название раскрытия. Пример: «Информация по безопасности».

disclosureText

object ( DisclosureText )

Содержание раскрытия. Веб-ссылки разрешены.

presentationOptions

object ( DisclosurePresentationOptions )

Варианты представления раскрытия.

DiscloSureText

Представляет простой текст с веб -ссылками.

JSON-представление
{
  "template": string,
  "textLinks": [
    {
      object (TextLink)
    }
  ]
}
Поля
template

string

Текст для отображения, содержащие заполнители, такие как «{0}» и «{1}» для каждой текстовой связи, который должен быть вставлен. Пример: «Предупреждение: этот продукт может подвергнуть вас химическим веществам, которые известны в штате Калифорния, чтобы вызвать рак. Для получения дополнительной информации перейти к {0}». Этот текст раскрытия не должен содержать какого-либо рекламного или рекламного контента.

Опционы раскрытия информации

Варианты представления раскрытия информации.

JSON-представление
{
  "presentationRequirement": enum (PresentationRequirement),
  "initiallyExpanded": boolean
}
Поля
presentationRequirement

enum ( PresentationRequirement )

Требование к раскрытию информации.

initiallyExpanded

boolean

Следует ли изначально расширять содержание раскрытия. По умолчанию он изначально свернут.

PresentationRequirement

Требование для представления раскрытия.

Перечисления
REQUIREMENT_UNSPECIFIED Неопределенное требование. Не должен устанавливать это явно.
REQUIREMENT_OPTIONAL Раскрытие не является обязательным. Его можно пропустить, если устройство не поддерживает, показывая раскрытие.
REQUIREMENT_REQUIRED Раскрытие требуется. Разговор будет подключаться к телефону, если устройство не поддерживает показ раскрытия.

Покупка

Линейная позиция Содержание покупки вертикально.

JSON-представление
{
  "status": enum (PurchaseStatus),
  "userVisibleStatusLabel": string,
  "type": enum (PurchaseType),
  "productId": string,
  "quantity": integer,
  "unitMeasure": {
    object (MerchantUnitMeasure)
  },
  "returnsInfo": {
    object (PurchaseReturnsInfo)
  },
  "fulfillmentInfo": {
    object (PurchaseFulfillmentInfo)
  },
  "itemOptions": [
    {
      object (ItemOption)
    }
  ],
  "productDetails": {
    object (ProductDetails)
  },
  "extension": {
    "@type": string,
    field1: ...,
    ...
  }
}
Поля
status

enum ( PurchaseStatus )

Требуется: Статус уровня строки.

userVisibleStatusLabel

string

Требуется: Пользовательская видимая метка/строка для статуса. Максимальная допустимая длина составляет 50 Chars.

type

enum ( PurchaseType )

Требуется: тип покупки.

productId
(deprecated)

string

Продукт или идентификатор предложения, связанный с этой линейкой.

quantity

integer

Количество товара.

unitMeasure

object ( MerchantUnitMeasure )

Единица измерения. Указывает размер элемента в выбранных единицах. Размер, вместе с активной ценой, используется для определения цены за единицу.

returnsInfo

object ( PurchaseReturnsInfo )

Возвращает информацию для этой строки. Если это не так, эта строка наследует уровень заказа возвращает информацию.

fulfillmentInfo

object ( PurchaseFulfillmentInfo )

Информация о выполнении этой позиции. Если этот параметр не установлен, эта позиция наследует информацию о выполнении уровня заказа.

itemOptions[]

object ( ItemOption )

Дополнительные дополнения или подразделения.

productDetails

object ( ProductDetails )

Подробности о продукте.

extension
(deprecated)

object

Любые дополнительные поля, которые обменялись между торговцем и Google. Примечание. Использование этого расширения сильно обескуражено. Основываясь на варианте использования/обстоятельств, рассмотрите одно из следующих действий: 1. Определите поля в покупке, если он может быть использован для других случаев использования (т.е. общая возможность/функциональность). 2. Используйте vertical_extension, если это специфична для пользовательской, негенерической функции/функции использования/функции.

Объект, содержащий поля произвольного типа. Дополнительное поле "@type" содержит URI, идентифицирующий тип. Пример: { "id": 1234, "@type": "types.example.com/standard/id" } .

Покупка

Статус покупки, связанный с заказом на покупку или определенной строкой.

Перечисления
PURCHASE_STATUS_UNSPECIFIED Статус не указан.
READY_FOR_PICKUP Готов.
SHIPPED Отправленный.
DELIVERED Доставленный.
OUT_OF_STOCK Распродано.
IN_PREPARATION «In_preparation» может иметь разное значение в разных контекстах. Для заказа пищи это может быть еда готовится. Для розничной торговли можно быть упакован.
CREATED Порядок создан.
CONFIRMED Торговец подтвердил заказ.
REJECTED Торговец отклонил заказ или позицию.
RETURNED Элемент был возвращен пользователем.
CANCELLED Пользователь был отменен заказом или строкой.
CHANGE_REQUESTED Пользователь запросил изменения в заказе, и интегратор обрабатывает это изменение. Заказ должен быть перенесен в другое состояние после обработки запроса.

Покупка

Категория покупки.

Перечисления
PURCHASE_TYPE_UNSPECIFIED Неизвестное значение.
RETAIL Он включает в себя покупки, такие как физические товары.
FOOD Он включает в себя покупку заказа в еде.
GROCERY Покупка продуктов.
MOBILE_RECHARGE Предоплаченная покупка мобильной зарядки.

MerchantUnitmeasure

Ценовая мера торговых единиц.

JSON-представление
{
  "measure": number,
  "unit": enum (Unit)
}
Поля
measure

number

Значение: пример 1.2.

unit

enum ( Unit )

Блок: пример фунт, грамм.

Единица

Перечисления
UNIT_UNSPECIFIED Единица неопределенного.
MILLIGRAM Миллиграмм.
GRAM Грамм
KILOGRAM Килограмм.
OUNCE Унция.
POUND Фунт.

Покупатель

Возвращает информацию, связанную с заказом или определенной строкой.

JSON-представление
{
  "isReturnable": boolean,
  "daysToReturn": integer,
  "policyUrl": string
}
Поля
isReturnable

boolean

Если правда, возврат разрешен.

daysToReturn

integer

Возврат допускается в течение столько дней.

policyUrl

string

Ссылка на политику возврата.

Покупка

Информация о выполнении, связанная с заказом на покупку или конкретной позицией.

JSON-представление
{
  "id": string,
  "fulfillmentType": enum (Type),
  "expectedFulfillmentTime": {
    object (Time)
  },
  "expectedPreparationTime": {
    object (Time)
  },
  "location": {
    object (Location)
  },
  "expireTime": string,
  "price": {
    object (PriceAttribute)
  },
  "fulfillmentContact": {
    object (UserInfo)
  },
  "shippingMethodName": string,
  "storeCode": string,
  "pickupInfo": {
    object (PickupInfo)
  }
}
Поля
id

string

Уникальный идентификатор для этого варианта услуги.

fulfillmentType

enum ( Type )

Обязательно: Тип выполнения.

expectedFulfillmentTime

object ( Time )

Окно, если указан временной диапазон, или ETA, если указано одно время. Ожидаемое время доставки или самовывоза.

expectedPreparationTime

object ( Time )

Окно, если указан временной диапазон, или ETA, если указано одно время. Ожидаемое время приготовления еды. Предпочтительно одноразовое.

location

object ( Location )

Место самовывоза или доставки.

expireTime

string ( Timestamp format)

Время, когда истекает срок действия этой возможности выполнения.

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

price

object ( PriceAttribute )

Стоимость этого варианта.

fulfillmentContact

object ( UserInfo )

Контакт пользователя для этого выполнения.

shippingMethodName

string

Название способа доставки, выбранного пользователем.

storeCode

string

StoreCode местоположения. Пример: Walmart является торговцем, а StoreCode - это магазин Walmart, где произошло выполнение. https://support.google.com/business/answer/3370250?Ref_topic=45966653 .

pickupInfo

object ( PickupInfo )

Дополнительная информация о том, как будет собираться заказ. Это поле применимо только в том случае, если тип выполнения — САМОВЫВОЗ.

Тип

Тип выполнения.

Перечисления
TYPE_UNSPECIFIED Тип неопределенного.
DELIVERY Этот заказ будет доставлен.
PICKUP Этот заказ должен быть подобран.

Время

Временная конструкция для представления времени события для использования при отображении заказа пользователю.

JSON-представление
{
  "timeIso8601": string
}
Поля
timeIso8601

string

Представляет собой время, например, время бронирования, время доставки и так далее. Может быть продолжительность (время начала и окончания), только дата, дата и т. Д. См.

Пикапинфо

Подробности о том, как поднимается заказ. Он включает в себя такие детали, как тип пикапа и дополнительные метаданные, прикрепленные с каждым типом, если таковые имеются.

JSON-представление
{
  "pickupType": enum (PickupType),
  "curbsideInfo": {
    object (CurbsideInfo)
  },
  "checkInInfo": [
    {
      object (CheckInInfo)
    }
  ]
}
Поля
pickupType

enum ( PickupType )

Способ получения, например INSTORE, CURBSIDE и т. д.

curbsideInfo

object ( CurbsideInfo )

Детали, специфичные для информации об обучении. Если пикаптип не является «борбовым», это поле будет проигнорировано.

checkInInfo[]

object ( CheckInInfo )

Список различных методов, поддерживаемых партнером для поддержки регистрации.

Пикаптип

Список поддерживаемых типов пикапа.

Перечисления
UNSPECIFIED Поднимите тип без указания.
INSTORE Возьмите еду в ресторане.
CURBSIDE Парк автомобиль в назначенном месте возле ресторана, и кто -то доставит там еду.

Curbsideinfo

Подробности о том, как будет облегчить заказ на обочины.

JSON-представление
{
  "curbsideFulfillmentType": enum (CurbsideFulfillmentType),
  "userVehicle": {
    object (Vehicle)
  }
}
Поля
curbsideFulfillmentType

enum ( CurbsideFulfillmentType )

Партнерам нужна дополнительная информация, чтобы облегчить заказы на получение наград. В зависимости от того, какой тип выполнения выбран, соответствующие детали будут собраны у пользователя.

userVehicle

object ( Vehicle )

Детали автомобиля пользователя размещают заказ.

CurbsideFillmentType

Возможные значения типов выполнения обочины.

Перечисления
UNSPECIFIED Тип выполнения обочины не указано.
VEHICLE_DETAIL Деталь транспортного средства, необходимая для облегчения получения бордюра.

Транспортное средство

Подробности о транспортном средстве

JSON-представление
{
  "make": string,
  "model": string,
  "licensePlate": string,
  "colorName": string,
  "image": {
    object (Image)
  }
}
Поля
make

string

Транспортное средство (например, "Honda"). Это отображается пользователю и должно быть локализовано. Необходимый.

model

string

Модель транспортного средства (например, «Гром»). Это отображается пользователю и должно быть локализовано. Необходимый.

licensePlate

string

Номер номерного знака транспортного средства (например, «1ABC234»). Необходимый.

colorName

string

Название цвета автомобиля, например. Черный необязательный.

image

object ( Image )

URL на фото автомобиля. Фотография будет отображаться примерно на 256x256px. Должен быть JPG или PNG. Необязательный.

Checkininfo

Метаданные, требуемые партнером для поддержки метода проверки.

JSON-представление
{
  "checkInType": enum (CheckInType)
}
Поля
checkInType

enum ( CheckInType )

Метод, используемый для отправки инструкций проверки.

Проверка

Различные методы, используемые для отправки инструкций проверки.

Перечисления
CHECK_IN_TYPE_UNSPECIFIED Неизвестное значение.
EMAIL Информация о проверке будет отправлена ​​по электронной почте.
SMS Информация о проверке будет отправлена ​​SMS.

Itemoption

Представляет дополнения или подразделения.

JSON-представление
{
  "id": string,
  "name": string,
  "prices": [
    {
      object (PriceAttribute)
    }
  ],
  "note": string,
  "quantity": integer,
  "productId": string,
  "subOptions": [
    {
      object (ItemOption)
    }
  ]
}
Поля
id

string

Для параметров, которые являются элементами, уникальный идентификатор элемента.

name

string

Имя опции.

prices[]

object ( PriceAttribute )

Опция Общая цена.

note

string

Примечание связано с вариантом.

quantity

integer

Для вариантов, которые являются предметами, количество.

productId

string

Продукт или идентификатор предложения, связанный с этой опцией.

subOptions[]

object ( ItemOption )

Определить другие вложенные подобороты.

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

Подробности о продукте.

JSON-представление
{
  "productId": string,
  "gtin": string,
  "plu": string,
  "productType": string,
  "productAttributes": {
    string: string,
    ...
  }
}
Поля
productId

string

Продукт или идентификатор предложения, связанный с этой линейкой.

gtin

string

Номер продукта глобальной торговли. Полезно, если SASTERID не присутствует в торговом центре. Необязательный.

plu

string

Коды поиска цен, обычно называемые кодами PLU, числа PLU, плюс, производят коды или производят этикетки, представляют собой систему чисел, которая однозначно идентифицирует объемные продукты, продаваемые в продуктовых магазинах и супермаркетах.

productType

string

Категория продукта, определенная торговцем. Например, «Дом»> Продуктовый магазин> Молочные и яйца> Молоко> Целое молоко »

productAttributes

map (key: string, value: string)

Предоставленные торговыми деталями о продукте, например, {"Allergen": "арахис"}. Полезно, если SASTERID не присутствует в торговом центре. Необязательный.

Объект, содержащий список пар "key": value . Пример: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

ReservationIteMextension

Содержание позиции линии для заказов на бронирование, таких как ресторан, стрижка и т. Д.

JSON-представление
{
  "status": enum (ReservationStatus),
  "userVisibleStatusLabel": string,
  "type": enum (ReservationType),
  "reservationTime": {
    object (Time)
  },
  "userAcceptableTimeRange": {
    object (Time)
  },
  "confirmationCode": string,
  "partySize": integer,
  "staffFacilitators": [
    {
      object (StaffFacilitator)
    }
  ],
  "location": {
    object (Location)
  }
}
Поля
status

enum ( ReservationStatus )

Требуется: статус бронирования.

userVisibleStatusLabel

string

Требуется: Пользовательская видимая метка/строка для статуса. Максимальная допустимая длина составляет 50 Chars.

type

enum ( ReservationType )

Тип резервации. Может быть нерешенным, если ни один из вариантов типа не применим.

reservationTime

object ( Time )

Время, когда служба/событие планируется произойти. Может быть диапазон времени, дата или точное время даты.

userAcceptableTimeRange

object ( Time )

Временный диапазон, который приемлем для пользователя.

confirmationCode

string

Код подтверждения для этого бронирования.

partySize

integer

Число людей.

staffFacilitators[]

object ( StaffFacilitator )

Сотрудники сотрудников, которые будут обслуживать резервирование. Бывший. Парикмахер.

location

object ( Location )

Расположение обслуживания/мероприятия.

Резервирование Status

Статус бронирования.

Перечисления
RESERVATION_STATUS_UNSPECIFIED Неуказанный статус.
PENDING Бронирование находится на рассмотрении.
CONFIRMED Бронирование подтверждено.
CANCELLED Бронирование отменено пользователем.
FULFILLED Бронирование выполнено.
CHANGE_REQUESTED Запрашивается смена бронирования
REJECTED Резервирование либо истек, либо отклоняется интегратором.

Резервирование

Тип резервации.

Перечисления
RESERVATION_TYPE_UNSPECIFIED Неопределенный тип.
RESTAURANT Бронирование для ресторана.
HAIRDRESSER Бронирование для парикмахера.

Персонал

Информация об обслуживающем лице.

JSON-представление
{
  "name": string,
  "image": {
    object (Image)
  }
}
Поля
name

string

Имя штатного координатора. Бывший. "Джон Смит"

image

object ( Image )

Образы исполнителя.

Платежные данные

Платежные данные, относящиеся к заказу.

JSON-представление
{
  "paymentResult": {
    object (PaymentResult)
  },
  "paymentInfo": {
    object (PaymentInfo)
  }
}
Поля
paymentResult

object ( PaymentResult )

Результат платежа, который используется интегратором для завершения транзакции. Это поле будет заполнено Actions on Google, если процесс оформления заказа управляется Actions on Google.

paymentInfo

object ( PaymentInfo )

Информация об оплате заказа, полезная для взаимодействия с пользователем.

Оплата

Результат оплаты, используемый интегратором для завершения транзакции.

JSON-представление
{

  // Union field result can be only one of the following:
  "googlePaymentData": string,
  "merchantPaymentMethodId": string
  // End of list of possible types for union field result.
}
Поля
result поля объединения. Либо предоставляются данные о платежах Google, либо метод оплаты торговцев. result может быть только одним из следующих:
googlePaymentData

string

Google предоставил данные метода оплаты. Если ваш платежный процессор указан в качестве Google, поддерживаемого платежным процессором здесь: https://developers.google.com/pay/api/ Перейдите к вашему платежному процессору через ссылку, чтобы узнать более подробную информацию. В противном случае обратитесь к следующей документации для сведений о полезной нагрузке. https://developers.google.com/pay/api/payment-data-cryptography

merchantPaymentMethodId

string

Торговый/действия предоставил метод оплаты, выбранную пользователем.

Информация о платеже

Платежная информация по выполняемому заказу. Этот прототип собирает информацию, полезную для взаимодействия с пользователем.

JSON-представление
{
  "paymentMethodDisplayInfo": {
    object (PaymentMethodDisplayInfo)
  },
  "paymentMethodProvenance": enum (PaymentMethodProvenance)
}
Поля
paymentMethodDisplayInfo

object ( PaymentMethodDisplayInfo )

Отображаемая информация о способе оплаты, использованном для транзакции.

paymentMethodProvenance

enum ( PaymentMethodProvenance )

Происхождение способа оплаты, использованного для транзакции. Пользователь мог зарегистрировать один и тот же способ оплаты как в Google, так и в продавце.

PAITEDMethoddisplayinfo

Результат оплаты, используемый интегратором для завершения транзакции.

JSON-представление
{
  "paymentType": enum (PaymentType),
  "paymentMethodDisplayName": string,
  "paymentMethodVoiceName": string
}
Поля
paymentType

enum ( PaymentType )

Тип платежа.

paymentMethodDisplayName

string

Пользовательский видимый имя метода оплаты. Например, Visa **** 1234 Проверка Acct **** 5678

paymentMethodVoiceName

string

Имя метода оплаты, которое будет высказывается пользователю для приемов голосовых ассистентов. Например, «Виза заканчивается одним двумя двумя четырьмя», или «Проверка аккаунта заканчивается пятью шестью семью восемью». Примечание. Это оптимизированная голосовая строка, которая будет использоваться вместо платежного methoddisplayName для устройств только голосовых помощников. Если эта строка не установлена, вместо этого платеж MethoddisplayName будет разговором пользователю.

Способ оплаты

Платежпит указывает форму платежа, используемой для предоставленного торговцем способом оплаты. Действие также должно предоставить отображаемое имя для способа оплаты.

Перечисления
PAYMENT_TYPE_UNSPECIFIED Неопределенный тип оплаты.
PAYMENT_CARD Кредитная/дебетовая или предоплаченная карта.
BANK Метод оплаты является банковским счетом.
LOYALTY_PROGRAM Метод оплаты - это программа лояльности.
CASH Метод оплаты - это наличные.
GIFT_CARD Метод оплаты - это подарочная карта.
WALLET Сторонний кошелек, т.е. Paypal

Платеж -матходровенанс

Представляет собой провенанс платежей, используемый для транзакции.

Перечисления
PAYMENT_METHOD_PROVENANCE_UNSPECIFIED Происхождение не определено.
PAYMENT_METHOD_PROVENANCE_GOOGLE Происхождение - это Google.
PAYMENT_METHOD_PROVENANCE_MERCHANT Происхождение является продавцом.

Повышение

ПРОДУКТЫ/Предложения, которые были добавлены в корзину.

JSON-представление
{
  "coupon": string
}
Поля
coupon

string

Требуется: код купона применяется к этому предложению.

Покупательный

Расширение заказа на вертикали покупки. Эти свойства применимы ко всем элементам строки внутри порядка, если только не переопределяются в позицию.

JSON-представление
{
  "status": enum (PurchaseStatus),
  "userVisibleStatusLabel": string,
  "type": enum (PurchaseType),
  "returnsInfo": {
    object (PurchaseReturnsInfo)
  },
  "fulfillmentInfo": {
    object (PurchaseFulfillmentInfo)
  },
  "purchaseLocationType": enum (PurchaseLocationType),
  "errors": [
    {
      object (PurchaseError)
    }
  ],
  "extension": {
    "@type": string,
    field1: ...,
    ...
  }
}
Поля
status

enum ( PurchaseStatus )

Требуется: общий статус для заказа.

userVisibleStatusLabel

string

Пользовательская видимая метка/строка для статуса. Максимальная допустимая длина составляет 50 Chars.

type

enum ( PurchaseType )

Требуется: тип покупки.

returnsInfo

object ( PurchaseReturnsInfo )

Вернуть информацию для заказа.

fulfillmentInfo

object ( PurchaseFulfillmentInfo )

Информация о выполнении заказа.

purchaseLocationType

enum ( PurchaseLocationType )

Расположение покупки (в магазине / онлайн)

errors[]

object ( PurchaseError )

Необязательно: ошибки, из -за которых этот порядок был отклонен.

extension
(deprecated)

object

Любые дополнительные поля, которые обменялись между торговцем и Google. Примечание. Использование этого расширения сильно обескуражено. Основываясь на варианте использования/обстоятельств, рассмотрите одно из следующих действий: 1. Определите поля в PuckeordEreExtension, если его можно использовать для других случаев использования (т.е. общая возможность/функциональность). 2. Используйте vertical_extension, если это специфична для пользовательской, негенерической функции/функции использования/функции.

Объект, содержащий поля произвольного типа. Дополнительное поле "@type" содержит URI, идентифицирующий тип. Пример: { "id": 1234, "@type": "types.example.com/standard/id" } .

Покупка

Тип местоположения покупки.

Перечисления
UNSPECIFIED_LOCATION Неизвестное значение.
ONLINE_PURCHASE Все покупки, купленные в Интернете.
INSTORE_PURCHASE ВСЕ МОЖЕСТВО ПОКУПКИ.

Покупать

Ошибки, на которые можно отклонить заказ на покупку.

JSON-представление
{
  "type": enum (ErrorType),
  "description": string,
  "entityId": string,
  "updatedPrice": {
    object (PriceAttribute)
  },
  "availableQuantity": integer
}
Поля
type

enum ( ErrorType )

Требуется: это представляет собой гранулированную причину, почему приказ отвергается торговцем.

description

string

Дополнительное описание ошибки.

entityId

string

Идентификатор объекта, который соответствует ошибке. Пример это может соответствовать LineItemid / itemoptionid.

updatedPrice

object ( PriceAttribute )

Соответствует в случае типа ошибки PROCE_CHANGED / INFORCT_PRICE.

availableQuantity

integer

Доступное количество сейчас. Применимо в случае наличия_changed.

Errortype

Возможные типы ошибок.

Перечисления
ERROR_TYPE_UNSPECIFIED Неизвестная ошибка
NOT_FOUND Сущность не найдена, может быть пункт, Fulfillmentoption, продвижение по службе. Требуется идентификатор сущности.
INVALID Данные объекта не действительны. может быть пункт, Fulfillmentoption, продвижение по службе. Требуется идентификатор сущности.
AVAILABILITY_CHANGED Предмет недоступен, или недостаточно предметов для выполнения запроса. Требуется идентификатор сущности.
PRICE_CHANGED Цена товара отличается от цены в предприятии. Идентификатор организации и обновленная цена требуется.
INCORRECT_PRICE Ценовые ошибки в сборе, общая. Идентификатор организации и обновленная цена требуется.
REQUIREMENTS_NOT_MET Ограничения для принятия порядка не выполнен - ​​минимальный размер корзины и т. Д. ,.
TOO_LATE Fulfillmentoption истек.
NO_CAPACITY Нет доступной сервисной емкости. Используйте этот код ошибки, если ни один из более мелкозернистых типов ошибок не применим.
NO_COURIER_AVAILABLE Курьер по доставке не может быть найдена. Мелкозернистый тип ошибки, который может быть классифицирован как no_capacity.
INELIGIBLE Пользовательский доступ к размещению заказа (в черном списке).
OUT_OF_SERVICE_AREA Невозможно доставить по запрошему адресу по границе и т. Д.
CLOSED Ресторан закрыт для бизнеса при заказе.
PROMO_NOT_APPLICABLE Общий код ошибки, чтобы поймать все случаи неспособности применять промо -код, если ни один из приведенных ниже. Добавить промо -код в качестве идентификатора объекта.
PROMO_NOT_RECOGNIZED Код купона не был признан партнером. Добавить промо -код в качестве идентификатора объекта.
PROMO_EXPIRED Не мог применить, когда срок действия повышения срока действия. Добавить промо -код в качестве идентификатора объекта.
PROMO_USER_INELIGIBLE Текущий пользователь не имеет права на этот купон. Добавить промо -код в качестве идентификатора объекта.
PROMO_ORDER_INELIGIBLE Текущий заказ не имеет права на этот купон. Добавить промо -код в качестве идентификатора объекта.
UNAVAILABLE_SLOT Слот заказа впереди недоступен.
FAILED_PRECONDITION Ограничения для принятия порядка не выполнен - ​​минимальный размер корзины и т. Д.
PAYMENT_DECLINED Недействительный платеж.
MERCHANT_UNREACHABLE Торговец не доступен. Это помогает, когда партнер является агрегатором и не может достичь торговца.
ACCOUNT_LINKING_FAILED Merchant попытался связать пользовательскую учетную запись Google с учетной записью в своей системе, но при этом столкнулся с ошибкой.

Ticketorderextension

Заказы содержимого на заказы на билеты, такие как фильм, спорт и т. Д.

JSON-представление
{
  "ticketEvent": {
    object (TicketEvent)
  }
}
Поля
ticketEvent

object ( TicketEvent )

Событие применяется ко всем билетам на линейку.

TicketEvent

Представляет единственное событие.

JSON-представление
{
  "type": enum (Type),
  "name": string,
  "description": string,
  "url": string,
  "location": {
    object (Location)
  },
  "eventCharacters": [
    {
      object (EventCharacter)
    }
  ],
  "startDate": {
    object (Time)
  },
  "endDate": {
    object (Time)
  },
  "doorTime": {
    object (Time)
  }
}
Поля
type

enum ( Type )

Требуется: тип билетного мероприятия, например, фильм, концерт.

name

string

Требуется: название события. Например, если событие является фильмом, это должно быть название фильма.

description

string

Описание события.

url

string

URL для информации о событии.

location

object ( Location )

Расположение, где происходит мероприятие, или организация находится.

eventCharacters[]

object ( EventCharacter )

Персонажи, связанные с этим событием. Это могут быть режиссеры или актеры кино события, или исполнители концерта и т. Д.

startDate

object ( Time )

Время начала.

endDate

object ( Time )

Время окончания.

doorTime

object ( Time )

Время входа, которое может отличаться от времени начала события. Например, событие начинается в 9 утра, но время входа составляет 8:30 утра.

Тип

Тип события.

Перечисления
EVENT_TYPE_UNKNOWN Неизвестный тип события.
MOVIE Фильм.
CONCERT Концерт.
SPORTS Виды спорта.

Eventcharacter

Один персонаж события, например, организатор, исполнитель и т. Д.

JSON-представление
{
  "type": enum (Type),
  "name": string,
  "image": {
    object (Image)
  }
}
Поля
type

enum ( Type )

Тип персонажа события, например, актер или директор.

name

string

Название персонажа.

image

object ( Image )

Изображения персонажа.

Тип

Тип символа.

Перечисления
TYPE_UNKNOWN Неизвестный тип.
ACTOR Актер.
PERFORMER Исполнитель.
DIRECTOR Директор.
ORGANIZER Организатор.

Пользователь

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

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

string

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

text

string

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

Следующая сцена

Представляет сцену, которая будет выполнена следующей.

JSON-представление
{
  "name": string
}
Поля
name

string

Имя сцены, которая будет выполняться следующей.

Сессия

Содержит информацию о текущем сеансе разговора

JSON-представление
{
  "id": string,
  "params": {
    string: value,
    ...
  },
  "typeOverrides": [
    {
      object (TypeOverride)
    }
  ],
  "languageCode": string
}
Поля
id

string

Необходимый. Глобальный уникальный идентификатор текущего сеанса разговора. Это поле доступно только для чтения.

params

map (key: string, value: value ( Value format))

Необходимый. Список всех параметров, собранных из форм и намерений во время сеанса. Ключ - это имя параметра. Определенные здесь параметры будут объединены с параметрами, уже определенными в сеансе. Параметры со значением null будут удалены из сеанса. См. Документация хранения сеанса: https://developers.google.com/assistant/conversational/storage-session .

Объект, содержащий список пар "key": value . Пример: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

typeOverrides[]

object ( TypeOverride )

Необязательный. Типы, ограниченные сеансом. Определения типа сеанса могут дополнять или заменять существующие типы. Имена типов должны быть уникальными.

languageCode

string

Язык текущего разговора. Следует за IETF BCP-47 языковым кодом http://www.rfc-editor.org/rfc/bcp/bcp47.txt . Это может отличаться от локализации пользователя, если действие использует многоязычные функции. Например, при установке Handler_response.expret.language_code, он меняет язык разговора для всех следующих поворотов, что будет отражено в этом поле.

Тип -защитник

Представляет собой переопределение для типа.

JSON-представление
{
  "name": string,
  "mode": enum (TypeOverrideMode),
  "synonym": {
    object (SynonymType)
  }
}
Поля
name

string

Необходимый. Название типа в дополнение или переопределение.

mode

enum ( TypeOverrideMode )

Необходимый. Как этот тип должен быть объединен с другими значениями типа.

synonym

object ( SynonymType )

TypeOverRideMode

Типы модификаций для типа сеанса.

Перечисления
TYPE_UNSPECIFIED Не указан. Это значение никогда не должно использоваться.
TYPE_REPLACE Определения типа в этом ответе заменит определения типа, которые были определены ранее.
TYPE_MERGE Определения типа в этом ответе будут объединены с определениями типа, которые были определены ранее. Определения новых типов будут перезаписать существующие определения типа.

Synonymtype

Представляет тип с синонимами.

JSON-представление
{
  "entries": [
    {
      object (Entry)
    }
  ]
}
Поля
entries[]

object ( Entry )

Необходимый. Список записей для типа синонима.

Вход

Представляет запись для типа синонима.

JSON-представление
{
  "name": string,
  "synonyms": [
    string
  ],
  "display": {
    object (EntryDisplay)
  }
}
Поля
name

string

Необходимый. Название записи (например, «Велосипед»). Запись в этом поле должна быть включена в поле повторяющихся синонимов, которое будет возвращено в качестве допустимого значения типа.

synonyms[]

string

Необходимый. Список синонимов для записи (например, «велосипед», «цикл»).

display

object ( EntryDisplay )

Необязательный. Информация отображения элемента.

IntryDisplay

JSON-представление
{
  "title": string,
  "description": string,
  "image": {
    object (Image)
  },
  "footer": string,
  "openUrl": {
    object (OpenUrl)
  }
}
Поля
title

string

Необходимый. Название предмета. При нажатии этот текст будет размещен в дословном разговоре, как будто пользователь напечатал его. Каждый заголовок должен быть уникальным среди набора предметов сбора.

description

string

Необязательный. Текст тела карты.

image

object ( Image )

Необязательный. Изображение для отображения.

footer

string

Необязательный. Текст нижнего колонтитула для элемента коллекции просмотра, отображаемой ниже описания. Одиночная линия текста, усеченная с эллипсисом.

openUrl

object ( OpenUrl )

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

Пользователь

Представляет пользователя, отправляющего запрос к действию.

JSON-представление
{
  "locale": string,
  "params": {
    string: value,
    ...
  },
  "accountLinkingStatus": enum (AccountLinkingStatus),
  "verificationStatus": enum (UserVerificationStatus),
  "lastSeenTime": string,
  "engagement": {
    object (Engagement)
  },
  "packageEntitlements": [
    {
      object (PackageEntitlements)
    }
  ],
  "permissions": [
    enum (Permission)
  ]
}
Поля
locale

string

Основная языковая настройка пользователя, делающего запрос. Следует за IETF BCP-47 языковым кодом http://www.rfc-editor.org/rfc/bcp/bcp47.txt . Тем не менее, подтаг сценария не включен.

params

map (key: string, value: value ( Value format))

Необязательный. Список всех параметров, связанных с текущим пользователем. См. Документация по хранению пользователя: https://developers.google.com/assistant/conversational/storage-user .

Объект, содержащий список пар "key": value . Пример: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

accountLinkingStatus

enum ( AccountLinkingStatus )

Связана ли учетная запись пользователя с приложением.

verificationStatus

enum ( UserVerificationStatus )

Указывает состояние проверки пользователя.

lastSeenTime

string ( Timestamp format)

TimeStamp последнего взаимодействия с этим пользователем. Это поле будет пропущено, если пользователь не взаимодействовал с агентом раньше.

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

engagement

object ( Engagement )

Взаимодействие текущего пользователя, включая любые подписки на намерения.

packageEntitlements[]

object ( PackageEntitlements )

Пользователи пользователя, связанные с пакетом Android, связанным с текущим действием.

permissions[]

enum ( Permission )

Содержит разрешения, предоставленные пользователем для этого действия.

AccountlingStatus

Указывает, связал ли конечный пользователь свою учетную запись с этим приложением. См. Связь с учетной записью документацию: https://developers.google.com/assistant/identity .

Перечисления
ACCOUNT_LINKING_STATUS_UNSPECIFIED Неизвестный.
NOT_LINKED Пользователь не связал свою учетную запись с этим приложением.
LINKED Пользователь связал свою учетную запись с этим приложением.

UserVerificationStatus

Указывает, проверил ли Google пользователя. Проверенный статус указывает, что вы можете сохранить данные по разговорам, используя поле Params или с связью с учетной записью.

Перечисления
USER_VERIFICATION_STATUS_UNSPECIFIED Неизвестный.
GUEST Гостевой пользователь.
VERIFIED Проверенный пользователь.

Обручение

Предоставляет дополнительную информацию только для чтения о том, какие механизмы взаимодействия зарегистрировали текущий пользователь. Например, может быть полезно знать, на что пользователь уже подписан, чтобы не попросить их снова подписаться на то же намерение. т.е. эта информация может быть использована для условного пути к сцене для настройки DailyUpdates или наставления, только если пользователь еще не подписался. См. Документация по вовлечению пользователей: https://developers.google.com/assistant/engagement .

JSON-представление
{
  "pushNotificationIntents": [
    {
      object (IntentSubscription)
    }
  ],
  "dailyUpdateIntents": [
    {
      object (IntentSubscription)
    }
  ]
}
Поля
pushNotificationIntents[]

object ( IntentSubscription )

Содержит список намерений, для которых пользователь включил уведомление PUSH.

dailyUpdateIntents[]

object ( IntentSubscription )

Содержит список намерений, для которых пользователь включил ежедневное обновление.

IntentsUbscription

Описывает существующую intentsUbscription.

JSON-представление
{
  "intent": string,
  "contentTitle": string
}
Поля
intent

string

Название намерения, которое подписано на.

contentTitle

string

Краткое описание подписки. Он используется в качестве метки уведомления и когда помощник запрашивает разрешение у пользователя.

PackageEntiTlements

Список прав пользователя, связанные с именем пакета. См. Digital Good Transaction Documentation: https://developers.google.com/assistant/transactions/digital/dev-guide-digital-non-consumbers .

JSON-представление
{
  "packageName": string,
  "entitlements": [
    {
      object (Entitlement)
    }
  ]
}
Поля
packageName

string

Имя пакета Android, указанное в пакете действий.

entitlements[]

object ( Entitlement )

Пользователи пользователя на данное пакет.

Право

Определяет цифровое право пользователя.

JSON-представление
{
  "sku": string,
  "skuType": enum (SkuType),
  "inAppDetails": {
    object (SignedData)
  }
}
Поля
sku

string

Продукт Sku. Название пакета для платного приложения, суффикс Finsky Docid для покупки в приложении и подписки на приложение. Матч GetSku () в игре API Billing API. См. Play Inapp Billing Documentation: https://developer.android.com/google/play/billing .

skuType

enum ( SkuType )

Тип Sku.

inAppDetails

object ( SignedData )

Присутствует только для покупки в приложении и подставки в приложении.

Скутип

Перечисления
SKU_TYPE_UNSPECIFIED
IN_APP Покупки в приложении
SUBSCRIPTION Подписки
APP Оплачиваемые приложения

SignedData

JSON-представление
{
  "inAppPurchaseData": {
    object
  },
  "inAppDataSignature": string
}
Поля
inAppPurchaseData

object ( Struct format)

Содержит все данные о покупке INAPP в формате JSON. См. Подробности в таблице 6 https://developer.android.com/google/play/billing/billing_reference.html .

inAppDataSignature

string

Сопоставления in_app_data_signature из метода getPurchasass () в игре API Billing Billing Inapp.

Разрешение

Возможные значения для разрешения.

Перечисления
PERMISSION_UNSPECIFIED Неопределенное разрешение.
DEVICE_PRECISE_LOCATION Попросите точное местоположение пользователя, широту/долготу и форматированный адрес.
DEVICE_COARSE_LOCATION Попросите грубое местоположение пользователя, почтовый индекс, город и код страны.
UPDATE Попросите разрешения на отправку обновлений. См. Https://developers.google.com/assistant/engagement/daily .

Дом

Представляет структуру домашних графов, к которой принадлежит целевое устройство пользователя.

JSON-представление
{
  "params": {
    string: value,
    ...
  }
}
Поля
params

map (key: string, value: value ( Value format))

Необязательный. Список параметров, связанных со структурой домашнего графа, к которому принадлежит целевое устройство. См. Документация по домашнему хранилищу: https://developers.google.com/assistant/conversational/storage-home .

Объект, содержащий список пар "key": value . Пример: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

Устройство

Представляет устройство, которое пользователь использует, чтобы сделать запрос на действие.

JSON-представление
{
  "capabilities": [
    enum (Capability)
  ],
  "currentLocation": {
    object (Location)
  },
  "timeZone": {
    object (TimeZone)
  }
}
Поля
capabilities[]

enum ( Capability )

Необходимый. возможности устройства, делающего запрос к Действию.

currentLocation

object ( Location )

Необязательный. Местоположение устройства пользователя. Обратите внимание, что это заполнено только после того, как разрешения на местоположение предоставляются конечным пользователем. Смотрите сообщение о местоположении для получения более подробной информации о том, какие поля установлены в зависимости от грубого и мелкозернистого разрешения. См. Документация по разрешениям: https://developers.google.com/assistant/conversational/permissions .

timeZone

object ( TimeZone )

Необязательный. Часовой застрой, связанный с клиентским устройством. Это может быть использовано для разрешения значений DateTime.

Способность

Возможности поверхности устройства поддерживают во время запроса.

Перечисления
UNSPECIFIED Неопределенная возможность устройства.
SPEECH Устройство может поговорить с пользователем через текст в речь или SSML.
RICH_RESPONSE Устройство может отображать богатые ответы, такие как карты, списки и таблицы.
LONG_FORM_AUDIO Устройство может воспроизводить Audio Media Long Form, такие как музыка и подкасты.
INTERACTIVE_CANVAS Устройство может отображать интерактивный ответ на холсте.
HOME_STORAGE Устройство может поддерживать сохранение и привлечение домашнего хранения.

Расположение

Контейнер, который представляет местоположение.

JSON-представление
{
  "coordinates": {
    object (LatLng)
  },
  "postalAddress": {
    object (PostalAddress)
  }
}
Поля
coordinates

object ( LatLng )

Гео координаты. Требуется разрешение [device_precise_location].

postalAddress

object ( PostalAddress )

Почтовый адрес. Требуется разрешение [device_precise_location] или [device_coarse_location]. Когда разрешение грубого местоположения предоставляется, ожидается, что только поля «почтового кода» и «местность» будут заполнены. Точное разрешение на местоположение будет заполнять дополнительные поля, такие как «AdministiveArea» и «Addresslines».

Часовой пояс

Представляет часовой пояс из базы данных IANA Time Roze .

JSON-представление
{
  "id": string,
  "version": string
}
Поля
id

string

IANA TOME RATY BASTABASE TOCE ROONE, например, "America/new_york".

version

string

Необязательный. Номер версии базы данных IANA Time Roye, например, «2019a».

Контекст

Содержит контекстную информацию, когда пользователь делает запрос. Такой контекст включает, но не ограничивается информацией о активном сеансе медиа, современном веб -приложении и т. Д.

JSON-представление
{
  "media": {
    object (MediaContext)
  },
  "canvas": {
    object (CanvasContext)
  }
}
Поля
media

object ( MediaContext )

Содержит контекстную информацию о текущем сеансе активного медиа.

canvas

object ( CanvasContext )

Содержит контекстную информацию о текущем холсте.

MediaContext

Содержит контекстную информацию о текущем сеансе активного медиа.

JSON-представление
{
  "progress": string,
  "index": integer
}
Поля
progress

string ( Duration format)

Прогресс средств массовой информации текущего активного медиа -файла.

Продолжительность за секунды с девятью дробными цифрами, завершенная « s ». Пример: "3.5s" .

index

integer

0 Индекс текущего активного медиа-файла в списке медиа-файлов в ответе на медиа.

Canvascontext

Содержит контекстную информацию о текущем холсте.

JSON-представление
{
  "state": value
}
Поля
state

value ( Value format)

Необязательный. Состояние установлено 3P Interactive Canvas App. Это установлено только для запроса, а не для ответа. Например, если это приложение рецепта, состояние может быть значением struct: {"current_page": 5, "last_page": 3,} Предел размера составляет 50 КБ.

Ожидал

Описывает ожидания для следующего поворота диалога.

JSON-представление
{
  "speech": [
    string
  ]
}
Поля
speech[]

string

Список фраз, которые действие ожидает от высказывания пользователя для смещения речи. Допускается до 1000 фраз. Примечание. Это поле имеет то же значение, что и wealdinput.speech_biasing_hints в API V2.