- HTTP 要求
- 要求主體
- 回應主體
- Handler
- 意圖
- IntentParameterValue
- 情境
- SlotFillingStatus
- 版位
- SlotMode
- SlotStatus
- 提示
- 簡單
- 內容
- 資訊卡
- 圖片
- ImageFill
- 連結
- OpenUrl
- UrlHint
- 表格
- TableColumn
- HorizontalAlignment
- TableRow
- TableCell
- 媒體
- MediaType
- OptionalMediaControls
- MediaObject
- MediaImage
- RepeatMode
- 集合
- CollectionItem
- 清單
- ListItem
- CollectionBrowse
- 項目
- 建議
- 畫布
- ContinuousMatchConfig
- ExpectedPhrase
- OrderUpdate
- 類型
- 訂單
- UserInfo
- PhoneNumber
- 圖片
- 商家
- Location
- LatLng
- PostalAddress
- 目錄
- LineItem
- PriceAttribute
- 類型
- 狀態
- 金額
- 動作
- 類型
- OpenUrlAction
- AndroidApp
- VersionFilter
- UrlTypeHint
- ActionMetadata
- 揭露聲明
- DisclosureText
- TextLink
- DisclosurePresentationOptions
- PresentationRequirement
- PurchaseItemExtension
- PurchaseStatus
- PurchaseType
- MerchantUnitMeasure
- 單位
- PurchaseReturnsInfo
- PurchaseFulfillmentInfo
- 類型
- 時間
- PickupInfo
- PickupType
- CurbsideInfo
- CurbsideFulfillmentType
- 車輛
- CheckInInfo
- CheckInType
- ItemOption
- ProductDetails
- ReservationItemExtension
- ReservationStatus
- ReservationType
- StaffFacilitator
- PaymentData
- PaymentResult
- PaymentInfo
- PaymentMethodDisplayInfo
- PaymentType
- PaymentMethodProvenance
- 促銷活動
- PurchaseOrderExtension
- PurchaseLocationType
- PurchaseError
- ErrorType
- TicketOrderExtension
- TicketEvent
- 類型
- EventCharacter
- 類型
- UserNotification
- NextScene
- 工作階段
- TypeOverride
- TypeOverrideMode
- SynonymType
- 項目
- EntryDisplay
- 使用者
- AccountLinkingStatus
- UserVerificationStatus
- 參與
- IntentSubscription
- PackageEntitlements
- 授權
- SkuType
- SignedData
- 權限
- 首頁
- 裝置
- 功能
- Location
- TimeZone
- 背景資訊
- MediaContext
- CanvasContext
- 預計推出時間
遠端程序呼叫,代表執行要求 API
HTTP 要求
POST https://webhook_handler_service.googleapis.com/fulfill
這個網址使用 gRPC 轉碼語法。
要求主體
要求主體的資料會採用以下結構:
JSON 表示法 | |
---|---|
{ "handler": { object ( |
欄位 | |
---|---|
handler |
必要欄位。處理要求方式的執行要求資訊。舉例來說,如果要求意圖取得事實,則可設定處理常式名稱為「getFact」。 |
intent |
必要欄位。代表最後一個相符的意圖。請參閱 https://developers.google.com/assistant/conversational/intents。 |
scene |
選用設定。呼叫函式時,目前和下一個場景的資訊。如果在場景範圍內發出執行要求呼叫,系統就會填入內容。詳情請參閱 https://developers.google.com/assistant/conversational/scenes。 |
session |
必要欄位。保留工作階段資料,例如工作階段 ID 和工作階段參數。 |
user |
必要欄位。發起對話的使用者。 |
home |
選用設定。目標裝置所屬的 HomeGraph 結構相關資訊。詳情請參閱 https://developers.google.com/actions/smarthome/concepts/homegraph。 |
device |
必要欄位。使用者在與動作互動時使用的裝置上資訊。 |
context |
選用設定。要求目前內容的資訊。包括 (但不限於) 有效的媒體工作階段資訊或無框畫資訊。 |
回應主體
如果成功,回應主體即會包含具有以下結構的資料:
代表從開發人員執行要求傳送至 Actions on Google 的回應。
JSON 表示法 | |
---|---|
{ "prompt": { object ( |
欄位 | |
---|---|
prompt |
選用設定。代表要傳送給使用者的提示,這些提示會附加至先前新增的郵件 (除非明確覆寫)。 |
scene |
選用設定。代表目前和下一個場景。如果設定了 |
session |
選用設定。說明目前工作階段的資料、可由執行要求建立、更新或移除工作階段參數。 |
user |
選用設定。用來指定要傳回的使用者參數。 |
home |
選用設定。用於指定目標裝置所屬的 HomeGraph 結構相關參數。詳情請參閱 https://developers.google.com/actions/smarthome/concepts/homegraph。 |
device |
選用設定。用於在使用者有權存取的 Google 助理裝置之間移動。 |
expected |
選用設定。說明下一個對話轉彎的預期目標。 |
Handler
代表執行要求處理常式,可將 Actions on Google 的事件資訊對應至執行要求。使用處理常式名稱來決定您應該在執行要求中執行的程式碼。舉例來說,處理常式可透過「OrderLookup」這類處理常式名稱取得使用者訂單資訊的相關資訊,另一個則可能會透過處理常式名稱 (例如「GetProductInfo」) 從資料庫取得產品資訊。
JSON 表示法 | |
---|---|
{ "name": string } |
欄位 | |
---|---|
name |
選用設定。處理常式的名稱。 |
意願
代表意圖。請參閱 https://developers.google.com/assistant/conversational/intents。
JSON 表示法 | |
---|---|
{
"name": string,
"params": {
string: {
object ( |
欄位 | |
---|---|
name |
必要欄位。最後一個相符意圖的名稱。 |
params |
必要欄位。代表識別為意圖比對過程中的參數。這是將已識別參數的名稱對應到使用者輸入內容所識別參數值的對應。已在相符意圖中定義的所有參數會顯示在這裡。 這個物件中包含 |
query |
選用設定。使用者輸入或說出符合這項意圖的輸入內容。比對符合使用者輸入內容的意圖時,系統就會填入這項資訊。 |
IntentParameterValue
代表意圖參數的值。請參閱 https://developers.google.com/assistant/conversational/types。
JSON 表示法 | |
---|---|
{ "original": string, "resolved": value } |
欄位 | |
---|---|
original |
必要欄位。從使用者話語中擷取的原始文字值。 |
resolved |
必要欄位。從使用者輸入內容中擷取的參數結構化值。只有在相符意圖中已定義參數,而且在比對意圖時可以識別參數值,系統才會填入這個值。 |
Scene
代表場景。場景可以呼叫執行要求、新增提示,並向使用者收集運算單元值。場景是由事件或意圖觸發,可以觸發事件並比對意圖,以便轉換至其他場景。
JSON 表示法 | |
---|---|
{ "name": string, "slotFillingStatus": enum ( |
欄位 | |
---|---|
name |
必要欄位。目前場景的名稱。 |
slotFillingStatus |
必要欄位。目前的運算單元填充狀態。這是唯讀欄位。 |
slots |
與目前場景相關聯的版位。處理常式回應無法傳回要求中未傳送的運算單元。 這個物件中包含 |
next |
選用設定。要執行的場景資訊。 |
SlotFillingStatus
代表運算單元填充目前的狀態。
列舉 | |
---|---|
UNSPECIFIED |
使用情況欄位未填入時的備用值。 |
INITIALIZED |
運算單元已初始化,但尚未開始運算單元填充。 |
COLLECTING |
正在收集運算單元值。 |
FINAL |
所有版位值皆為最終值且無法變更。 |
運算單元
代表版位。
JSON 表示法 | |
---|---|
{ "mode": enum ( |
欄位 | |
---|---|
mode |
運算單元的模式 (必要或選用)。可由開發人員設定。 |
status |
版位的狀態。 |
value |
運算單元的值。變更回應中的這個值將會修改運算單元填充中的值。 |
updated |
指出是否在上次轉彎時收集版位值。這是唯讀欄位。 |
prompt |
選用設定。需要填滿時段時,系統就會向使用者顯示這項提示。這項提示會覆寫控制台中定義的現有提示。這個欄位不包含在 Webhook 要求中。 |
SlotMode
代表版位的模式,即必要時或不需要。
列舉 | |
---|---|
MODE_UNSPECIFIED |
使用情況欄位未填入時的備用值。 |
OPTIONAL |
表示版位不需要完成運算單元填充。 |
REQUIRED |
表示版位需要完成運算單元填充。 |
SlotStatus
代表版位的狀態。
列舉 | |
---|---|
SLOT_UNSPECIFIED |
使用情況欄位未填入時的備用值。 |
EMPTY |
表示版位沒有任何值。這個狀態無法透過回應修改。 |
INVALID |
表示版位值無效。您可以透過回應設定這個狀態。 |
FILLED |
表示版位有值。這個狀態無法透過回應修改。 |
Prompt
代表使用者的回應。詳情請參閱 https://developers.google.com/assistant/conversational/prompts。
JSON 表示法 | |
---|---|
{ "override": boolean, "firstSimple": { object ( |
欄位 | |
---|---|
override |
選用設定。這個模式用於將這則訊息與先前定義的訊息合併。如果設為「true」,系統會清除先前定義的所有訊息 (第一個和最後一則簡單的內容、內容、建議連結和畫布),並新增這個提示中定義的訊息。「false」會將這個提示中定義的訊息新增至先前回應中定義的訊息。如果將這個欄位設為「false」,也可以將這個欄位附加至簡易提示、建議提示和 Canvas 提示 (屬於「內容」提示) 中的某些欄位。如果在提示中定義了內容和連結訊息,系統一律會覆寫訊息和連結訊息。預設值為「false」。 |
firstSimple |
選用設定。第一個語音和純文字回應。 |
content |
選用設定。要向使用者顯示的資訊卡、清單或媒體等內容。 |
lastSimple |
選用設定。最後一個語音和純文字回應。 |
suggestions[] |
選用設定。向使用者顯示的建議,且一律會顯示在回應結尾。如果內含提示的「覆寫」欄位為「false」,這個欄位中定義的標題會加到任何先前定義的建議提示中所定義的標題,重複的值會遭到移除。 |
link |
選用設定。可連結至相關聯應用程式或網站的額外建議方塊。方塊會隨即顯示,標題為「開啟 (名稱)」。最多 20 個半形字元。 |
canvas |
選用設定。代表要傳送給使用者的互動式畫布回應。 |
orderUpdate |
選填動作在交易流程中收到訂單後回應 OrderUpdate。收到這些資訊後,Google 會記錄這筆訂單的更新,如果成功,在顯示裝置上一併顯示收據卡和文字轉語音。 |
簡單易用
代表要傳送給使用者的簡單提示。詳情請參閱 https://developers.google.com/assistant/conversational/prompts-simple。
JSON 表示法 | |
---|---|
{ "speech": string, "text": string } |
欄位 | |
---|---|
speech |
選用設定。代表要向使用者顯示的語音。可以是 SSML 或文字轉語音。如果內含提示的「覆寫」欄位為「true」,則這個欄位中定義的語音會取代前一個簡單提示的語音。詳情請參閱 https://developers.google.com/assistant/conversational/ssml。 |
text |
顯示在即時通訊泡泡中的選填文字。如未指定,系統會使用上述的語音欄位顯示內容。最長不得超過 640 個半形字元。如果內含提示中的「覆寫」欄位為「true」,這個欄位中定義的文字就會取代為先前簡單提示的文字。 |
內容
用於複合式提示或選項提示的容器物件。
JSON 表示法 | |
---|---|
{ // Union field |
欄位 | ||
---|---|---|
聯集欄位
|
||
card |
基本資訊卡。 |
|
image |
圖片。 |
|
table |
表格資訊卡。 |
|
media |
回應指出要播放的媒體組合。 |
|
collection |
資訊卡顯示一系列選項。 |
|
list |
資訊卡:列出可供選擇的選項。 |
|
collectionBrowse |
資訊卡顯示一系列要開啟的網頁。 |
資訊卡
顯示部分資訊的基本資訊卡,例如圖片和/或文字。請參閱 https://developers.google.com/assistant/conversational/prompts-rich#basic_card。
JSON 表示法 | |
---|---|
{ "title": string, "subtitle": string, "text": string, "image": { object ( |
欄位 | |
---|---|
title |
資訊卡的總標題。選用。 |
subtitle |
選用。 |
text |
資訊卡的內文。支援有限的 Markdown 語法組合。除非有圖片,否則此為必要項目。 |
image |
資訊卡的主頁橫幅。高度固定為 192dp。選用。 |
imageFill |
圖片背景的填滿方式。選用。 |
button |
含有外連連結的按鈕。選用。 |
映像檔
資訊卡中顯示的圖片。詳情請參閱 https://developers.google.com/assistant/conversational/prompts-rich#image-cards。
JSON 表示法 | |
---|---|
{ "url": string, "alt": string, "height": integer, "width": integer } |
欄位 | |
---|---|
url |
圖片的來源網址。圖片可以是 JPG、PNG 和 GIF (動畫和非動畫)。例如: |
alt |
圖片的文字說明,供無障礙功能使用,例如螢幕閱讀器。這是必填欄位。 |
height |
圖片的高度 (以像素為單位)。選用。 |
width |
圖片的寬度 (以像素為單位)。選用。 |
ImageFill
影響圖片呈現方式的可能圖片顯示選項。如果圖片的長寬比與圖片容器的長寬比不符,則應使用這個屬性。
列舉 | |
---|---|
UNSPECIFIED |
|
GRAY |
使用灰色長條填補圖片和圖片容器之間的間距。 |
WHITE |
使用白色長條填滿圖片和圖片容器之間的間距。 |
CROPPED |
圖片經過縮放,使圖片寬度和高度符合或超過容器尺寸。如果縮放後的圖片高度大於容器高度,這可能會裁剪圖片的頂端和底部;如果縮放後的圖片寬度大於容器寬度,則裁剪圖片的左側和右側。這與寬螢幕電視上播放 4:3 影片時的「縮放模式」類似。 |
連結
可連結至相關聯應用程式或網站的額外建議方塊。方塊會隨即顯示,標題為「開啟 (名稱)」。
JSON 表示法 | |
---|---|
{
"name": string,
"open": {
object ( |
欄位 | |
---|---|
name |
連結名稱。最多 20 個半形字元。 |
open |
使用者開啟連結後會發生什麼事 |
OpenUrl
JSON 表示法 | |
---|---|
{
"url": string,
"hint": enum ( |
欄位 | |
---|---|
url |
網址欄位,可以是下列任一值:- 用來開啟應用程式連結應用程式或網頁的 http/https 網址 |
hint |
表示網址類型的提示。 |
UrlHint
不同類型的網址提示。
列舉 | |
---|---|
LINK_UNSPECIFIED |
未指定 |
AMP |
直接指向 AMP 內容的網址,或是透過 參照 AMP 內容的標準網址。詳情請參閱 https://amp.dev/。 |
資料表
顯示文字表格的表格資訊卡。詳情請參閱 https://developers.google.com/assistant/conversational/prompts-rich#table_cards。
JSON 表示法 | |
---|---|
{ "title": string, "subtitle": string, "image": { object ( |
欄位 | |
---|---|
title |
表格的整體標題。選用;如果設定字幕,則必須設定此項目。 |
subtitle |
資料表的副標題。選用。 |
image |
與表格相關聯的圖片。選用。 |
columns[] |
資料欄的標頭和對齊方式。 |
rows[] |
資料表的資料列資料。前 3 列一定會顯示,但其他內容可能會在特定介面上顯示。請使用模擬工具進行測試,瞭解特定介面會顯示哪些資料列。在支援 WEB_BROWSER 功能的介面上,您可以將使用者導向含有更多資料的網頁。 |
button |
按鈕。 |
TableColumn
JSON 表示法 | |
---|---|
{
"header": string,
"align": enum ( |
欄位 | |
---|---|
header |
資料欄的標題文字。 |
align |
內容 w.r.t 欄的水平對齊。如未指定,內容則會與頂部邊緣對齊。 |
HorizontalAlignment
儲存格內內容的對齊方式。
列舉 | |
---|---|
UNSPECIFIED |
|
LEADING |
儲存格的前端邊緣。此為預設值。 |
CENTER |
內容會與欄中央對齊。 |
TRAILING |
內容與資料欄的結尾邊緣對齊。 |
TableRow
說明資料表中的資料列。
JSON 表示法 | |
---|---|
{
"cells": [
{
object ( |
欄位 | |
---|---|
cells[] |
此列的儲存格。我們保證顯示前 3 個儲存格,但其他儲存格可能會截斷。請使用模擬器進行測試,看看在特定表面會顯示哪些儲存格。 |
divider |
指出每一列後是否應有分隔線。 |
TableCell
說明資料列中的儲存格。
JSON 表示法 | |
---|---|
{ "text": string } |
欄位 | |
---|---|
text |
儲存格的文字內容。 |
媒體
代表一個媒體物件。包含媒體相關資訊,例如名稱、說明、網址等。請參閱 https://developers.google.com/assistant/conversational/prompts-media。
JSON 表示法 | |
---|---|
{ "mediaType": enum ( |
欄位 | |
---|---|
mediaType |
|
startOffset |
第一個媒體物件的開始偏移。 時間長度以秒為單位,最多可有 9 個小數位數,並應以「 |
optionalMediaControls[] |
這個媒體回應工作階段可支援的選用媒體控制項類型。如果設定這個項目,系統會在特定媒體事件發生時向 3p 發出要求。如果未設定,3p 仍必須處理兩個預設控制項類型「FINISHED」和「FAILED」。 |
mediaObjects[] |
媒體物件清單 |
repeatMode |
針對媒體物件清單重複模式。 |
firstMediaObjectIndex |
要播放的第一個媒體物件中,從 0 開始的索引。如未指定,即零或超出範圍,系統會從 mediaObjects 的第一個媒體物件開始播放。 |
MediaType
此回應的媒體類型。
列舉 | |
---|---|
MEDIA_TYPE_UNSPECIFIED |
|
AUDIO |
音訊檔案。 |
MEDIA_STATUS_ACK |
回覆確認媒體狀態報告的回應。 |
OptionalMediaControls
媒體回應支援的選用媒體控制項類型
列舉 | |
---|---|
OPTIONAL_MEDIA_CONTROLS_UNSPECIFIED |
未指定的值 |
PAUSED |
已暫停活動在使用者暫停媒體時觸發。 |
STOPPED |
已停止事件。使用者在媒體播放期間退出 3p 工作階段時觸發。 |
MediaObject
代表單一媒體物件
JSON 表示法 | |
---|---|
{
"name": string,
"description": string,
"url": string,
"image": {
object ( |
欄位 | |
---|---|
name |
此媒體物件的名稱。 |
description |
此媒體物件的說明。 |
url |
指向媒體內容的網址。MP3 檔案必須由網路伺服器代管,並透過 HTTPS 網址公開存取。直播功能僅支援 MP3 格式。 |
image |
與媒體資訊卡一起顯示的圖片。 |
MediaImage
JSON 表示法 | |
---|---|
{ // Union field |
欄位 | ||
---|---|---|
聯集欄位
|
||
large |
大型圖片,例如相簿封面等。 |
|
icon |
顯示在標題右側的小型圖片圖示。大小已調整為 36x36 dp。 |
RepeatMode
媒體物件清單的重複模式類型。
列舉 | |
---|---|
REPEAT_MODE_UNSPECIFIED |
等同於「關閉」。 |
OFF |
在最後一個媒體物件結束時結束媒體工作階段。 |
ALL |
播放到最後一個媒體物件結尾時,循環播放第一個媒體物件的開頭。 |
集合
顯示一系列選項的資訊卡。詳情請參閱 https://developers.google.com/assistant/conversational/prompts-selection#collection
JSON 表示法 | |
---|---|
{ "title": string, "subtitle": string, "items": [ { object ( |
欄位 | |
---|---|
title |
珍藏內容的名稱。選用。 |
subtitle |
「系列」的副標題。選用。 |
items[] |
項目清單。最短 2,最多 10。 |
imageFill |
如何填入集合項目的圖片背景。選用。 |
CollectionItem
集合中的一個項目
JSON 表示法 | |
---|---|
{ "key": string } |
欄位 | |
---|---|
key |
必要欄位。與相關類型中項目鍵名稱相符的 NLU 鍵。 |
清單
顯示選項清單的資訊卡。詳情請參閱 https://developers.google.com/assistant/conversational/prompts-selection#list
JSON 表示法 | |
---|---|
{
"title": string,
"subtitle": string,
"items": [
{
object ( |
欄位 | |
---|---|
title |
清單的標題。選用。 |
subtitle |
清單子標題。選用。 |
items[] |
項目清單。最短 2,最多 30。 |
ListItem
清單中的項目
JSON 表示法 | |
---|---|
{ "key": string } |
欄位 | |
---|---|
key |
必要欄位。與相關類型中項目鍵名稱相符的 NLU 鍵。 |
CollectionBrowse
將一組網頁文件呈現為一系列大型圖塊項目。可選取項目,以便在網頁檢視器中開啟其相關聯的網路文件。請參閱 https://developers.google.com/assistant/conversational/prompts-selection#collectionBrowse。
JSON 表示法 | |
---|---|
{ "items": [ { object ( |
欄位 | |
---|---|
items[] |
項目清單。最短 2,最多 10。 |
imageFill |
圖片顯示選項類型。 |
項目
集合中的項目。
JSON 表示法 | |
---|---|
{ "title": string, "description": string, "footer": string, "image": { object ( |
欄位 | |
---|---|
title |
必要欄位。系列作品的名稱。 |
description |
集合項目的說明。 |
footer |
產品素材資源集合項目的頁尾文字,顯示在說明下方。單行文字,以刪節號截斷。 |
image |
產品素材資源集合項目的圖片。 |
openUriAction |
必要欄位。選取項目時要開啟的 URI。 |
建議
在支援螢幕的裝置上,Google 助理會在顯示提示時為使用者提供建議方塊。使用建議方塊給予使用者回應提示,以便繼續對話或調整對話內容。輕觸建議方塊後,系統會將顯示的文字傳回對話,就像使用者輸入內容一樣。詳情請參閱 https://developers.google.com/assistant/conversational/prompts#suggestions。
JSON 表示法 | |
---|---|
{ "title": string } |
欄位 | |
---|---|
title |
必要欄位。建議方塊中顯示的文字。使用者輕觸這段文字後,系統會將其內容張貼回對話,就像使用者輸入內容一樣。所有標題在一組建議方塊中都不得重複。最多 25 個字元 |
Canvas
代表要傳送給使用者的互動式畫布回應。除了顯示互動式畫布回應外,這段標記也可與內含提示中的「firstSimple」欄位搭配使用,讓使用者發言。回應的大小上限為 50,000 個位元組。請參閱 https://developers.google.com/assistant/interactivecanvas。
JSON 表示法 | |
---|---|
{
"url": string,
"data": [
value
],
"suppressMic": boolean,
"continuousMatchConfig": {
object ( |
欄位 | |
---|---|
url |
要載入的互動式畫布網頁應用程式網址。如未設定,系統會重複使用目前使用中畫布的網址。 |
data[] |
選用設定。要以事件的形式傳遞至沉浸式體驗網頁的 JSON 資料。如果內含提示的「覆寫」欄位是這個 Canvas 提示中定義的資料值,則系統會將先前 Canvas 提示中定義的資料值加到後方。 |
suppressMic |
選用設定。預設值為 false。 |
continuousMatchConfig |
用於啟動連續比對模式的設定。 |
ContinuousMatchConfig
用於啟動連續比對模式的設定。
JSON 表示法 | |
---|---|
{
"expectedPhrases": [
{
object ( |
欄位 | |
---|---|
expectedPhrases[] |
在這個連續比對模式工作階段期間,所有可能的預期詞組。 |
durationSeconds |
讓連續比對模式保持開啟的時間長度。若指定,麥克風就會在時間結束時關閉。系統允許的最大值為 180。 |
ExpectedPhrase
JSON 表示法 | |
---|---|
{ "phrase": string, "alternativePhrases": [ string ] } |
欄位 | |
---|---|
phrase |
「連續比對模式」工作階段期間要比對的詞組。 |
alternativePhrases[] |
即使語音自訂調整功能,語音模型可能無法辨識某些詞組。如此一來,開發人員就能指定同音產品的替代觸發條件。 |
OrderUpdate
更新訂單。
JSON 表示法 | |
---|---|
{ "type": enum ( |
欄位 | |
---|---|
type |
已淘汰:請改用 OrderUpdate.update_mask。如果類型 = SNAPSHOT,則 OrderUpdate.order 應為整筆訂單。如果類型 = ORDER_STATUS,則會變更訂單層級狀態。只會擷取 order.last_update_time 和此產業狀態。注意:type.ORDER_STATUS 僅支援 PurcahaseOrderExtension 狀態更新,因此目前並未打算延長這項支援。我們建議改用 updateMask,因為其功能較為廣泛、具擴充性,且適用於所有產業。 |
order |
|
updateMask |
注意:以下特別欄位應考量/建議:1. order.last_update_time 會在更新要求中一律更新。2. order.create_time、order.google_order_id 和 order.merchant_order_id,若在 updateMask 中提供,則系統會忽略。 此為以半形逗號分隔的完整欄位名稱清單。範例: |
userNotification |
如果有指定,系統會向使用者顯示指定標題和文字的通知。指定通知是建議通知,不保證一定會收到通知。 |
reason |
變更/更新的原因。 |
類型
已淘汰:請改用 OrderUpdate.update_mask。允許更新訂單。
列舉 | |
---|---|
TYPE_UNSPECIFIED |
未指定類型,不應明確設定這個屬性。 |
ORDER_STATUS |
僅更新訂單狀態。 |
SNAPSHOT |
更新訂單數據匯報。 |
訂購
訂單實體。注意:1. 除非另有指定,所有層級的所有字串都必須少於 1000 個半形字元。2. 除非另有指定,否則所有層級的所有重複欄位計數都必須少於 50。3. 如有指定,所有層級的所有時間戳記都必須是有效的時間戳記。
JSON 表示法 | |
---|---|
{ "googleOrderId": string, "merchantOrderId": string, "userVisibleOrderId": string, "userVisibleStateLabel": string, "buyerInfo": { object ( |
欄位 | ||
---|---|---|
googleOrderId |
Google 指派的訂單 ID。 |
|
merchantOrderId |
必填:商家指派的內部訂單 ID。此 ID 不得重複,而且是後續的訂單更新作業時必填。這個 ID 可以設為提供的 googleOrderId 或任何其他不重複的值。請注意,向使用者顯示的 ID 是 userVisibleOrderId,可能是另一個更易於使用的值。長度上限為 128 個半形字元。 |
|
userVisibleOrderId |
參照目前訂單的使用者專屬 ID。在網站、應用程式和電子郵件等其他情況下,這個 ID 應與此訂單顯示的 ID 保持一致。 |
|
userVisibleStateLabel |
已淘汰:請改用 OrderExtensions 狀態。此訂單狀態的使用者可見標籤。 |
|
buyerInfo |
買家相關資訊。 |
|
image |
與訂單相關聯的圖片。 |
|
createTime |
必填:訂單建立的日期和時間。 RFC3339 世界標準時間「Zulu」格式的時間戳記,採用奈秒解析度,且最多 9 個小數位數。範例: |
|
lastUpdateTime |
上次更新訂單的日期和時間。此為 OrderUpdate 必填屬性。 RFC3339 世界標準時間「Zulu」格式的時間戳記,採用奈秒解析度,且最多 9 個小數位數。範例: |
|
transactionMerchant |
協助結帳的商家。這可能與委刊項層級供應商設定不同。例如:帶有 ANA 委刊項的「Expedia Order」。 |
|
contents |
必要:排序一組委刊項的內容。 |
|
priceAttributes[] |
價格、折扣、稅金等。 |
|
followUpActions[] |
依訂單層級的後續追蹤動作。 |
|
paymentData |
訂單的付款相關資料。 |
|
termsOfServiceUrl |
訂單/提案適用的服務條款連結。 |
|
note |
訂單附加的附註。 |
|
promotions[] |
與這筆訂單相關聯的所有促銷活動。 |
|
disclosures[] |
與這筆訂單相關的揭露事項。 |
|
vertical |
已淘汰:請改用產業。除非在某些委刊項中覆寫設定,否則這些屬性會套用至所有委刊項。這個產業必須與委刊項層級產業類型相符。可能的值: 包含任意類型欄位的物件。額外的 |
|
聯集欄位 verticals 。除非在某些委刊項中覆寫設定,否則這些屬性會套用至所有委刊項。這個產業必須與委刊項層級產業類型相符。verticals 只能是下列其中一項: |
||
purchase |
訂購單 |
|
ticket |
票券訂單 |
UserInfo
使用者的相關資訊。用來代表與訂單相關聯的使用者資訊。
JSON 表示法 | |
---|---|
{
"email": string,
"firstName": string,
"lastName": string,
"displayName": string,
"phoneNumbers": [
{
object ( |
欄位 | |
---|---|
email |
使用者電子郵件,例如:janedoe@gmail.com。 |
firstName |
使用者的名字。 |
lastName |
使用者的姓氏。 |
displayName |
使用者的顯示名稱可能與姓氏或名字不同。 |
phoneNumbers[] |
使用者的電話號碼。 |
PhoneNumber
標準電話號碼表示法。
JSON 表示法 | |
---|---|
{ "e164PhoneNumber": string, "extension": string, "preferredDomesticCarrierCode": string } |
欄位 | |
---|---|
e164PhoneNumber |
如為國際電信聯盟 (ITU) Recommendation E.164 所定義的 E.164 電話號碼。維基連結:https://en.wikipedia.org/wiki/E.164 |
extension |
ITU 建議的延伸類型並非標準化,除了可定義為長度最多 40 位數的一組數字之外。定義為字串,為了能在延伸模組中使用開頭的零 (因為沒有定義標準,組織可完全自由執行這類動作)。除了數字以外,「,」(代表等候) 等其他撥號字元可能會儲存在這裡。例如,在 xxx-xxx-xxxx ext. 123 中,「123」是副檔名。 |
preferredDomesticCarrierCode |
撥打這個電話號碼時建議使用的電信業者選擇代碼。此外,在某些國家/地區,從市話或手機撥打時,也必須撥打該號碼 (反之亦然)。舉例來說,在哥倫比亞地區,從手機撥打國內市內電話時,必須先撥打「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 |
圖片的來源網址。圖片可以是 JPG、PNG 和 GIF (動畫和非動畫)。例如: |
accessibilityText |
圖片的文字說明,供無障礙功能使用,例如螢幕閱讀器。這是必填欄位。 |
height |
圖片的高度 (以像素為單位)。選用。 |
width |
圖片的寬度 (以像素為單位)。選用。 |
商家
購物車/訂單/明細項目的商家。
JSON 表示法 | |
---|---|
{ "id": string, "name": string, "image": { object ( |
欄位 | |
---|---|
id |
指派給商家的選用 ID (如有)。 |
name |
商家名稱,例如「烤麵包機」。 |
image |
與商家相關聯的圖片。 |
phoneNumbers[] |
商家的電話號碼。 |
address |
商家地址。 |
位置
代表位置的容器。
JSON 表示法 | |
---|---|
{ "coordinates": { object ( |
欄位 | |
---|---|
coordinates |
地理座標。需要以下權限:[DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION]。 |
formattedAddress |
顯示地址,例如「110 臺北市信義區信義路 5 段 7 號」需要以下權限:[DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION]。 |
zipCode |
郵遞區號。必須具備 [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] 或 [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION] 權限。 |
city |
市區鄉鎮。必須具備 [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] 或 [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION] 權限。 |
postalAddress |
郵政地址:必須具備 [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] 或 [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION] 權限。 |
name |
地點的名稱。 |
phoneNumber |
營業地點的電話號碼,例如商家所在地點的聯絡電話或送貨地點的電話號碼。 |
notes |
地點相關附註。 |
placeId |
placeId 可與 Places API 搭配使用,以擷取地點的詳細資料。詳情請參閱 https://developers.google.com/places/web-service/place-id |
LatLng
代表經緯度組合的物件。以一對雙精準數表示經度度數和緯度度數。除非另有指定,否則這個物件必須符合 WGS84 標準。此外,值必須在正規化範圍內。
JSON 表示法 | |
---|---|
{ "latitude": number, "longitude": number } |
欄位 | |
---|---|
latitude |
緯度度數,必須介於 [-90.0, +90.0] 的範圍之間。 |
longitude |
經度度數,必須介於 [-180.0, +180.0] 的範圍之間。 |
PostalAddress
表示郵寄地址,如郵政快遞或付款地址。如果是郵寄地址,郵政服務可將貨品寄送到場所、郵政信箱或類似位置。此表示法並不適用於建立地理位置 (街道、鄉鎮或山區) 的模型。
在一般使用情況下,系統會根據處理作業的類型,以使用者輸入或匯入現有資料的方式來建立地址。
地址輸入/編輯的建議:- 使用支援 i18n 的地址小工具 (例如 https://github.com/google/libaddressinput):在使用該欄位的國家/地區之外,不應向使用者顯示 UI 元素來輸入或編輯欄位。
如要進一步瞭解如何使用這個結構定義,請參閱: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 |
所有新的修訂版本都必須能夠與舊的修訂版本回溯相容。 |
regionCode |
必要欄位。地址所在國家/地區的 CLDR 地區代碼。這個代碼絕非透過推測而得出,並且是由使用者自行確保該值正確無誤。詳情請參閱 http://cldr.unicode.org/ 和 http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html。例如:瑞士的地區代碼為「CH」。 |
languageCode |
選用設定。這個地址內容的 BCP-47 語言代碼 (如果已知)。通常是輸入表單的 UI 語言,或是符合地址的國家/地區所用的其中一個語言,或是使用音譯的對應項目。這個欄位可能會影響某些國家/地區的格式設定,但是不會影響資料的正確性,也絕不會影響任何驗證或其他非格式的相關作業。 如果不知道這個值為何,則應省略該值 (而非指定可能不正確的預設值)。 例如:「zh-Hant」、「ja」、「ja-Latn」、「en」。 |
postalCode |
選用設定。地址的郵遞區號。並非所有國家/地區都使用郵遞區號或要求必須填寫郵遞區號,不過在使用郵遞區號時,可能會對地址其他部分觸發額外的驗證作業 (例如美國對州/郵遞區號的驗證)。 |
sortingCode |
選用設定。國家/地區專屬的其他分類代碼。大多數國家/地區並不使用這個代碼。在使用分類代碼的國家/地區中,這個值為與「CEDEX」相似的字串,後面選擇性加上一個數字 (例如「CEDEX 7」),或是只有單一數字,並用來表示「區段代碼」(牙買加)、「寄送區域指示碼」(馬拉威) 或「郵局指示碼」(如象牙海岸)。 |
administrativeArea |
選用設定。最高行政區,用於國家/地區的郵遞地址。例如,此值可以是州、省或縣。以西班牙為例來具體說明,此欄位的值為省,而非自治區 (例如「巴塞隆納」省,而不是「加泰隆尼亞」自治區)。許多國家/地區的郵寄地址並沒有使用行政區。例如,就瑞士而言,該欄位應該留空不填。 |
locality |
選用設定。一般是指地址的縣市/鄉鎮部分。例如:美國城市、義大利市鎮、英國郵鎮。如為未明確定義縣市或其縣市不適用此結構的地區,請將 locality 留白,改用 addressLines。 |
sublocality |
選用設定。地址的縣市以下行政區,例如社區、自治市鎮和區等。 |
addressLines[] |
非結構化的地址行,說明地址的低層級項目。 由於 addressLines 中的值不會有類型資訊,而且有時在單一欄位中可能會包含多個值 (例如「Austin, TX」),因此地址行的順序務必要明確。地址行的順序應為該地址所在國家/地區的「信封書寫順序」。在信封書寫順序可能不盡相同的地區 (如日本),可使用 address_language 讓地址更明確 (例如「ja」表示由大到小的排序,而「ja-Latn」或「en」則表示由小到大)。如此一來,您便可以根據語言來選取明確度最高的地址行。 地址允許的最小結構表示法是包含一個 regionCode,並將其餘所有資訊放置在 addressLines 中。您可以在幾乎不使用地理定位的情况下,設定這類地址的格式,但至少在地址局部解析完畢之前,您無法對地址的任何組成部分進行語意推論。 如要處理完全非結構化的地址,我們建議您只建立包含 regionCode 和 addressLines 的地址,並使用地理定位來進行 (而非猜測地址的哪些部分應該是縣市還是行政區)。 |
recipients[] |
選用設定。地址的收件人。在某些情況下,這個欄位可能會包含多行資訊。舉例來說,此欄位可能包含「代收者」資訊。 |
organization |
選用設定。地址中的機構名稱。 |
目錄
委刊項的包裝函式。
JSON 表示法 | |
---|---|
{
"lineItems": [
{
object ( |
欄位 | |
---|---|
lineItems[] |
訂單委刊項清單。至少要有 1 個委刊項,上限為 50 個。所有委刊項都必須屬於相同的產業。 |
LineItem
一個委刊項包含一個產業。訂單或購物車中可以有多個相同產業的委刊項。請根據其用途,在垂直 proto 中定義子委刊項/外掛程式等項目。注意:1. 除非另有指定,所有層級的所有字串都必須少於 1000 個半形字元。2. 除非另有指定,否則所有層級的所有重複欄位計數都必須少於 50。3. 如有指定,所有層級的所有時間戳記都必須是有效的時間戳記。
JSON 表示法 | |
---|---|
{ "id": string, "name": string, "userVisibleStateLabel": string, "provider": { object ( |
欄位 | ||
---|---|---|
id |
必要:委刊項指派給商家 ID。用於識別現有委刊項,以套用部分更新。長度上限為 64 個半形字元。 |
|
name |
收據上的明細項目名稱。長度上限為 100 個半形字元。 |
|
userVisibleStateLabel |
已淘汰,請改用垂直層級狀態。舉例來說,如果是購物,請使用 PurchaseOrderExtension.status。這個委刊項狀態的使用者可見標籤。 |
|
provider |
特定委刊項的供應商 (若與整體訂單不同)。例如:具有委刊項供應商 ANA 的 Expedia 訂單。 |
|
priceAttributes[] |
委刊項層級價格和調整項。 |
|
followUpActions[] |
對委刊項的後續行動。 |
|
recipients[] |
委刊項層級客戶,可能與訂單層級的買方不同。示例:使用者 X 以使用者 Y 的名稱預訂了餐廳訂位。 |
|
image |
與此項目相關聯的小型圖片 (如果有的話)。 |
|
description |
委刊項說明。 |
|
notes[] |
適用於這個特定委刊項的其他附註,例如取消政策。 |
|
disclosures[] |
與這個委刊項相關的揭露聲明。 |
|
vertical |
已淘汰:請改用產業。必要:根據類型/產業的委刊項語意內容。每個類別都應提供專屬的執行要求詳細資料。必須是下列其中一個值: 包含任意類型欄位的物件。額外的 |
|
聯集欄位 verticals 。必要:根據類型/產業的委刊項語意內容。每個類別都應提供專屬的執行要求詳細資料。verticals 只能是下列其中一項: |
||
purchase |
購買商品,例如商品、食物等。 |
|
reservation |
預訂餐廳、剪髮等訂單, |
PriceAttribute
訂單或委刊項的價格屬性。
JSON 表示法 | |
---|---|
{ "type": enum ( |
欄位 | ||
---|---|---|
type |
必填:金額屬性類型。 |
|
name |
必要:使用者看到的價格屬性字串。這項資訊是由商家傳送和本地化。 |
|
id |
選用:此價格對應的明細項目 ID。 |
|
state |
必填:價格狀態:預估值與實際價格。 |
|
taxIncluded |
價格是否含稅。 |
|
聯集欄位 spec 。代表金額或千百分比。spec 只能是下列其中一項: |
||
amount |
金額。 |
|
amountMillipercentage |
百分比規格到百分比的 1/1000。例如:8.750% 會顯示為 8750,負百分比則代表折扣百分比。即將淘汰這個欄位。如果需要具體用途,可以考慮重新加入。 |
類型
代表金額類型。
列舉 | |
---|---|
TYPE_UNSPECIFIED |
未指定類型,用戶端不應明確設定此類型。 |
REGULAR |
套用任何折扣前的一般顯示價格。 |
DISCOUNT |
系統會從小計中扣除值。 |
TAX |
要計入小計。 |
DELIVERY |
要計入小計。 |
SUBTOTAL |
小計:可能會加收某些費用。 |
FEE |
任何額外費用。 |
GRATUITY |
要計入小計。 |
TOTAL |
顯示的訂單或委刊項價格。 |
狀態
代表價格狀態。
列舉 | |
---|---|
STATE_UNSPECIFIED |
未指定。 |
ESTIMATE |
價格只是預估值,但最終金額會接近這個金額。範例:如果交易時無法準確得知稅金,總金額則會是 ESTIMATE 金額。 |
ACTUAL |
實際向使用者收取的實際價格。 |
金額
代表金額與其貨幣類型。
JSON 表示法 | |
---|---|
{ "currencyCode": string, "amountInMicros": string } |
欄位 | |
---|---|
currencyCode |
ISO 4217 定義的貨幣代碼 (由 3 個字母組成)。 |
amountInMicros |
金額,以微量為單位。例如,這個欄位應設為 $1.99 的 1990000。 |
動作
與訂單或委刊項相關的後續動作。
JSON 表示法 | |
---|---|
{ "type": enum ( |
欄位 | |
---|---|
type |
必要:動作類型。 |
title |
向使用者顯示的動作名稱或標籤。長度上限為 100 個半形字元。 |
openUrlAction |
要採取的行動。 |
actionMetadata |
與動作相關聯的中繼資料。 |
類型
可能的後續行動。
列舉 | |
---|---|
TYPE_UNSPECIFIED |
未指定的動作。 |
VIEW_DETAILS |
「查看訂單詳細資料」動作。 |
MODIFY |
修改訂單動作。 |
CANCEL |
取消訂單動作。 |
RETURN |
退貨訂單動作。 |
EXCHANGE |
廣告交易平台訂單動作。 |
EMAIL |
電子郵件動作。不再支援 EMAIL 和 CALL 類型。openUrlAction.url 可做為電話號碼或電子郵件使用。 |
CALL |
行動號召。 |
REORDER |
重新排序動作 |
REVIEW |
查看訂單動作。 |
CUSTOMER_SERVICE |
請與客服人員聯絡。 |
FIX_ISSUE |
引導至商家的網站或應用程式修正問題。 |
DIRECTION |
路線連結。 |
OpenUrlAction
開啟指定網址。
JSON 表示法 | |
---|---|
{ "url": string, "androidApp": { object ( |
欄位 | |
---|---|
url |
網址欄位,可以是下列任一值:- 用來開啟應用程式連結應用程式或網頁的 http/https 網址 |
androidApp |
Android 應用程式的相關資訊 (如果網址會預期由 Android 應用程式執行)。 |
urlTypeHint |
表示網址類型的提示。 |
AndroidApp
針對執行要求限制的 Android 應用程式規格
JSON 表示法 | |
---|---|
{
"packageName": string,
"versions": [
{
object ( |
欄位 | |
---|---|
packageName |
指定 Android 執行要求時,必須指定套件名稱套件名稱。 |
versions[] |
如果您指定多個篩選器,只要符合任何篩選條件,就會觸發應用程式。 |
VersionFilter
如果需要應用程式的特定版本,則應加入 VersionFilter。
JSON 表示法 | |
---|---|
{ "minVersion": integer, "maxVersion": integer } |
欄位 | |
---|---|
minVersion |
最小版本代碼或 0 (含首尾)。 |
maxVersion |
最高版本代碼 (含首尾)。視為 [minVersion:maxVersion] 的範圍。空值範圍是指任何版本。範例:如要指定單一版本,請使用:[target_version:target_version]。如要指定任何版本,請保留 minVersion 和 maxVersion。如要指定直到 maxVersion 之前的所有版本,請勿指定 minVersion。如要指定 minVersion 的所有版本,請不要指定 maxVersion。 |
UrlTypeHint
不同類型的網址提示。
列舉 | |
---|---|
URL_TYPE_HINT_UNSPECIFIED |
未指定 |
AMP_CONTENT |
直接指向 AMP 內容的網址,或是透過 <link rel="amphtml"> 參照 AMP 內容的標準網址。 |
ActionMetadata
每個動作的相關中繼資料。
JSON 表示法 | |
---|---|
{ "expireTime": string } |
欄位 | |
---|---|
expireTime |
這個動作的到期時間。 RFC3339 世界標準時間「Zulu」格式的時間戳記,採用奈秒解析度,且最多 9 個小數位數。範例: |
揭露事項
可能向使用者顯示的產品、服務或政策揭露事項。
JSON 表示法 | |
---|---|
{ "title": string, "disclosureText": { object ( |
欄位 | |
---|---|
title |
揭露事項的標題。例如:「安全性資訊」。 |
disclosureText |
揭露事項內容。允許使用網頁連結。 |
presentationOptions |
揭露聲明的呈現選項。 |
DisclosureText
代表包含網頁連結的純文字。
JSON 表示法 | |
---|---|
{
"template": string,
"textLinks": [
{
object ( |
欄位 | |
---|---|
template |
要顯示的文字,包含每個要插入的文字連結,例如「{0}」和「{1}」等預留位置。例如:「警告:本產品可能會接觸加州已知會導致癌症的化學物質。如需更多資訊,請前往 {0}。」揭露聲明文字不得包含任何宣傳或類似廣告的內容。 |
textLinks[] |
應替換範本中的文字連結。第一個值會取代範本字串中的「{0}」,第二個則是「{1}」,以此類推。 |
TextLink
應替換範本中的文字連結。
JSON 表示法 | |
---|---|
{ "displayText": string, "url": string } |
欄位 | |
---|---|
displayText |
應向使用者顯示的文字。 |
url |
啟用連結後應前往的網址。 |
DisclosurePresentationOptions
揭露聲明的呈現選項。
JSON 表示法 | |
---|---|
{
"presentationRequirement": enum ( |
欄位 | |
---|---|
presentationRequirement |
揭露事項的顯示規定。 |
initiallyExpanded |
揭露事項的內容是否一開始應該展開。預設為收合狀態。 |
PresentationRequirement
揭露事項的呈現規定。
列舉 | |
---|---|
REQUIREMENT_UNSPECIFIED |
未指定的要求。請勿明確設定。 |
REQUIREMENT_OPTIONAL |
揭露事項為選用項目。如果裝置不支援顯示揭露事項,就可以略過此步驟。 |
REQUIREMENT_REQUIRED |
必須揭露這項資訊。如果裝置不支援顯示揭露事項,使用者就能直接撥打電話給對話。 |
PurchaseItemExtension
「購買產業」中的委刊項內容。
JSON 表示法 | |
---|---|
{ "status": enum ( |
欄位 | |
---|---|
status |
必要:委刊項層級狀態。 |
userVisibleStatusLabel |
必要:使用者能夠看見狀態的標籤/字串。長度上限為 50 個半形字元。 |
type |
必填:購買類型。 |
productId |
與這個委刊項相關聯的產品或優惠 ID。 |
quantity |
商品數量。 |
unitMeasure |
單位測量。以所選單位指定項目大小。系統會根據尺寸和有效價格來決定單位價格。 |
returnsInfo |
傳回這個明細項目的資訊。如果未設定,這個委刊項會沿用訂單層級傳回資訊。 |
fulfillmentInfo |
這個委刊項的出貨資訊。如果未設定,這個委刊項會沿用訂單層級的出貨資訊。 |
itemOptions[] |
其他外掛程式或子作品。 |
productDetails |
產品詳細資料。 |
extension |
商家與 Google 之間交換的任何額外欄位。注意:強烈建議不要使用這個擴充功能。根據用途/情況,請考慮以下其中一項:1. 定義 PurchaseItemExtension 中的欄位,以便用於其他用途 (例如一般功能/功能)。2. 如果專屬於非一般的自訂用途/功能,請使用 vertical_extension。 包含任意類型欄位的物件。額外的 |
PurchaseStatus
與訂購單或特定委刊項相關聯的購買狀態。
列舉 | |
---|---|
PURCHASE_STATUS_UNSPECIFIED |
狀態不明。 |
READY_FOR_PICKUP |
已可取貨。 |
SHIPPED |
已出貨。 |
DELIVERED |
已送達。 |
OUT_OF_STOCK |
缺貨中。 |
IN_PREPARATION |
「IN_PREPARATION」在不同情境中可能有不同的意義。對於 FOOD 訂餐,您可以烹調食物。以零售通路來說,這類產品可能是包裝中的商品。 |
CREATED |
訂單已建立。 |
CONFIRMED |
商家已確認訂單。 |
REJECTED |
商家拒絕了訂單或明細項目。 |
RETURNED |
使用者退回商品。 |
CANCELLED |
使用者已取消訂單或委刊項。 |
CHANGE_REQUESTED |
使用者已要求變更訂單,整合商正在處理這項變更。處理要求後,訂單應移至其他狀態。 |
PurchaseType
購買類別。
列舉 | |
---|---|
PURCHASE_TYPE_UNSPECIFIED |
不明的值。 |
RETAIL |
包括實體商品。 |
FOOD |
包括訂餐。 |
GROCERY |
購買雜貨。 |
MOBILE_RECHARGE |
預付行動儲值費用。 |
MerchantUnitMeasure
商家計價單位。
JSON 表示法 | |
---|---|
{
"measure": number,
"unit": enum ( |
欄位 | |
---|---|
measure |
值:範例 1.2。 |
unit |
單位:POUND 範例,GRAM。 |
單位
列舉 | |
---|---|
UNIT_UNSPECIFIED |
未指定單位。 |
MILLIGRAM |
毫克。 |
GRAM |
文法。 |
KILOGRAM |
公斤 |
OUNCE |
。 |
POUND |
英鎊。 |
PurchaseReturnsInfo
傳回與訂單或特定委刊項相關聯的資訊。
JSON 表示法 | |
---|---|
{ "isReturnable": boolean, "daysToReturn": integer, "policyUrl": string } |
欄位 | |
---|---|
isReturnable |
如果為 true,則允許傳回。 |
daysToReturn |
退貨期限為 5 天內。 |
policyUrl |
退貨政策連結。 |
PurchaseFulfillmentInfo
與訂購單或特定明細項目相關聯的出貨資訊。
JSON 表示法 | |
---|---|
{ "id": string, "fulfillmentType": enum ( |
欄位 | |
---|---|
id |
這個服務選項的專屬 ID。 |
fulfillmentType |
必要:執行要求類型, |
expectedFulfillmentTime |
如已指定時間範圍,則顯示的時間範圍,如指定 ETA。預計送達或取貨時間。 |
expectedPreparationTime |
如已指定時間範圍,則顯示的時間範圍,如指定 ETA。預期的準備時間。一次性選項。 |
location |
取貨或送貨地點。 |
expireTime |
這個執行要求選項的到期時間。 RFC3339 世界標準時間「Zulu」格式的時間戳記,採用奈秒解析度,且最多 9 個小數位數。範例: |
price |
此選項的費用。 |
fulfillmentContact |
此執行要求的使用者聯絡人。 |
shippingMethodName |
使用者選取的運送方式名稱。 |
storeCode |
位置的 StoreCode。例如:Walmart 是商家,storeCode 則是出貨地點的 walmart 商店。https://support.google.com/business/answer/3370250?ref_topic=4596653。 |
pickupInfo |
有關如何挑選訂單的其他資訊。只有在出貨類型為 PICKUP 時,才能使用這個欄位。 |
類型
出貨類型。
列舉 | |
---|---|
TYPE_UNSPECIFIED |
未指定類型。 |
DELIVERY |
這筆訂單即將送達。 |
PICKUP |
此訂單尚未取貨。 |
時間
時間結構代表向使用者顯示訂單時要使用的事件時間。
JSON 表示法 | |
---|---|
{ "timeIso8601": string } |
欄位 | |
---|---|
timeIso8601 |
代表訂單事件時間,例如預約時間和運送時間等。可以輸入時間長度 (開始和結束時間),或是日期、日期和時間等。如要瞭解所有支援的格式,請參閱 https://en.wikipedia.org/wiki/ISO_8601。 |
PickupInfo
訂單取貨方式的詳細資料。包括取貨類型等詳細資料,以及各類型附加的其他中繼資料 (如有)。
JSON 表示法 | |
---|---|
{ "pickupType": enum ( |
欄位 | |
---|---|
pickupType |
取貨方式,例如 INSTORE、CURBSIDE 等 |
curbsideInfo |
店外資訊的詳細資料。如果 pickupType 不是「CURBSIDE」,系統就會忽略這個欄位。 |
checkInInfo[] |
合作夥伴支援辦理登機報到的各種方法清單。 |
PickupType
支援的取貨類型清單。
列舉 | |
---|---|
UNSPECIFIED |
未指定取貨類型。 |
INSTORE |
到餐廳取貨。 |
CURBSIDE |
將車輛停妥於餐廳以外的指定地點,有人會到該處提供餐點。 |
CurbsideInfo
店外訂單的處理方式詳細說明。
JSON 表示法 | |
---|---|
{ "curbsideFulfillmentType": enum ( |
欄位 | |
---|---|
curbsideFulfillmentType |
合作夥伴需要提供額外資訊,才能處理店外取貨訂單。視所選的執行要求類型而定,系統會向使用者收集相應的詳細資料。 |
userVehicle |
使用者下單的車輛詳細資料。 |
CurbsideFulfillmentType
店外交車類型可能的值。
列舉 | |
---|---|
UNSPECIFIED |
未指定店外執行要求類型。 |
VEHICLE_DETAIL |
需要車輛詳細資料才能提供店外取貨服務。 |
車輛
車輛詳細資料
JSON 表示法 | |
---|---|
{
"make": string,
"model": string,
"licensePlate": string,
"colorName": string,
"image": {
object ( |
欄位 | |
---|---|
make |
汽車廠牌 (例如「Honda」)。系統會向使用者顯示這項內容,且必須進行本地化。這是必填欄位。 |
model |
車輛型式 (例如「汽油」)。系統會向使用者顯示這項內容,且必須進行本地化。這是必填欄位。 |
licensePlate |
車牌號碼 (例如「1ABC234」)。這是必填欄位。 |
colorName |
車輛顏色名稱,例如黑色選填。 |
image |
車輛相片的網址。相片會以約 256x256 像素顯示。必須是 jpg 或 png。選用。 |
CheckInInfo
合作夥伴必須支援 Checkin 方法所需的中繼資料。
JSON 表示法 | |
---|---|
{
"checkInType": enum ( |
欄位 | |
---|---|
checkInType |
傳送登機操作說明的方法。 |
CheckInType
傳送簽到指示的各種方法。
列舉 | |
---|---|
CHECK_IN_TYPE_UNSPECIFIED |
不明的值。 |
EMAIL |
系統會透過電子郵件傳送 CheckIn 資訊。 |
SMS |
將會透過簡訊傳送 CheckIn 資訊。 |
ItemOption
代表外掛程式或子作品。
JSON 表示法 | |
---|---|
{ "id": string, "name": string, "prices": [ { object ( |
欄位 | |
---|---|
id |
關於項目的選項,則專屬項目 ID。 |
name |
選項名稱。 |
prices[] |
選項總價。 |
note |
選項相關附註。 |
quantity |
選項包括商品數量、數量。 |
productId |
與這個選項相關聯的產品或優惠 ID。 |
subOptions[] |
定義其他巢狀子選項。 |
ProductDetails
產品詳細資料。
JSON 表示法 | |
---|---|
{ "productId": string, "gtin": string, "plu": string, "productType": string, "productAttributes": { string: string, ... } } |
欄位 | |
---|---|
productId |
與這個委刊項相關聯的產品或優惠 ID。 |
gtin |
產品的全球交易品項識別碼。如果 Merchant Center 中沒有 OfferId,這個做法就相當實用。選用。 |
plu |
價格查詢代碼 (通常稱為 PLU 代碼、PLU 號碼、PLU、產生的代碼或製作標籤) 是一組編號,可用來識別雜貨店和超市銷售的批發農產品。 |
productType |
商家定義的產品類別。例如「首頁 > 雜貨店 > 奶製品與雞蛋 > 牛奶 > 全牛奶」 |
productAttributes |
商家提供的產品詳細資料,例如 { "allergen": "peanut" }。如果 Merchant Center 中沒有 OfferId,這個做法就相當實用。選用。 這個物件中包含 |
ReservationItemExtension
餐廳、剪髮等預訂訂單的委刊項內容。
JSON 表示法 | |
---|---|
{ "status": enum ( |
欄位 | |
---|---|
status |
必要:預訂狀態。 |
userVisibleStatusLabel |
必要:使用者能夠看見狀態的標籤/字串。長度上限為 50 個半形字元。 |
type |
保留項目類型。如果沒有任何類型選項適用,則可取消設定。 |
reservationTime |
安排服務/活動進行的時間。可以是時間範圍、日期或確切日期時間。 |
userAcceptableTimeRange |
使用者可以接受的時間範圍。 |
confirmationCode |
此預訂的確認碼。 |
partySize |
人數。 |
staffFacilitators[] |
準備預訂行程的職員講師。例如:髮型師。 |
location |
服務/活動的位置。 |
ReservationStatus
預訂狀態。
列舉 | |
---|---|
RESERVATION_STATUS_UNSPECIFIED |
未指定的狀態。 |
PENDING |
保留項目尚待處理。 |
CONFIRMED |
已確認預約。 |
CANCELLED |
使用者已取消預訂。 |
FULFILLED |
預留完成。 |
CHANGE_REQUESTED |
已要求變更預訂 |
REJECTED |
預訂者已過期或遭到整合者拒絕。 |
ReservationType
保留項目類型。
列舉 | |
---|---|
RESERVATION_TYPE_UNSPECIFIED |
未指定的類型。 |
RESTAURANT |
你的餐廳訂位。 |
HAIRDRESSER |
預約美髮店。 |
StaffFacilitator
服務人員的相關資訊。
JSON 表示法 | |
---|---|
{
"name": string,
"image": {
object ( |
欄位 | |
---|---|
name |
工作人員的講師姓名。例如:「王大明」 |
image |
表演者的圖片。 |
PaymentData
與訂單相關的付款資料。
JSON 表示法 | |
---|---|
{ "paymentResult": { object ( |
欄位 | |
---|---|
paymentResult |
整合商用來完成交易的付款方式。如果結帳體驗是由 Actions-on-Google 管理,Actions on Google 就會填入這個欄位。 |
paymentInfo |
與面向使用者互動的訂單相關的付款資訊。 |
PaymentResult
整合商用來完成交易的付款方式。
JSON 表示法 | |
---|---|
{ // Union field |
欄位 | ||
---|---|---|
聯集欄位 result 。提供 Google 付款資料或商家付款方式。result 只能是下列其中一項: |
||
googlePaymentData |
Google 提供的付款方式資料。如果 Google 支援的付款處理方列為 Google 支援的付款處理方,請前往以下網址:https://developers.google.com/pay/api/ 前往付款處理方連結,瞭解詳情。如果不是,請參閱下列酬載詳細資料。https://developers.google.com/pay/api/payment-data-cryptography |
|
merchantPaymentMethodId |
使用者選擇商家/動作提供的付款方式。 |
PaymentInfo
所下訂單的付款資訊。這個 Proto 會擷取適用於使用者互動的資訊。
JSON 表示法 | |
---|---|
{ "paymentMethodDisplayInfo": { object ( |
欄位 | |
---|---|
paymentMethodDisplayInfo |
交易所用付款方式的顯示資訊。 |
paymentMethodProvenance |
交易所用付款方式的證明。使用者可能已向 Google 和商家註冊相同的付款方式。 |
PaymentMethodDisplayInfo
整合商用來完成交易的付款方式。
JSON 表示法 | |
---|---|
{
"paymentType": enum ( |
欄位 | |
---|---|
paymentType |
付款類型。 |
paymentMethodDisplayName |
付款方式向使用者顯示的名稱。例如 VISA **** 1234 支票帳戶 **** 5678 |
paymentMethodVoiceName |
針對僅限語音助理裝置,向使用者顯示的付款方式名稱。例如:「簽證末四碼二三四」或「檢查末四碼五七八的簽證」。注意:這是語音最佳化字串,用於純語音助理裝置,而不是 paymentMethodDisplayName。如未設定此字串,系統會改為向使用者讀出 paymentsMethodDisplayName。 |
PaymentType
PaymentType 表示商家提供的付款方式所使用的付款方式。此外,動作也必須為付款方式提供顯示名稱。
列舉 | |
---|---|
PAYMENT_TYPE_UNSPECIFIED |
未指定的付款方式。 |
PAYMENT_CARD |
信用卡/簽帳金融卡或預付卡。 |
BANK |
付款方式為銀行帳戶。 |
LOYALTY_PROGRAM |
付款方式屬於會員方案。 |
CASH |
付款方式為現金。 |
GIFT_CARD |
付款方式為禮物卡。 |
WALLET |
第三方錢包,例如 PayPal |
PaymentMethodProvenance
代表交易使用的付款方式來源。
列舉 | |
---|---|
PAYMENT_METHOD_PROVENANCE_UNSPECIFIED |
未指定來源。 |
PAYMENT_METHOD_PROVENANCE_GOOGLE |
來源就是 Google。 |
PAYMENT_METHOD_PROVENANCE_MERCHANT |
來源是商家。 |
宣傳
新增至購物車的促銷活動/優惠。
JSON 表示法 | |
---|---|
{ "coupon": string } |
欄位 | |
---|---|
coupon |
必填:套用至這項優惠的優待券代碼。 |
PurchaseOrderExtension
適用於採購產業的訂單延長期限。除非在委刊項中覆寫這些屬性,否則這些屬性適用於所有委刊項。
JSON 表示法 | |
---|---|
{ "status": enum ( |
欄位 | |
---|---|
status |
必要:訂單的整體狀態。 |
userVisibleStatusLabel |
使用者顯示的狀態標籤/字串。長度上限為 50 個半形字元。 |
type |
必填:購買類型。 |
returnsInfo |
訂單的退貨資訊。 |
fulfillmentInfo |
訂單的出貨資訊。 |
purchaseLocationType |
購買位置 (店內 / 線上) |
errors[] |
選填:因為這筆訂單而遭到拒絕的錯誤。 |
extension |
商家與 Google 之間交換的任何額外欄位。注意:強烈建議不要使用這個擴充功能。根據用途/情況,請考慮以下其中一項:1. 在 PurchaseOrderExtension 中定義欄位,並將該欄位用於其他用途 (一般功能/功能)。2. 如果專屬於非一般的自訂用途/功能,請使用 vertical_extension。 包含任意類型欄位的物件。額外的 |
PurchaseLocationType
購買商品的位置類型。
列舉 | |
---|---|
UNSPECIFIED_LOCATION |
不明的值。 |
ONLINE_PURCHASE |
所有在線上購買的商品。 |
INSTORE_PURCHASE |
所有店內購物交易。 |
PurchaseError
訂購單可遭拒的錯誤。
JSON 表示法 | |
---|---|
{ "type": enum ( |
欄位 | |
---|---|
type |
必填:這代表商家拒絕訂單的詳細原因。 |
description |
其他錯誤說明。 |
entityId |
與錯誤對應的實體 ID。範例可對應到 LineItemId / ItemOptionId。 |
updatedPrice |
與 PRICE_CHANGED / INCORRECT_PRICE 錯誤類型相關。 |
availableQuantity |
現貨數量。適用情況:AVAILABILITY_CHANGED。 |
ErrorType
可能的錯誤類型。
列舉 | |
---|---|
ERROR_TYPE_UNSPECIFIED |
發生不明錯誤 |
NOT_FOUND |
找不到實體,可能是項目、FulfillmentOption、promotion。必須提供實體 ID。 |
INVALID |
實體資料無效,可以是「Item」、「FulfillmentOption」和「promotion」。必須提供實體 ID。 |
AVAILABILITY_CHANGED |
商品無法使用,或商品不足而無法履行要求。必須提供實體 ID。 |
PRICE_CHANGED |
商品價格與商品實體中的價格不同。必須提供實體 ID 和更新後的價格。 |
INCORRECT_PRICE |
「費用」中的價格錯誤。必須提供實體 ID 和更新後的價格。 |
REQUIREMENTS_NOT_MET |
未達到訂單接受的限制 - 購物車商品數量下限等 |
TOO_LATE |
FulfillmentOption 已過期。 |
NO_CAPACITY |
沒有可用的服務容量。如果沒有任何更精細的錯誤類型適用,請使用這個錯誤代碼。 |
NO_COURIER_AVAILABLE |
找不到貨運公司。精細的錯誤類型可歸類為 NO_CAPACITY。 |
INELIGIBLE |
使用者不符合下單資格 (已列入黑名單)。 |
OUT_OF_SERVICE_AREA |
因邊界規則等因素而無法送達指定的地址。 |
CLOSED |
餐廳在訂餐時不營業。 |
PROMO_NOT_APPLICABLE |
一般錯誤代碼,用於找出無法套用促銷代碼的所有情況 (如果下方選項皆不適用)。新增促銷代碼做為實體 ID。 |
PROMO_NOT_RECOGNIZED |
合作夥伴無法辨識優待券代碼。新增促銷代碼做為實體 ID。 |
PROMO_EXPIRED |
促銷活動已過期,因此無法套用。新增促銷代碼做為實體 ID。 |
PROMO_USER_INELIGIBLE |
目前的使用者不符合此優待券的使用資格。新增促銷代碼做為實體 ID。 |
PROMO_ORDER_INELIGIBLE |
目前的訂單不適用這張優待券。新增促銷代碼做為實體 ID。 |
UNAVAILABLE_SLOT |
無法預訂預訂的時段。 |
FAILED_PRECONDITION |
未達成訂單接受的限制 - 購物車商品數量下限等 |
PAYMENT_DECLINED |
付款無效。 |
MERCHANT_UNREACHABLE |
無法聯絡商家。如果合作夥伴是集結網站,但無法聯絡商家,這項功能會派上用場。 |
ACCOUNT_LINKING_FAILED |
商家嘗試將使用者的 Google 帳戶連結至系統中的帳戶,但連結時發生錯誤。 |
TicketOrderExtension
訂購電影、體育等票券訂單內容。
JSON 表示法 | |
---|---|
{
"ticketEvent": {
object ( |
欄位 | |
---|---|
ticketEvent |
事件會套用到所有委刊項票券。 |
TicketEvent
代表單一事件。
JSON 表示法 | |
---|---|
{ "type": enum ( |
欄位 | |
---|---|
type |
必要項目:票券活動的類型,例如電影、演唱會。 |
name |
必填:活動名稱。舉例來說,如果事件是電影,則這是電影名稱。 |
description |
活動說明。 |
url |
活動資訊的網址。 |
location |
活動舉辦地點或機構所在地點。 |
eventCharacters[] |
與這個事件相關的角色。例如電影活動的導演或演員,或演唱會的表演者等。 |
startDate |
開始時間。 |
endDate |
結束時間。 |
doorTime |
進入時間,可能與活動開始時間不同,例如:活動將於上午 9 點開始,但進入時間是上午 8:30。 |
類型
事件的類型。
列舉 | |
---|---|
EVENT_TYPE_UNKNOWN |
不明的事件類型。 |
MOVIE |
電影。 |
CONCERT |
音樂會/演唱會。 |
SPORTS |
運動賽事。 |
EventCharacter
一個活動角色,例如發起人、表演者等。
JSON 表示法 | |
---|---|
{ "type": enum ( |
欄位 | |
---|---|
type |
事件角色類型,例如演員或導演。 |
name |
角色名稱。 |
image |
角色的圖片。 |
類型
字元類型。
列舉 | |
---|---|
TYPE_UNKNOWN |
類型不明。 |
ACTOR |
執行者。 |
PERFORMER |
演出者。 |
DIRECTOR |
導演。 |
ORGANIZER |
發起人: |
UserNotification
選填的使用者通知,會顯示在訂單更新中。
JSON 表示法 | |
---|---|
{ "title": string, "text": string } |
欄位 | |
---|---|
title |
使用者通知的標題。長度上限為 30 個半形字元。 |
text |
通知的內容。長度上限為 100 個半形字元。 |
NextScene
代表接下來要執行的場景。
JSON 表示法 | |
---|---|
{ "name": string } |
欄位 | |
---|---|
name |
要執行的場景名稱。 |
議程
包含目前對話工作階段的資訊
JSON 表示法 | |
---|---|
{
"id": string,
"params": {
string: value,
...
},
"typeOverrides": [
{
object ( |
欄位 | |
---|---|
id |
必要欄位。目前對話工作階段的全域專屬 ID。這是唯讀欄位。 |
params |
必要欄位。在工作階段期間從表單和意圖收集的所有參數清單。鍵是參數名稱。這裡定義的參數會與工作階段中定義的參數合併。系統會將值為空值的參數從工作階段中移除。工作階段儲存空間說明文件請參閱:https://developers.google.com/assistant/conversational/storage-session。 這個物件中包含 |
typeOverrides[] |
選用設定。範圍限定為工作階段的類型。工作階段類型定義可補充或取代現有類型。類型名稱不得重複。 |
languageCode |
目前對話工作階段的語言。遵循 IETF BCP-47 語言代碼 http://www.rfc-editor.org/rfc/bcp/bcp47.txt。如果動作使用多語言功能,這個值可能與使用者語言代碼不同。例如,在設定 Handler_response.expected.language_code 之後的對話語言將反映在這個欄位中。 |
TypeOverride
代表型別的覆寫值。
JSON 表示法 | |
---|---|
{ "name": string, "mode": enum ( |
欄位 | |
---|---|
name |
必要欄位。要補充或覆寫的類型名稱。 |
mode |
必要欄位。這個類型如何與其他類型值合併。 |
synonym |
|
TypeOverrideMode
工作階段實體類型的修改方式類型。
列舉 | |
---|---|
TYPE_UNSPECIFIED |
不指定。請一律不要使用這個值。 |
TYPE_REPLACE |
此回應中的類型定義會取代先前定義的類型定義。 |
TYPE_MERGE |
這個回應中的類型定義會與先前定義的類型定義合併。新的類型定義將覆寫現有的類型定義。 |
SynonymType
代表含同義詞的類型。
JSON 表示法 | |
---|---|
{
"entries": [
{
object ( |
欄位 | |
---|---|
entries[] |
必要欄位。同義詞類型的項目清單。 |
項目
代表同義詞類型的項目。
JSON 表示法 | |
---|---|
{
"name": string,
"synonyms": [
string
],
"display": {
object ( |
欄位 | |
---|---|
name |
必要欄位。項目名稱 (例如「單車」)。這個欄位中的項目必須加入重複同義詞欄位,才能視為有效的類型值。 |
synonyms[] |
必要欄位。項目的同義詞清單 (例如「單車」、「單車」)。 |
display |
選用設定。該項目會顯示相關資訊。 |
EntryDisplay
JSON 表示法 | |
---|---|
{ "title": string, "description": string, "image": { object ( |
欄位 | |
---|---|
title |
必要欄位。商品的名稱。使用者輕觸這段文字後,系統會將其內容張貼回對話,就像使用者輸入內容一樣。各集合項目的名稱不得重複。 |
description |
選用設定。資訊卡的內文。 |
image |
選用設定。要顯示的圖片。 |
footer |
選用設定。瀏覽集合項目的頁尾文字,顯示在說明下方。單行文字,以刪節號截斷。 |
openUrl |
與瀏覽輪轉介面項目相關聯的文件網址。必須啟用這個選項才能瀏覽輪轉介面。 |
使用者
代表使用者要求該動作。
JSON 表示法 | |
---|---|
{ "locale": string, "params": { string: value, ... }, "accountLinkingStatus": enum ( |
欄位 | |
---|---|
locale |
發出要求的使用者主要語言代碼設定。遵循 IETF BCP-47 語言代碼 http://www.rfc-editor.org/rfc/bcp/bcp47.txt。但不含指令碼子標記。 |
params |
選用設定。與目前使用者相關的所有參數清單。詳情請參閱使用者儲存空間說明文件:https://developers.google.com/assistant/conversational/storage-user。 這個物件中包含 |
accountLinkingStatus |
使用者帳戶是否連結至應用程式。 |
verificationStatus |
指出使用者的驗證狀態。 |
lastSeenTime |
上次與這位使用者互動的時間戳記。如果使用者先前未曾與代理程式互動,系統會略過這個欄位。 RFC3339 世界標準時間「Zulu」格式的時間戳記,採用奈秒解析度,且最多 9 個小數位數。範例: |
engagement |
目前使用者的參與度,包括任何意圖訂閱。 |
packageEntitlements[] |
與目前動作相關聯的 Android 套件相關使用者授權。 |
permissions[] |
包含使用者授予這項動作的權限。 |
AccountLinkingStatus
指出使用者是否已將自己的帳戶連結至這個應用程式。詳情請參閱帳戶連結說明文件:https://developers.google.com/assistant/identity。
列舉 | |
---|---|
ACCOUNT_LINKING_STATUS_UNSPECIFIED |
不明。 |
NOT_LINKED |
使用者尚未將帳戶連結至這個應用程式。 |
LINKED |
使用者已將帳戶連結至這個應用程式。 |
UserVerificationStatus
表示 Google 是否已驗證使用者。「已驗證」狀態表示您可以使用參數欄位或帳戶連結儲存各對話的資料。
列舉 | |
---|---|
USER_VERIFICATION_STATUS_UNSPECIFIED |
不明。 |
GUEST |
訪客使用者。 |
VERIFIED |
已驗證使用者。 |
參與度
針對目前使用者註冊的參與機制,提供額外的唯讀資訊。舉例來說,瞭解使用者已訂閱的意圖有助於避免再次要求訂閱同一個意圖,這樣或許會很有幫助。舉例來說,這些資訊可以有條件地轉送至某個場景,以便設定 DailyUpdates 或 PushNotification,只有在使用者尚未訂閱時才可使用。詳情請參閱使用者參與度說明文件:https://developers.google.com/assistant/engagement。
JSON 表示法 | |
---|---|
{ "pushNotificationIntents": [ { object ( |
欄位 | |
---|---|
pushNotificationIntents[] |
包含使用者已啟用推播通知的意圖清單。 |
dailyUpdateIntents[] |
含有使用者已啟用每日更新的意圖清單。 |
IntentSubscription
說明現有的 IntentSubscription。
JSON 表示法 | |
---|---|
{ "intent": string, "contentTitle": string } |
欄位 | |
---|---|
intent |
所訂閱意圖的名稱, |
contentTitle |
訂閱項目的簡短說明,這項資訊用於做為通知的標籤,以及 Google 助理向使用者要求權限時。 |
PackageEntitlements
與套件名稱相關的使用者授權清單。如需數位交易說明文件,請參閱:https://developers.google.com/assistant/transactions/digital/dev-guide-digital-non-consumables。
JSON 表示法 | |
---|---|
{
"packageName": string,
"entitlements": [
{
object ( |
欄位 | |
---|---|
packageName |
動作套件中指定的 Android 套件名稱。 |
entitlements[] |
指定套件的使用者授權。 |
授權
定義使用者的數位授權。
JSON 表示法 | |
---|---|
{ "sku": string, "skuType": enum ( |
欄位 | |
---|---|
sku |
產品 SKU。付費應用程式的套件名稱,應用程式內購和應用程式內訂閱項目的後置字串為 Finsky 的 Docid。在 Play InApp Billing API 中比對 getSku()。請參閱 Play 應用程式內結帳功能說明文件:https://developer.android.com/google/play/billing。 |
skuType |
SKU 類型。 |
inAppDetails |
僅適用於應用程式內購和應用程式內商品。 |
SkuType
列舉 | |
---|---|
SKU_TYPE_UNSPECIFIED |
|
IN_APP |
應用程式內購 |
SUBSCRIPTION |
訂閱項目 |
APP |
付費應用程式 |
SignedData
JSON 表示法 | |
---|---|
{ "inAppPurchaseData": { object }, "inAppDataSignature": string } |
欄位 | |
---|---|
inAppPurchaseData |
以 JSON 格式包含所有應用程式內購資料,詳情請參閱 https://developer.android.com/google/play/billing/billing_reference.html 的表 6。 |
inAppDataSignature |
在 Play InApp Billing API 中比對 getPurchases() 方法的 IN_APP_DATA_SIGNATURE。 |
權限
權限可能的值。
列舉 | |
---|---|
PERMISSION_UNSPECIFIED |
未指定的權限。 |
DEVICE_PRECISE_LOCATION |
詢問使用者的精確位置、經緯度和格式化地址。 |
DEVICE_COARSE_LOCATION |
詢問使用者的概略位置、郵遞區號、城市和國家/地區代碼。 |
UPDATE |
請要求權限以傳送更新。請參閱 https://developers.google.com/assistant/engagement/daily。 |
首頁
代表使用者的目標裝置所屬的 HomeGraph 結構。
JSON 表示法 | |
---|---|
{ "params": { string: value, ... } } |
欄位 | |
---|---|
params |
選用設定。與目標裝置所屬的 HomeGraph 結構相關的參數清單。如需住家儲存空間說明文件,請參閱:https://developers.google.com/assistant/conversational/storage-home。 這個物件中包含 |
裝置
代表使用者用來向動作發出要求的裝置。
JSON 表示法 | |
---|---|
{ "capabilities": [ enum ( |
欄位 | |
---|---|
capabilities[] |
必填:裝置向動作發出要求時具備的功能。 |
currentLocation |
選用設定。使用者的裝置位置。請注意,只有在使用者授予位置存取權後,系統才會填入這項資訊。請參閱位置訊息,進一步瞭解根據概略與精細權限設定的欄位。詳情請參閱權限說明文件:https://developers.google.com/assistant/conversational/permissions。 |
timeZone |
選用設定。與用戶端裝置相關聯的時區。可用來解析日期時間值。 |
技術能力
要求時裝置介面支援的功能。
列舉 | |
---|---|
UNSPECIFIED |
未指定的裝置功能。 |
SPEECH |
裝置可透過文字轉語音或 SSML 與使用者交談。 |
RICH_RESPONSE |
裝置可以顯示複合式回應,例如卡片、清單和表格。 |
LONG_FORM_AUDIO |
裝置可以播放長篇音訊媒體,例如音樂和 Podcast。 |
INTERACTIVE_CANVAS |
裝置可以顯示互動式畫布回應。 |
WEB_LINK |
裝置可以在複合式回應中使用網頁連結開啟網路瀏覽器。 |
HOME_STORAGE |
裝置可以支援儲存及擷取住家儲存空間。 |
位置
代表位置的容器。
JSON 表示法 | |
---|---|
{ "coordinates": { object ( |
欄位 | |
---|---|
coordinates |
地理座標。必須具備「[DEVICE_PRECISE_LOCATION]」權限。 |
postalAddress |
郵政地址:必須具備 [DEVICE_PRECISE_LOCATION] 或 [DEVICE_COARSE_LOCATION] 權限。如果使用者授予概略的位置存取權,系統只會填入「postalCode」和「locality」欄位。精確位置存取權會填入其他欄位,例如「administrativeArea」和「addressLines」。 |
TimeZone
代表 IANA 時區資料庫中的時區。
JSON 表示法 | |
---|---|
{ "id": string, "version": string } |
欄位 | |
---|---|
id |
IANA 時區資料庫時區,例如「America/New_York」。 |
version |
選用設定。IANA 時區資料庫版本號碼,例如「2019a」。 |
內容脈絡
包含使用者查詢內容的背景資訊。這類內容包括但不限於進行中的媒體工作階段、畫布網頁應用程式狀態等資訊。
JSON 表示法 | |
---|---|
{ "media": { object ( |
欄位 | |
---|---|
media |
包含目前使用中媒體工作階段的背景資訊。 |
canvas |
包含目前畫布的背景資訊。 |
MediaContext
包含目前使用中媒體工作階段的背景資訊。
JSON 表示法 | |
---|---|
{ "progress": string, "index": integer } |
欄位 | |
---|---|
progress |
目前使用中媒體檔案的媒體進度。 時間長度以秒為單位,最多可有 9 個小數位數,並應以「 |
index |
在媒體回應的媒體檔案清單中,目前使用中媒體檔案從 0 開始的索引。 |
CanvasContext
包含目前畫布的背景資訊。
JSON 表示法 | |
---|---|
{ "state": value } |
欄位 | |
---|---|
state |
選用設定。第三方互動式畫布應用程式設定的狀態。此狀態僅適用於要求,不適用於回應。舉例來說,如果這是食譜應用程式,狀態可以是 struct 的值:{ "current_page" : 5, "last_page" : 3, } 大小限制為 50 KB。 |
分析師預期
說明下一個對話轉彎的預期目標。
JSON 表示法 | |
---|---|
{ "speech": [ string ] } |
欄位 | |
---|---|
speech[] |
動作從使用者話語中預期語音自訂調整的詞組清單。最多可以使用 1,000 個詞組。注意:這個欄位的意義與 v2 API 中的 expectedInput.speech_biasing_hints 相同。 |