Method: fulfill

RPC ที่แสดงถึง Fulfillment 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)

ไม่บังคับ ข้อมูลเกี่ยวกับฉากปัจจุบันและฉากถัดไปเมื่อเรียกใช้ฟังก์ชัน จะแสดงเมื่อมีการเรียกใช้ Fulfillment ภายในขอบเขตของฉาก โดยดูที่ https://developers.google.com/assistant/conversational/scenes

session

object (Session)

ต้องระบุ เก็บข้อมูลเซสชัน เช่น รหัสเซสชันและพารามิเตอร์เซสชัน

user

object (User)

ต้องระบุ ผู้ใช้ที่เริ่มการสนทนา

home

object (Home)

ไม่บังคับ ข้อมูลที่เกี่ยวข้องกับโครงสร้าง Home Graph ที่มีอุปกรณ์เป้าหมายอยู่ โปรดดู https://developers.google.com/actions/smarthome/concepts/homegraph

device

object (Device)

ต้องระบุ ข้อมูลในอุปกรณ์ที่ผู้ใช้ใช้ในการโต้ตอบกับการดำเนินการ

context

object (Context)

ไม่บังคับ ข้อมูลบริบทปัจจุบันของคำขอ ซึ่งรวมถึงแต่ไม่จำกัดเพียงข้อมูลเซสชันสื่อที่ใช้งานอยู่หรือข้อมูล Canvas

เนื้อหาการตอบกลับ

หากทำสำเร็จ เนื้อหาการตอบกลับจะมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้

แสดงการตอบกลับที่ส่งจาก Fulfillment ของนักพัฒนาซอฟต์แวร์ไปยัง 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)

ไม่บังคับ อธิบายข้อมูลสำหรับเซสชันปัจจุบัน พารามิเตอร์เซสชันสามารถสร้าง อัปเดต หรือนำออกโดย Fulfillment

user

object (User)

ไม่บังคับ ใช้เพื่อระบุพารามิเตอร์ผู้ใช้เพื่อส่งกลับ

home

object (Home)

ไม่บังคับ ใช้เพื่อระบุพารามิเตอร์ที่เกี่ยวข้องกับโครงสร้าง Home Graph ที่มีอุปกรณ์เป้าหมายอยู่ โปรดดู https://developers.google.com/actions/smarthome/concepts/homegraph

device

object (Device)

ไม่บังคับ ใช้เพื่อย้ายไปมาระหว่างอุปกรณ์ Assistant ที่ผู้ใช้มีสิทธิ์เข้าถึง

expected

object (Expected)

ไม่บังคับ อธิบายความคาดหวังสำหรับการเปิดกล่องโต้ตอบครั้งต่อไป

ตัวจัดการ

แสดงเครื่องจัดการ Fulfillment ที่แมปข้อมูลกิจกรรมจาก Actions on Google ไปยัง Fulfillment ใช้ชื่อเครื่องจัดการเพื่อกำหนดโค้ดที่ควรเรียกใช้ใน Fulfillment ตัวอย่างเช่น อาจใช้เครื่องจัดการเพื่อรับข้อมูลคำสั่งซื้อของผู้ใช้ที่มีชื่อเครื่องจัดการ เช่น "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))

ต้องระบุ แสดงพารามิเตอร์ที่ระบุว่าเป็นส่วนหนึ่งของการจับคู่ Intent นี่คือการแมปชื่อของพารามิเตอร์ที่ระบุกับค่าของพารามิเตอร์ที่ระบุจากข้อมูลที่ผู้ใช้ป้อน พารามิเตอร์ทั้งหมดที่กำหนดไว้ใน Intent ที่ตรงกันซึ่งมีการระบุจะแสดงที่นี่

ออบเจ็กต์ที่มีรายการคู่ "key": value ตัวอย่างเช่น { "name": "wrench", "mass": "1.3kg", "count": "3" }

query

string

ไม่บังคับ ข้อมูลที่พิมพ์หรือพูดจากผู้ใช้ปลายทางที่ตรงกับความตั้งใจนี้ ข้อมูลนี้จะป้อนข้อมูลเมื่อความตั้งใจตรงกัน โดยอิงจากข้อมูลที่ผู้ใช้ป้อน

IntentParameterValue

แสดงค่าสำหรับพารามิเตอร์ Intent ดูที่ https://developers.google.com/assistant/conversational/types

การแสดง JSON
{
  "original": string,
  "resolved": value
}
ช่อง
original

string

ต้องระบุ ดึงค่าข้อความต้นฉบับจากคำพูดของผู้ใช้

resolved

value (Value format)

ต้องระบุ ค่าที่มีโครงสร้างของพารามิเตอร์ที่ดึงมาจากข้อมูลจากผู้ใช้ ระบบจะป้อนข้อมูลเฉพาะในกรณีที่พารามิเตอร์กำหนดไว้ใน Intent ที่ตรงกัน และสามารถระบุค่าของพารามิเตอร์ระหว่างการจับคู่ Intent ได้

โหมด

แสดงฉาก โหมดจะเรียกใช้ Fulfillment เพิ่มพรอมต์ และรวบรวมค่าสล็อตจากผู้ใช้ได้ ฉากต่างๆ จะทริกเกอร์โดยเหตุการณ์หรือ Intent ทั้งยังทริกเกอร์เหตุการณ์และจับคู่ Intent เพื่อเปลี่ยนไปใช้ฉากอื่นๆ ได้

การแสดง 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)

ไม่บังคับ ข้อมูลในฉากที่จะดำเนินการถัดไป

SlotFillingStatus

แสดงสถานะปัจจุบันของการเติมช่องโฆษณา

Enum
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)

ไม่บังคับ ระบบจะส่งข้อความแจ้งนี้ไปยังผู้ใช้เมื่อจำเป็นเพื่อเติมช่องที่ต้องระบุ ข้อความแจ้งนี้จะลบล้างพรอมต์ที่มีอยู่ซึ่งกำหนดไว้ในคอนโซล ช่องนี้ไม่รวมอยู่ในคำขอเว็บฮุค

SlotMode

แสดงโหมดของช่อง ซึ่งก็คือหากจำเป็นต้องใช้หรือไม่

Enum
MODE_UNSPECIFIED ค่าสำรองเมื่อไม่มีการใส่ข้อมูลในช่องการใช้งาน
OPTIONAL ระบุว่าไม่จำเป็นต้องเติมช่องโฆษณาให้เสร็จสมบูรณ์
REQUIRED ระบุว่าต้องวางช่องโฆษณาเพื่อเติมลงในช่องให้เสร็จสมบูรณ์

SlotStatus

แสดงสถานะของช่องโฆษณา

Enum
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" จะล้างข้อความที่กำหนดไว้ก่อนหน้าทั้งหมด (ข้อความแรกและที่เรียบง่ายสุดท้าย เนื้อหา ลิงก์คำแนะนำ และ Canvas) และเพิ่มข้อความที่กำหนดไว้ในพรอมต์นี้ "false" จะเพิ่มข้อความที่กำหนดไว้ในพรอมต์นี้ไปยังข้อความที่กำหนดไว้ในคำตอบก่อนหน้า การออกจากช่องนี้เป็น "เท็จ" จะเป็นการเปิดใช้การต่อท้ายบางช่องในข้อความแจ้งแบบง่าย พรอมต์คำแนะนำ และพรอมต์ Canvas (ส่วนหนึ่งของพรอมต์เนื้อหา) ข้อความเนื้อหาและลิงก์จะถูกเขียนทับเสมอหากกำหนดไว้ในข้อความแจ้ง ค่าเริ่มต้นคือ "false"

firstSimple

object (Simple)

ไม่บังคับ คำตอบแรกที่เป็นเสียงและข้อความเท่านั้น

content

object (Content)

ไม่บังคับ เนื้อหา เช่น การ์ด รายการ หรือสื่อที่จะแสดงให้ผู้ใช้เห็น

lastSimple

object (Simple)

ไม่บังคับ คำตอบสุดท้ายด้วยเสียงและข้อความเท่านั้น

suggestions[]

object (Suggestion)

ไม่บังคับ คำแนะนำที่จะแสดงแก่ผู้ใช้ ซึ่งจะปรากฏที่ตอนท้ายของคำตอบเสมอ หากช่อง "ลบล้าง" ในพรอมต์ที่มีคือ "เท็จ" ระบบจะเพิ่มชื่อที่กำหนดในช่องนี้ไปยังชื่อที่กำหนดไว้ในพรอมต์คำแนะนำที่กำหนดไว้ก่อนหน้า และนำค่าที่ซ้ำออก

canvas

object (Canvas)

ไม่บังคับ แสดงการตอบกลับ Canvas แบบอินเทอร์แอกทีฟที่จะส่งถึงผู้ใช้

orderUpdate

object (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)

การ์ดที่แสดงคอลเล็กชันหน้าเว็บเพื่อเปิด

Card

การ์ดพื้นฐานสำหรับการแสดงข้อมูลบางอย่าง เช่น รูปภาพและ/หรือข้อความ โปรดดู 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

ความกว้างของรูปภาพเป็นพิกเซล ไม่บังคับ

ImageFill

ตัวเลือกการแสดงรูปภาพที่อาจมีผลต่อการนำเสนอรูปภาพ ควรใช้เมื่อสัดส่วนภาพของรูปภาพไม่ตรงกับสัดส่วนภาพของคอนเทนเนอร์รูปภาพ

Enum
UNSPECIFIED
GRAY เติมช่องว่างระหว่างอิมเมจและคอนเทนเนอร์อิมเมจด้วยแถบสีเทา
WHITE เติมช่องว่างระหว่างอิมเมจและคอนเทนเนอร์อิมเมจด้วยแถบสีขาว
CROPPED มีการปรับขนาดรูปภาพให้ความกว้างและความสูงของภาพตรงกันหรือเกินขนาดของคอนเทนเนอร์ ซึ่งอาจครอบตัดด้านบนและด้านล่างของรูปภาพหากความสูงของรูปภาพที่ปรับขนาดมากกว่าความสูงของคอนเทนเนอร์ หรือครอบตัดด้านซ้ายและด้านขวาของรูปภาพหากความกว้างของรูปภาพที่ปรับขนาดมากกว่าความกว้างของคอนเทนเนอร์ ซึ่งคล้ายกับ "โหมดซูม" ในทีวีแบบจอกว้างเมื่อเล่นวิดีโอ 4:3

OpenUrl

การแสดง JSON
{
  "url": string,
  "hint": enum (UrlHint)
}
ช่อง
url

string

ฟิลด์ URL ซึ่งอาจเป็นรายการใดรายการหนึ่งต่อไปนี้: - http/https urls สำหรับการเปิดแอปหรือหน้าเว็บที่ลิงก์ไปยังแอป

hint

enum (UrlHint)

ระบุคำแนะนำสำหรับประเภท URL

UrlHint

คำแนะนำ URL ประเภทต่างๆ

Enum
AMP URL ที่ชี้ไปยังเนื้อหา AMP โดยตรง หรือไปยัง Canonical 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)

ข้อมูลแถวของตาราง ระบบรับประกันว่า 3 แถวแรกจะแสดง แต่แถวอื่นๆ อาจถูกตัดออกในบางพื้นผิว โปรดทดสอบด้วยเครื่องมือจำลองเพื่อดูว่าแถวใดจะแสดงขึ้นในพื้นผิวหนึ่งๆ บนแพลตฟอร์มที่รองรับความสามารถ WEB_BROWSER คุณสามารถนำผู้ใช้ไปยังหน้าเว็บที่มีข้อมูลเพิ่มเติมได้

button

object (Link)

ปุ่ม

TableColumn

การแสดง JSON
{
  "header": string,
  "align": enum (HorizontalAlignment)
}
ช่อง
header

string

ข้อความส่วนหัวของคอลัมน์

align

enum (HorizontalAlignment)

การจัดข้อความแนวนอนของคอลัมน์เนื้อหา หากไม่ระบุ เนื้อหาจะอยู่ในแนวเดียวกับขอบที่ด้านหน้า

HorizontalAlignment

การจัดแนวเนื้อหาภายในเซลล์

Enum
UNSPECIFIED
LEADING ขอบที่นำหน้าของเซลล์ โดยตัวเลือกนี้คือค่าเริ่มต้น
CENTER เนื้อหาจะอยู่ในแนวกึ่งกลางของคอลัมน์
TRAILING เนื้อหาจะอยู่ในแนวเดียวกับขอบด้านท้ายของคอลัมน์

TableRow

อธิบายแถวในตาราง

การแสดง JSON
{
  "cells": [
    {
      object (TableCell)
    }
  ],
  "divider": boolean
}
ช่อง
cells[]

object (TableCell)

เซลล์ในแถวนี้ ระบบรับประกันว่าเซลล์ 3 เซลล์แรกจะแสดง แต่เซลล์อื่นอาจถูกตัดในบางพื้นผิว โปรดทดสอบด้วยเครื่องมือจำลองเพื่อดูว่าเซลล์ใดจะแสดงสำหรับพื้นผิวที่ระบุ

divider

boolean

ระบุว่าควรมีตัวแบ่งหลังแต่ละแถวหรือไม่

TableCell

อธิบายเซลล์ในแถว

การแสดง JSON
{
  "text": string
}
ช่อง
text

string

เนื้อหาข้อความของเซลล์

สื่อ

แสดงออบเจ็กต์สื่อ 1 รายการ มีข้อมูลเกี่ยวกับสื่อ เช่น ชื่อ, คำอธิบาย, 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)

ออฟเซ็ตเริ่มต้นของออบเจ็กต์สื่อแรก

ระยะเวลาเป็นวินาทีโดยมีตัวเลขเศษส่วนไม่เกิน 9 หลัก ลงท้ายด้วย "s" เช่น "3.5s"

optionalMediaControls[]

enum (OptionalMediaControls)

ประเภทตัวควบคุมสื่อที่ไม่บังคับซึ่งเซสชันการตอบสนองของสื่อนี้รองรับได้ หากตั้งค่าไว้ ระบบจะส่งคำขอไปที่ 3p เมื่อเกิดเหตุการณ์สื่อบางอย่างขึ้น หากไม่ได้ตั้งค่าไว้ 3p ยังต้องจัดการประเภทการควบคุมเริ่มต้น 2 ประเภท ได้แก่ FINISHED และ FAILED

mediaObjects[]

object (MediaObject)

รายการออบเจ็กต์สื่อ

repeatMode

enum (RepeatMode)

โหมดเล่นซ้ำสำหรับรายการออบเจ็กต์สื่อ

firstMediaObjectIndex

integer

ดัชนีฐาน 0 ของออบเจ็กต์สื่อแรกใน mediaObjects ที่จะเล่น หากไม่ระบุ มีค่าเป็น 0 หรืออยู่นอกขอบเขต การเล่นจะเริ่มที่ออบเจ็กต์สื่อรายการแรกใน mediaObjects

MediaType

ประเภทสื่อของคําตอบนี้

Enum
MEDIA_TYPE_UNSPECIFIED
AUDIO ไฟล์เสียง
MEDIA_STATUS_ACK ตอบกลับเพื่อรับทราบรายงานสถานะสื่อ

OptionalMediaControls

ประเภทตัวควบคุมสื่อที่ไม่บังคับซึ่งการตอบสนองของสื่อรองรับ

Enum
OPTIONAL_MEDIA_CONTROLS_UNSPECIFIED ค่าที่ไม่ได้ระบุไว้
PAUSED เหตุการณ์ที่หยุดชั่วคราว ทริกเกอร์เมื่อผู้ใช้หยุดสื่อชั่วคราว
STOPPED หยุดกิจกรรมแล้ว ทริกเกอร์เมื่อผู้ใช้ออกจากเซสชัน 3p ระหว่างการเล่นสื่อ

MediaObject

แสดงออบเจ็กต์สื่อรายการเดียว

การแสดง JSON
{
  "name": string,
  "description": string,
  "url": string,
  "image": {
    object (MediaImage)
  }
}
ช่อง
name

string

ชื่อของออบเจ็กต์สื่อนี้

description

string

คำอธิบายของออบเจ็กต์สื่อนี้

url

string

URL ที่ชี้ไปยังเนื้อหาสื่อ ไฟล์ MP3 ต้องโฮสต์บนเว็บเซิร์ฟเวอร์และเปิดเผยต่อสาธารณะผ่าน HTTPS URL สตรีมมิงแบบสดรองรับรูปแบบ MP3 เท่านั้น

image

object (MediaImage)

รูปภาพที่จะแสดงกับการ์ดสื่อ

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

RepeatMode

ประเภทของโหมดเล่นซ้ำสำหรับรายการออบเจ็กต์สื่อ

Enum
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)

วิธีเติมพื้นหลังรูปภาพของรายการคอลเล็กชัน ไม่บังคับ

CollectionItem

รายการในคอลเล็กชัน

การแสดง JSON
{
  "key": string
}
ช่อง
key

string

ต้องระบุ คีย์ NLU ที่ตรงกับชื่อคีย์เข้าถึงใน Type ที่เกี่ยวข้อง

รายการ

การ์ดสำหรับนำเสนอรายการตัวเลือกที่มี โปรดดู 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

ListItem

รายการในรายการ

การแสดง JSON
{
  "key": string
}
ช่อง
key

string

ต้องระบุ คีย์ NLU ที่ตรงกับชื่อคีย์เข้าถึงใน Type ที่เกี่ยวข้อง

CollectionBrowse

นำเสนอชุดเอกสารในเว็บเป็นคอลเล็กชันของรายการขนาดใหญ่ รายการอาจได้รับเลือกให้เปิดเอกสารบนเว็บที่เกี่ยวข้องในโปรแกรมดูเว็บ โปรดดู 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 ที่จะเปิดหากรายการที่เลือก

คำแนะนำ

คำแนะนำจะแสดงชิปคำแนะนำให้แก่ผู้ใช้ในอุปกรณ์ที่พร้อมใช้งานจอแสดงผลเมื่อ Assistant แสดงข้อความแจ้ง ใช้ชิปคำแนะนำเพื่อชี้นำการตอบกลับของผู้ใช้เพื่อดำเนินการต่อหรือ Pivot การสนทนา เมื่อแตะ ชิปคำแนะนำจะแสดงข้อความที่แสดงตามการสนทนา เหมือนกับว่าผู้ใช้ได้พิมพ์ข้อความนั้นลงไป ดูที่ https://developers.google.com/assistant/conversational/prompts#suggestions

การแสดง JSON
{
  "title": string
}
ช่อง
title

string

ต้องระบุ ข้อความที่แสดงในชิปคำแนะนำ เมื่อแตะ ข้อความนี้จะถูกโพสต์กลับไปยังการสนทนาแบบคำต่อคำเหมือนกับว่าผู้ใช้ได้พิมพ์ข้อความลงไป ชื่อแต่ละชื่อต้องไม่ซ้ำกันในชุดชิปคำแนะนำ สูงสุด 25 อักขระ

ผืนผ้าใบ

แสดงการตอบกลับ Canvas แบบอินเทอร์แอกทีฟที่จะส่งถึงผู้ใช้ ซึ่งสามารถใช้ร่วมกับช่อง "firstSimple" ในพรอมต์ที่มีเพื่อสื่อสารกับผู้ใช้นอกเหนือจากการแสดงคำตอบ Canvas แบบอินเทอร์แอกทีฟ ขนาดสูงสุดของการตอบสนองคือ 50 กิโลไบต์ โปรดดูที่ https://developers.google.com/assistant/interactivecanvas

การแสดง JSON
{
  "url": string,
  "data": [
    value
  ],
  "suppressMic": boolean,
  "continuousMatchConfig": {
    object (ContinuousMatchConfig)
  }
}
ช่อง
url

string

URL ของเว็บแอป Canvas แบบอินเทอร์แอกทีฟที่จะโหลด หากไม่ได้ตั้งค่า ระบบจะนำ URL จาก Canvas ที่ใช้งานอยู่ปัจจุบันมาใช้ซ้ำ

data[]

value (Value format)

ไม่บังคับ ข้อมูล JSON ที่จะส่งไปยังหน้าเว็บประสบการณ์ที่สมจริงในรูปแบบเหตุการณ์ หากช่อง "ลบล้าง" ในพรอมต์ที่มีคือ "เท็จ" ค่าข้อมูลที่กำหนดไว้ในข้อความแจ้งของ Canvas นี้จะเพิ่มเข้ามาหลังค่าข้อมูลที่กำหนดไว้ในข้อความแจ้งของ Canvas ก่อนหน้านี้

suppressMic

boolean

ไม่บังคับ ค่าเริ่มต้นคือ false

continuousMatchConfig

object (ContinuousMatchConfig)

การกำหนดค่าที่ใช้เพื่อเริ่มโหมดการจับคู่แบบต่อเนื่อง

ContinuousMatchConfig

การกำหนดค่าที่ใช้เพื่อเริ่มโหมดการจับคู่แบบต่อเนื่อง

การแสดง JSON
{
  "expectedPhrases": [
    {
      object (ExpectedPhrase)
    }
  ],
  "durationSeconds": integer
}
ช่อง
expectedPhrases[]

object (ExpectedPhrase)

วลีที่คาดไว้ทั้งหมดในระหว่างเซสชันโหมดการจับคู่แบบต่อเนื่องนี้

durationSeconds

integer

ระยะเวลาที่จะเปิดโหมดการจับคู่แบบต่อเนื่องไว้ หากระบุไว้ ไมค์จะปิดเมื่อหมดเวลา ค่าสูงสุดที่อนุญาตคือ 180

ExpectedPhrase

การแสดง JSON
{
  "phrase": string,
  "alternativePhrases": [
    string
  ]
}
ช่อง
phrase

string

วลีที่จะจับคู่ระหว่างเซสชันโหมดการจับคู่แบบต่อเนื่อง

alternativePhrases[]

string

โมเดลคำพูดอาจจดจำวลีบางอย่างได้ไม่ถูกต้อง แม้ว่าจะให้น้ำหนักพิเศษกับเสียงพูดก็ตาม วิธีนี้ช่วยให้นักพัฒนาซอฟต์แวร์ระบุทริกเกอร์ทางเลือกสำหรับคำพ้องเสียงได้

OrderUpdate

อัปเดตเป็นคำสั่งซื้อ

การแสดง 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

เหตุผลในการเปลี่ยนแปลง/อัปเดต

Type

เลิกใช้งานแล้ว: ใช้ OrderUpdate.update_mask แทน อนุญาตให้อัปเดตคำสั่งซื้อ

Enum
TYPE_UNSPECIFIED ไม่ได้ระบุประเภท ไม่ควรตั้งค่านี้อย่างชัดแจ้ง
ORDER_STATUS อัปเดตสถานะของคำสั่งซื้อเท่านั้น
SNAPSHOT อัปเดตภาพรวมคำสั่งซื้อ

สั่งซื้อ

รายการที่สั่งซื้อ หมายเหตุ: 1. สตริงทั้งหมดในทุกระดับต้องมีอักขระน้อยกว่า 1,000 ตัว เว้นแต่จะระบุไว้เป็นอย่างอื่น 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

เลิกใช้งานแล้ว: ใช้สถานะ Order Extensions แทน ป้ายกำกับที่ผู้ใช้มองเห็นได้สำหรับสถานะของคำสั่งซื้อนี้

buyerInfo

object (UserInfo)

ข้อมูลเกี่ยวกับผู้ซื้อ

image

object (Image)

รูปภาพที่เกี่ยวข้องกับคำสั่งซื้อ

createTime

string (Timestamp format)

ต้องระบุ: วันที่และเวลาที่สร้างคำสั่งซื้อ

การประทับเวลาจะอยู่ในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและมีตัวเลขเศษส่วนได้สูงสุด 9 หลัก ตัวอย่าง: "2014-10-02T15:01:23Z" และ "2014-10-02T15:01:23.045123456Z"

lastUpdateTime

string (Timestamp format)

วันที่และเวลาอัปเดตคำสั่งซื้อครั้งล่าสุด จำเป็นสำหรับคำสั่งซื้ออัปเดต

การประทับเวลาจะอยู่ในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและมีตัวเลขเศษส่วนได้สูงสุด 9 หลัก ตัวอย่าง: "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)

สั่งซื้อตั๋ว

UserInfo

ข้อมูลเกี่ยวกับผู้ใช้ ใช้เพื่อแสดงถึงข้อมูลของผู้ใช้ที่เชื่อมโยงกับคำสั่งซื้อ

การแสดง 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)

หมายเลขโทรศัพท์ของผู้ใช้

PhoneNumber

การแสดงหมายเลขโทรศัพท์มาตรฐาน

การแสดง JSON
{
  "e164PhoneNumber": string,
  "extension": string,
  "preferredDomesticCarrierCode": string
}
ช่อง
e164PhoneNumber

string

หมายเลขโทรศัพท์ในรูปแบบ E.164 ตามที่ระบุไว้ในสหภาพโทรคมนาคมระหว่างประเทศ (ITU) Recommendation E.164 ลิงก์ wiki: https://en.wikipedia.org/wiki/E.164

extension

string

ส่วนขยายในคำแนะนำ ITU ไม่ได้ทำให้เป็นมาตรฐานเดียวกัน ยกเว้นที่กำหนดไว้เป็นชุดตัวเลขที่มีความยาวสูงสุด 40 หลัก สตริงนี้หมายถึงสตริงนี้เพื่อรองรับกรณีที่อาจมีการใช้เลข 0 นำหน้าในส่วนขยาย (องค์กรมีอิสระเต็มที่ในการทำเช่นนั้น เนื่องจากไม่มีการกำหนดมาตรฐานไว้) นอกเหนือจากตัวเลข ระบบอาจเก็บอักขระสำหรับโทรออกอื่นๆ เช่น "," (ระบุว่าต้องรอ) ไว้ที่นี่ ตัวอย่างเช่น ใน xxx-xxx-xxxx ต่อ 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

ชื่อผู้ขาย เช่น "Panera Bread"

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 จะใช้กับ Places API เพื่อดึงรายละเอียดของสถานที่ โปรดดู https://developers.google.com/places/web-service/place-id

LatLng

วัตถุที่แสดงคู่ละติจูด/ลองจิจูด ค่านี้แสดงเป็นเลขคู่ 1 คู่เพื่อแสดงองศาละติจูดและลองจิจูดองศา ออบเจ็กต์นี้ต้องเป็นไปตามมาตรฐาน WGS84 เว้นแต่จะระบุไว้เป็นอย่างอื่น ค่าต้องอยู่ในช่วงมาตรฐาน

การแสดง JSON
{
  "latitude": number,
  "longitude": number
}
ช่อง
latitude

number

ละติจูด หน่วยเป็นองศา โดยต้องอยู่ในช่วง [-90.0, +90.0]

longitude

number

ลองจิจูด หน่วยเป็นองศา โดยต้องอยู่ในช่วง [-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

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 ของเนื้อหาของที่อยู่นี้ (หากทราบ) ซึ่งมักจะเป็นภาษา UI ของแบบฟอร์มการป้อนข้อมูล หรือคาดว่าจะตรงกับภาษาที่ใช้ในประเทศ/ภูมิภาคของที่อยู่ หรือคำทับศัพท์ที่เทียบเท่ากัน การตั้งค่านี้อาจส่งผลต่อการจัดรูปแบบในบางประเทศ แต่ไม่มีผลต่อความถูกต้องของข้อมูล และจะไม่ส่งผลต่อการตรวจสอบความถูกต้องหรือการดำเนินการอื่นๆ ที่เกี่ยวข้องกับการจัดรูปแบบที่ไม่เกี่ยวข้อง

หากไม่ทราบค่านี้ ควรละเว้นค่านี้ (แทนการระบุค่าเริ่มต้นที่อาจไม่ถูกต้อง)

ตัวอย่างเช่น "zh-Hant", "ja", "ja-Latn", "en"

postalCode

string

ไม่บังคับ รหัสไปรษณีย์ของที่อยู่ บางประเทศอาจใช้หรือกำหนดให้รหัสไปรษณีย์แสดงอยู่ แต่มีการใช้รหัสไปรษณีย์ดังกล่าว อาจทำให้มีการตรวจสอบเพิ่มเติมกับส่วนอื่นๆ ของที่อยู่ (เช่น การตรวจสอบความถูกต้องของรัฐ/รหัสไปรษณีย์ในสหรัฐอเมริกา)

sortingCode

string

ไม่บังคับ รหัสการจัดเรียงเพิ่มเติมเฉพาะสำหรับแต่ละประเทศ ไม่ได้ใช้ในภูมิภาคส่วนใหญ่ ในกรณีที่ใช้ ค่าจะเป็นสตริง เช่น "CEDEX" ซึ่งอาจตามด้วยตัวเลข (เช่น "CEDEX 7") หรือเป็นตัวเลขเพียงอย่างเดียวก็ได้ ซึ่งแสดง "รหัสภาค" (จาเมกา) "ตัวบ่งชี้พื้นที่จัดส่ง" (มาลาวี) หรือ "ตัวบ่งชี้ที่ทำการไปรษณีย์" (เช่น โกตดิวัวร์)

administrativeArea

string

ไม่บังคับ เขตปกครองที่สูงที่สุดที่ใช้สำหรับที่อยู่ทางไปรษณีย์ของประเทศหรือภูมิภาค เช่น รัฐ จังหวัด แคว้น หรือจังหวัด โดยเฉพาะอย่างยิ่ง สำหรับสเปน นี่คือจังหวัดนี้ไม่ใช่ชุมชนปกครองตนเอง (เช่น "บาร์เซโลนา" ไม่ใช่ "คาตาโลเนีย") หลายประเทศไม่ใช้เขตบริหารในที่อยู่ไปรษณีย์ เช่น ในประเทศสวิตเซอร์แลนด์ ไม่ควรมีการใส่ข้อมูล

locality

string

ไม่บังคับ โดยทั่วไปจะหมายถึงส่วนของเมือง/จังหวัดของที่อยู่ ตัวอย่าง: เมืองในสหรัฐอเมริกา ชุมชนด้านไอที เมืองตามเขตไปรษณีย์ของสหราชอาณาจักร ในภูมิภาคของโลกซึ่งมีการกำหนดย่านไม่ถูกต้องหรือไม่อยู่ในโครงสร้างนี้ ให้ปล่อยตำแหน่งว่างไว้และใช้ addressLines

sublocality

string

ไม่บังคับ สถานที่ตั้งย่อยของที่อยู่ ซึ่งอาจเป็นย่านใกล้เคียง เขตเมือง เขต

addressLines[]

string

บรรทัดที่อยู่ที่ไม่มีโครงสร้างซึ่งอธิบายถึงที่อยู่ในระดับที่ต่ำกว่า

เนื่องจากค่าใน addressLines ไม่มีข้อมูลประเภท และบางครั้งอาจมีค่าหลายค่าในช่องเดียว (เช่น "Austin, TX") จึงจำเป็นต้องมีลำดับบรรทัดที่ชัดเจน ลำดับของบรรทัดที่อยู่ควรเป็น "ลำดับเอนเวโลป" สำหรับประเทศ/ภูมิภาคของที่อยู่ ซึ่งในที่ต่างๆ ที่อาจแตกต่างกัน (เช่น ญี่ปุ่น) address_language จะใช้เพื่อทำให้ชัดเจน (เช่น "ja" สำหรับลำดับจากขนาดใหญ่ไปเล็ก และ "ja-Latn" หรือ "en" สำหรับขนาดเล็กไปใหญ่) วิธีนี้จะทำให้บรรทัดของที่อยู่ที่เฉพาะเจาะจงมากที่สุดสามารถเลือกตามภาษาได้

การแสดงโครงสร้างที่อยู่ขั้นต่ำที่อนุญาตประกอบด้วยรหัสภูมิภาคพร้อมข้อมูลที่เหลืออยู่ทั้งหมดในบรรทัดที่อยู่ คุณอาจจะสามารถจัดรูปแบบที่อยู่ดังกล่าวได้อย่างคร่าวๆ โดยไม่ต้องมีการระบุพิกัดทางภูมิศาสตร์ แต่จะไม่สามารถให้เหตุผลเชิงความหมายเกี่ยวกับองค์ประกอบของที่อยู่ใดๆ ได้จนกว่าอย่างน้อยการแก้ไขจะได้รับการแก้ไขเป็นบางส่วน

การสร้างที่อยู่มีเฉพาะรหัสภูมิภาคและบรรทัดที่อยู่ จากนั้นระบุพิกัดทางภูมิศาสตร์เป็นวิธีที่แนะนำในการจัดการที่อยู่ที่ไม่มีโครงสร้างโดยสิ้นเชิง (แทนการเดาว่าส่วนใดของที่อยู่ควรเป็นย่านหรือเขตบริหาร)

recipients[]

string

ไม่บังคับ ผู้รับที่ที่อยู่ ในบางกรณี ฟิลด์นี้อาจมีข้อมูลหลายบรรทัด ตัวอย่างเช่น อาจมีข้อมูล "การดูแล"

organization

string

ไม่บังคับ ชื่อขององค์กรตามที่อยู่

เนื้อหา

Wrapper สำหรับรายการโฆษณา

การแสดง JSON
{
  "lineItems": [
    {
      object (LineItem)
    }
  ]
}
ช่อง
lineItems[]

object (LineItem)

รายชื่อรายการโฆษณาของคำสั่งซื้อ ต้องมีรายการโฆษณาอย่างน้อย 1 รายการและอนุญาตได้สูงสุด 50 รายการ รายการโฆษณาทั้งหมดต้องอยู่ในประเภทธุรกิจเดียวกัน

LineItem

รายการโฆษณา 1 รายการมีประเภทธุรกิจ 1 รายการ คำสั่งซื้อหรือรถเข็นรายการหนึ่งสามารถมีรายการโฆษณาประเภทเดียวกันได้หลายรายการ ควรกำหนดรายการโฆษณาย่อย/ส่วนเสริมและอื่นๆ ในโปรโตคอลแนวตั้งโดยขึ้นอยู่กับกรณีการใช้งาน หมายเหตุ: 1. สตริงทั้งหมดในทุกระดับต้องมีอักขระน้อยกว่า 1,000 ตัว เว้นแต่จะระบุไว้เป็นอย่างอื่น 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)

ลูกค้าระดับรายการโฆษณา ซึ่งอาจแตกต่างจากผู้ซื้อระดับคำสั่งซื้อ ตัวอย่าง: ผู้ใช้ ก จองร้านอาหารภายใต้ชื่อผู้ใช้ ข

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)

คำสั่งซื้อการจอง เช่น ร้านอาหาร บริการตัดผม ฯลฯ

PriceAttribute

แอตทริบิวต์ราคาของคำสั่งซื้อหรือรายการโฆษณา

การแสดง 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 แสดงจำนวนเงินหรือมิลลิเปอร์เซ็นต์ spec ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
amount

object (Money)

จำนวนเงิน

amountMillipercentage
(deprecated)

integer

เปอร์เซ็นต์ข้อกำหนดถึง 1/1000 ของเปอร์เซ็นต์ เช่น 8.750% จะแทน 8750 ส่วนค่าเปอร์เซ็นต์ติดลบหมายถึงเปอร์เซ็นต์ส่วนลด กำลังเลิกใช้งานช่องนี้ พิจารณาเพิ่มกลับเข้าไปได้เมื่อจำเป็นต้องใช้ Use Case ที่มั่นคง

Type

แสดงประเภทของเงิน

Enum
TYPE_UNSPECIFIED ไม่ได้ระบุประเภท ลูกค้าไม่ควรต้องตั้งค่านี้อย่างชัดแจ้ง
REGULAR ราคาที่แสดงปกติ ก่อนที่จะใช้ส่วนลด ฯลฯ
DISCOUNT จะถูกหักออกจากผลรวมย่อย
TAX จะเพิ่มในผลรวมย่อย
DELIVERY จะเพิ่มในผลรวมย่อย
SUBTOTAL ยอดรวมย่อยก่อนอาจมีค่าธรรมเนียม
FEE ค่าธรรมเนียมเพิ่มเติม
GRATUITY จะเพิ่มในผลรวมย่อย
TOTAL ราคาที่แสดงของคำสั่งซื้อหรือรายการโฆษณา

รัฐ

แสดงสถานะราคา

Enum
STATE_UNSPECIFIED ไม่ได้ระบุ
ESTIMATE ราคานี้เป็นเพียงค่าประมาณ แต่จำนวนเงินสุดท้ายน่าจะใกล้เคียงกับจำนวนเงินนี้ ตัวอย่างเช่น ในกรณีที่ไม่ทราบภาษีอย่างถูกต้อง ณ เวลาที่ทำธุรกรรม ยอดรวมจะเป็นจำนวน ESTIMATE
ACTUAL ราคาจริงที่จะเรียกเก็บจากผู้ใช้

สกุลเงิน

แสดงจำนวนเงินพร้อมประเภทสกุลเงิน

การแสดง JSON
{
  "currencyCode": string,
  "amountInMicros": string
}
ช่อง
currencyCode

string

รหัสสกุลเงิน 3 ตัวอักษรที่กำหนดไว้ใน 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

การดำเนินการเพื่อติดตามผลที่เป็นไปได้

Enum
TYPE_UNSPECIFIED การดำเนินการที่ไม่ได้ระบุ
VIEW_DETAILS ดูการทํางานของรายละเอียดคําสั่งซื้อ
MODIFY แก้ไขการดำเนินการคำสั่งซื้อ
CANCEL ยกเลิกการดำเนินการสั่งซื้อ
RETURN การดำเนินการคืนสินค้า
EXCHANGE การดำเนินการสั่งซื้อ Exchange
EMAIL

การทำงานของอีเมล เลิกใช้งานประเภทอีเมลและ CALL แล้ว คุณสามารถใช้ openUrlAction.url เป็นหมายเลขโทรศัพท์หรืออีเมลได้

CALL

การเรียกร้องให้ดำเนินการ

REORDER เรียงลำดับการดำเนินการใหม่
REVIEW ตรวจสอบการดำเนินการสั่งซื้อ
CUSTOMER_SERVICE โปรดติดต่อฝ่ายบริการลูกค้า
FIX_ISSUE นำไปยังเว็บไซต์หรือแอปของผู้ขายเพื่อแก้ไขปัญหา
DIRECTION ลิงก์เส้นทาง

OpenUrlAction

เปิด URL ที่ระบุ

การแสดง JSON
{
  "url": string,
  "androidApp": {
    object (AndroidApp)
  },
  "urlTypeHint": enum (UrlTypeHint)
}
ช่อง
url

string

ฟิลด์ URL ซึ่งอาจเป็นรายการใดรายการหนึ่งต่อไปนี้: - http/https urls สำหรับการเปิดแอปหรือหน้าเว็บที่ลิงก์ไปยังแอป

androidApp

object (AndroidApp)

ข้อมูลเกี่ยวกับแอป Android หากคาดว่า URL นั้นจะมีการเติมเต็มโดยแอป Android

urlTypeHint

enum (UrlTypeHint)

ระบุคำแนะนำสำหรับประเภท URL

AndroidApp

ข้อกําหนดของแอป Android สําหรับข้อจํากัดด้านการดําเนินการตามคําสั่งซื้อ

การแสดง JSON
{
  "packageName": string,
  "versions": [
    {
      object (VersionFilter)
    }
  ]
}
ช่อง
packageName

string

ต้องระบุชื่อแพ็กเกจเมื่อระบุ Android Fulfillment

versions[]

object (VersionFilter)

เมื่อมีการระบุตัวกรองหลายรายการ การจับคู่กับตัวกรองใดๆ จะทริกเกอร์แอป

VersionFilter

คุณควรรวม VersionFilter หากต้องใช้แอปเฉพาะบางเวอร์ชัน

การแสดง JSON
{
  "minVersion": integer,
  "maxVersion": integer
}
ช่อง
minVersion

integer

รหัสเวอร์ชันต่ำสุดหรือ 0 รวมเลขตัวแรกและตัวสุดท้าย

maxVersion

integer

รวมรหัสเวอร์ชันสูงสุด ช่วงที่ถือว่าเป็น [minVersion:maxVersion] ช่วงค่า Null หมายถึงเวอร์ชันใดๆ ตัวอย่าง: หากต้องการระบุเวอร์ชันเดียว ให้ใช้ [target_version:target_version] หากต้องการระบุเวอร์ชันใดก็ตาม ไม่ต้องระบุ minVersion และ maxVersion หากต้องการระบุทุกเวอร์ชันจนถึง maxVersion ให้ปล่อย minVersion ว่างไว้ หากต้องการระบุทุกเวอร์ชันจาก minVersion ไม่ต้องระบุ maxVersion

UrlTypeHint

คำแนะนำ URL ประเภทต่างๆ

Enum
URL_TYPE_HINT_UNSPECIFIED ไม่ระบุ
AMP_CONTENT URL ที่ชี้ไปยังเนื้อหา AMP โดยตรง หรือไปยัง Canonical URL ที่อ้างถึงเนื้อหา AMP ผ่านทาง <link rel="amphtml">

ActionMetadata

ข้อมูลเมตาที่เกี่ยวข้องต่อการดำเนินการ

การแสดง JSON
{
  "expireTime": string
}
ช่อง
expireTime

string (Timestamp format)

เวลาที่การดำเนินการนี้จะหมดอายุ

การประทับเวลาจะอยู่ในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและมีตัวเลขเศษส่วนได้สูงสุด 9 หลัก ตัวอย่าง: "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}" ข้อความการเปิดเผยนี้ต้องไม่มีเนื้อหาส่งเสริมการขายหรือเนื้อหาที่คล้ายโฆษณา

DisclosurePresentationOptions

ตัวเลือกสำหรับการนำเสนอการเปิดเผยข้อมูล

การแสดง JSON
{
  "presentationRequirement": enum (PresentationRequirement),
  "initiallyExpanded": boolean
}
ช่อง
presentationRequirement

enum (PresentationRequirement)

ข้อกําหนดในการนำเสนอการเปิดเผยข้อมูล

initiallyExpanded

boolean

ควรขยายเนื้อหาของการเปิดเผยข้อมูลตั้งแต่แรกหรือไม่ โดยค่าเริ่มต้น จะยุบไว้ในตอนแรก

PresentationRequirement

ข้อกำหนดสำหรับการนำเสนอการเปิดเผยข้อมูล

Enum
REQUIREMENT_UNSPECIFIED ไม่ได้ระบุข้อกำหนด ไม่ควรตั้งค่านี้อย่างชัดแจ้ง
REQUIREMENT_OPTIONAL คุณจะเปิดเผยข้อมูลนี้หรือไม่ก็ได้ สามารถข้ามได้หากอุปกรณ์ไม่รองรับการแสดงการเปิดเผย
REQUIREMENT_REQUIRED ต้องมีการเปิดเผยข้อมูล การสนทนาจะส่งไปยังโทรศัพท์หากอุปกรณ์ไม่รองรับการแสดงการเปิดเผย

PurchaseItemExtension

เนื้อหารายการโฆษณาของประเภทธุรกิจการซื้อ

การแสดง 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 อักขระ

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. ระบุฟิลด์ใน PurchaseItemExtension หากสามารถใช้ฟิลด์ดังกล่าวได้สำหรับกรณีการใช้งานอื่นๆ (เช่น ความสามารถ/ฟังก์ชันการทำงานทั่วไป) 2. ใช้ vertical_extension หากเป็นแค่กรณีการใช้งาน/ฟีเจอร์ที่กำหนดเองที่ไม่ใช่ทั่วไป

ออบเจ็กต์ที่มีช่องประเภทที่กำหนดเอง ช่องเพิ่มเติม "@type" จะมี URI ที่ระบุประเภท ตัวอย่างเช่น { "id": 1234, "@type": "types.example.com/standard/id" }

PurchaseStatus

สถานะการซื้อที่เชื่อมโยงกับใบสั่งซื้อหรือรายการโฆษณาหนึ่งๆ

Enum
PURCHASE_STATUS_UNSPECIFIED ไม่ได้ระบุสถานะ
READY_FOR_PICKUP พร้อมให้มารับแล้ว
SHIPPED จัดส่งแล้ว
DELIVERED นำส่งแล้ว
OUT_OF_STOCK สินค้าหมด
IN_PREPARATION "IN_PREPARATION" อาจมีความหมายต่างกันในบริบทที่ต่างกัน สำหรับการสั่งอาหาร อาจเป็นการจัดเตรียมอาหาร สำหรับค้าปลีก อาจเป็นสินค้าที่อยู่ระหว่างบรรจุหีบห่อ
CREATED สร้างคำสั่งซื้อแล้ว
CONFIRMED ผู้ขายยืนยันคำสั่งซื้อแล้ว
REJECTED ผู้ขายปฏิเสธคำสั่งซื้อหรือรายการโฆษณา
RETURNED ผู้ใช้ส่งคืนสินค้า
CANCELLED ผู้ใช้ยกเลิกคำสั่งซื้อหรือรายการโฆษณาแล้ว
CHANGE_REQUESTED ผู้ใช้ได้ขอเปลี่ยนแปลงคำสั่งซื้อและผู้รวมระบบกำลังดำเนินการการเปลี่ยนแปลงนี้ ควรย้ายคำสั่งซื้อไปยังสถานะอื่นหลังจากจัดการคำขอแล้ว

PurchaseType

หมวดหมู่การซื้อ

Enum
PURCHASE_TYPE_UNSPECIFIED ค่าที่ไม่รู้จัก
RETAIL ซึ่งรวมถึงการซื้อสินค้าต่างๆ เช่น สินค้าที่จับต้องได้
FOOD ซึ่งรวมถึงการซื้ออาหารด้วย
GROCERY การซื้อของชำ
MOBILE_RECHARGE การซื้อแบบเติมเงินมือถือ

MerchantUnitMeasure

มาตรวัดราคาต่อหน่วยของผู้ขาย

การแสดง JSON
{
  "measure": number,
  "unit": enum (Unit)
}
ช่อง
measure

number

ค่า: ตัวอย่าง 1.2

unit

enum (Unit)

หน่วย: ตัวอย่าง POUND, GRAM

หน่วย

Enum
UNIT_UNSPECIFIED ไม่ได้ระบุหน่วย
MILLIGRAM มิลลิกรัม
GRAM กรัม
KILOGRAM กิโลกรัม
OUNCE ออนซ์
POUND ปอนด์

PurchaseReturnsInfo

แสดงผลข้อมูลที่เชื่อมโยงกับคำสั่งซื้อหรือรายการโฆษณาที่เฉพาะเจาะจง

การแสดง JSON
{
  "isReturnable": boolean,
  "daysToReturn": integer,
  "policyUrl": string
}
ช่อง
isReturnable

boolean

หากเป็น "จริง" ระบบจะอนุญาตให้ "แสดงผล" ได้

daysToReturn

integer

ซึ่งอนุญาตให้คืนสินค้าได้ภายในหลายวัน

policyUrl

string

ลิงก์ไปยังนโยบายคืนสินค้า

PurchaseFulfillmentInfo

ข้อมูลการดำเนินการตามคำสั่งซื้อที่เชื่อมโยงกับใบสั่งซื้อหรือรายการโฆษณาที่เฉพาะเจาะจง

การแสดง 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)

ต้องระบุ: ประเภทของ Fulfillment

expectedFulfillmentTime

object (Time)

กรอบเวลาถ้ามีการระบุช่วงเวลา หรือเวลาถึงโดยประมาณถ้าระบุเวลาเดียว เวลานำส่งหรือรับสินค้าที่คาดไว้

expectedPreparationTime

object (Time)

กรอบเวลาถ้ามีการระบุช่วงเวลา หรือเวลาถึงโดยประมาณถ้าระบุเวลาเดียว เวลาที่คาดว่าจะเตรียมอาหาร แนะนำให้ใช้ครั้งเดียว

location

object (Location)

สถานที่รับหรือจัดส่งสินค้า

expireTime

string (Timestamp format)

เวลาที่ตัวเลือกการดำเนินการตามคำสั่งซื้อนี้หมดอายุ

การประทับเวลาจะอยู่ในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและมีตัวเลขเศษส่วนได้สูงสุด 9 หลัก ตัวอย่าง: "2014-10-02T15:01:23Z" และ "2014-10-02T15:01:23.045123456Z"

price

object (PriceAttribute)

ค่าใช้จ่ายของตัวเลือกนี้

fulfillmentContact

object (UserInfo)

ข้อมูลติดต่อของผู้ใช้สำหรับการดำเนินการตามคำสั่งซื้อนี้

shippingMethodName

string

ชื่อวิธีการจัดส่งที่ผู้ใช้เลือก

storeCode

string

รหัสร้านค้าของตำแหน่ง ตัวอย่างเช่น Walmart เป็นผู้ขาย และ storeCode คือร้าน Walmart ที่มีการจำหน่ายที่ https://support.google.com/business/answer/3370250?ref_topic=4596653

pickupInfo

object (PickupInfo)

ข้อมูลเพิ่มเติมเกี่ยวกับวิธีการเลือกคำสั่งซื้อ ช่องนี้จะใช้ได้เฉพาะเมื่อประเภทการดำเนินการตามคำสั่งซื้อคือ "รับสินค้า" เท่านั้น

Type

ประเภทการดำเนินการตามคำสั่งซื้อ

Enum
TYPE_UNSPECIFIED ไม่ได้ระบุประเภท
DELIVERY คำสั่งซื้อนี้จะถูกจัดส่ง
PICKUP ต้องไปรับคำสั่งซื้อนี้

เวลา

โครงสร้างเวลาเพื่อแสดงเวลาของเหตุการณ์ที่จะใช้เมื่อแสดงคำสั่งซื้อให้แก่ผู้ใช้

การแสดง JSON
{
  "timeIso8601": string
}
ช่อง
timeIso8601

string

แสดงเวลาเหตุการณ์คำสั่งซื้อ เช่น เวลาจอง เวลานำส่ง และอื่นๆ อาจเป็นระยะเวลา (เวลาเริ่มต้นและสิ้นสุด) ได้เฉพาะวันที่ วันที่และเวลา ฯลฯ ดูรูปแบบที่รองรับทั้งหมดได้ที่ https://en.wikipedia.org/wiki/ISO_8601

PickupInfo

รายละเอียดเกี่ยวกับวิธีรับสินค้า ซึ่งจะมีรายละเอียดต่างๆ เช่น ประเภทการรับสินค้าและข้อมูลเมตาเพิ่มเติมที่แนบมากับแต่ละประเภท (หากมี)

การแสดง JSON
{
  "pickupType": enum (PickupType),
  "curbsideInfo": {
    object (CurbsideInfo)
  },
  "checkInInfo": [
    {
      object (CheckInInfo)
    }
  ]
}
ช่อง
pickupType

enum (PickupType)

วิธีรับสินค้า เช่น INSTORE, CURBSIDE ฯลฯ

curbsideInfo

object (CurbsideInfo)

รายละเอียดเฉพาะสำหรับข้อมูลโดยไม่ต้องลงจากรถ หาก pickupType ไม่ใช่ "CURBSIDE" ระบบจะไม่สนใจช่องนี้

checkInInfo[]

object (CheckInInfo)

รายการวิธีการต่างๆ ที่พาร์ทเนอร์รองรับเพื่อรองรับการเช็คอิน

PickupType

รายการประเภทการรับสินค้าที่รองรับ

Enum
UNSPECIFIED ไม่ได้ระบุประเภทการรับสินค้า
INSTORE รับอาหารในร้าน
CURBSIDE จอดรถในจุดที่กำหนดไว้นอกร้านอาหาร แล้วคนจะนำอาหารมาส่ง

CurbsideInfo

รายละเอียดเกี่ยวกับวิธีอำนวยความสะดวกให้ลูกค้าโดยไม่ต้องลงจากรถ

การแสดง JSON
{
  "curbsideFulfillmentType": enum (CurbsideFulfillmentType),
  "userVehicle": {
    object (Vehicle)
  }
}
ช่อง
curbsideFulfillmentType

enum (CurbsideFulfillmentType)

พาร์ทเนอร์ต้องการข้อมูลเพิ่มเติมเพื่ออำนวยความสะดวกให้คำสั่งซื้อแบบไปรับเองโดยไม่ต้องลงจากรถ ระบบจะรวบรวมรายละเอียดที่เกี่ยวข้องจากผู้ใช้ ทั้งนี้ขึ้นอยู่กับประเภทการดำเนินการตามคำสั่งซื้อที่เลือก

userVehicle

object (Vehicle)

รายละเอียดยานพาหนะของผู้ใช้สั่งซื้อ

CurbsideFulfillmentType

ค่าที่เป็นไปได้ของประเภท Fulfillment โดยไม่ต้องลงจากรถ

Enum
UNSPECIFIED ไม่ได้ระบุประเภท Fulfillment ริมทาง
VEHICLE_DETAIL ต้องมีรายละเอียดของยานพาหนะเพื่อช่วยในการรับสินค้าโดยไม่ต้องลงจากรถ

ยานพาหนะ

รายละเอียดเกี่ยวกับยานพาหนะ

การแสดง JSON
{
  "make": string,
  "model": string,
  "licensePlate": string,
  "colorName": string,
  "image": {
    object (Image)
  }
}
ช่อง
make

string

ยี่ห้อยานพาหนะ (เช่น "Honda") ซึ่งจะแสดงให้ผู้ใช้เห็นและต้องแปลเป็นภาษาท้องถิ่น ต้องระบุ

model

string

รุ่นของยานพาหนะ (เช่น "Grom") ซึ่งจะแสดงให้ผู้ใช้เห็นและต้องแปลเป็นภาษาท้องถิ่น ต้องระบุ

licensePlate

string

หมายเลขป้ายทะเบียนรถ (เช่น "1ABC234") ต้องระบุ

colorName

string

ชื่อสียานพาหนะ เช่น สีดำ (ไม่บังคับ)

image

object (Image)

URL ไปยังรูปภาพของยานพาหนะ รูปภาพจะแสดงที่ขนาดประมาณ 256x256 พิกเซล ต้องเป็น jpg หรือ png ไม่บังคับ

CheckInInfo

พาร์ทเนอร์ต้องมีข้อมูลเมตาเพื่อรองรับวิธีการเช็คอิน

การแสดง JSON
{
  "checkInType": enum (CheckInType)
}
ช่อง
checkInType

enum (CheckInType)

วิธีที่ใช้ส่งวิธีการเช็คอิน

CheckInType

วิธีการต่างๆ ที่ใช้ส่งวิธีการเช็คอิน

Enum
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)

เพื่อกำหนดตัวเลือกย่อยอื่นๆ ที่ฝังอยู่

ProductDetails

รายละเอียดเกี่ยวกับผลิตภัณฑ์

การแสดง JSON
{
  "productId": string,
  "gtin": string,
  "plu": string,
  "productType": string,
  "productAttributes": {
    string: string,
    ...
  }
}
ช่อง
productId

string

รหัสผลิตภัณฑ์หรือข้อเสนอที่เชื่อมโยงกับรายการโฆษณานี้

gtin

string

หมายเลขสินค้าการค้าสากลของผลิตภัณฑ์ มีประโยชน์หากไม่มี OfferId ใน Merchant Center ไม่บังคับ

plu

string

รหัสค้นหาราคาซึ่งมักเรียกว่ารหัส PLU, หมายเลข PLU, PLU, รหัสสำหรับผลิต หรือฉลากผลผลิต เป็นระบบตัวเลขที่ระบุผลิตภัณฑ์แบบจำนวนมากที่ขายในร้านขายของชำและซูเปอร์มาร์เก็ตได้อย่างแน่ชัด

productType

string

หมวดหมู่ผลิตภัณฑ์ที่ผู้ขายกำหนด เช่น "หน้าแรก > ของชำ > นมและไข่ > นม > นมไขมันเต็ม"

productAttributes

map (key: string, value: string)

รายละเอียดผลิตภัณฑ์ที่ผู้ขายระบุ เช่น { "allergen": "peanut" } ซึ่งจะเป็นประโยชน์ในกรณีที่ไม่มี OfferId ไว้ใน Merchant Center ไม่บังคับ

ออบเจ็กต์ที่มีรายการคู่ "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 อักขระ

type

enum (ReservationType)

ประเภทการจอง อาจยกเลิกการตั้งค่าหากไม่มีตัวเลือกประเภทใดเลย

reservationTime

object (Time)

เวลาที่มีการกำหนดเวลาบริการ/กิจกรรมไว้ ซึ่งอาจเป็นช่วงเวลา วันที่ หรือวันที่และเวลาที่แน่นอนก็ได้

userAcceptableTimeRange

object (Time)

ช่วงเวลาที่ผู้ใช้ยอมรับ

confirmationCode

string

รหัสยืนยันสำหรับการจองนี้

partySize

integer

จำนวนคน

staffFacilitators[]

object (StaffFacilitator)

เจ้าหน้าที่อำนวยความสะดวกที่จะให้บริการการจอง เช่น ช่างทำผม

location

object (Location)

ตำแหน่งของบริการ/เหตุการณ์

ReservationStatus

สถานะการจอง

Enum
RESERVATION_STATUS_UNSPECIFIED สถานะที่ไม่ได้ระบุ
PENDING การจองอยู่ระหว่างรอดำเนินการ
CONFIRMED ยืนยันการจองแล้ว
CANCELLED ผู้ใช้ยกเลิกการจอง
FULFILLED ดำเนินการจองแล้ว
CHANGE_REQUESTED ต้องระบุการเปลี่ยนแปลงการจอง
REJECTED การจองหมดอายุหรือถูกปฏิเสธโดยผู้ผสานการทำงาน

ReservationType

ประเภทการจอง

Enum
RESERVATION_TYPE_UNSPECIFIED ไม่ระบุประเภท
RESTAURANT การจองร้านอาหาร
HAIRDRESSER การจองสำหรับช่างทำผม

StaffFacilitator

ข้อมูลเกี่ยวกับผู้รับบริการ

การแสดง JSON
{
  "name": string,
  "image": {
    object (Image)
  }
}
ช่อง
name

string

ชื่อวิทยากรเจ้าหน้าที่ เช่น "สมชาย สกุลดี"

image

object (Image)

รูปภาพของผู้แสดง

PaymentData

ข้อมูลการชำระเงินที่เกี่ยวข้องกับคำสั่งซื้อ

การแสดง JSON
{
  "paymentResult": {
    object (PaymentResult)
  },
  "paymentInfo": {
    object (PaymentInfo)
  }
}
ช่อง
paymentResult

object (PaymentResult)

ผลการชำระเงินที่ผู้รวมระบบใช้ในการทำธุรกรรมให้เสร็จสมบูรณ์ Actions on Google จะป้อนข้อมูลในช่องนี้ หากประสบการณ์การชำระเงินได้รับการจัดการโดย Actions-on-Google

paymentInfo

object (PaymentInfo)

ข้อมูลการชำระเงินเกี่ยวกับคำสั่งซื้อที่เป็นประโยชน์สำหรับการโต้ตอบที่ผู้ใช้เห็น

PaymentResult

ผู้รวมบริการใช้ผลการชำระเงินสำหรับการทำธุรกรรมให้เสร็จสมบูรณ์

การแสดง 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

วิธีการชำระเงินที่ผู้ขาย/การดำเนินการที่ผู้ใช้เลือก

PaymentInfo

ข้อมูลการชำระเงินเกี่ยวกับคำสั่งซื้อที่ดำเนินการ โปรโตคอลนี้บันทึกข้อมูลที่เป็นประโยชน์สำหรับการโต้ตอบที่แสดงต่อผู้ใช้

การแสดง JSON
{
  "paymentMethodDisplayInfo": {
    object (PaymentMethodDisplayInfo)
  },
  "paymentMethodProvenance": enum (PaymentMethodProvenance)
}
ช่อง
paymentMethodDisplayInfo

object (PaymentMethodDisplayInfo)

ข้อมูลที่แสดงของวิธีการชำระเงินที่ใช้ทำธุรกรรม

paymentMethodProvenance

enum (PaymentMethodProvenance)

แหล่งที่มาของวิธีการชำระเงินที่ใช้ทำธุรกรรม ผู้ใช้อาจลงทะเบียนวิธีการชำระเงินเดียวกันทั้งกับ Google และผู้ขาย

PaymentMethodDisplayInfo

ผู้รวมบริการใช้ผลการชำระเงินสำหรับการทำธุรกรรมให้เสร็จสมบูรณ์

การแสดง JSON
{
  "paymentType": enum (PaymentType),
  "paymentMethodDisplayName": string,
  "paymentMethodVoiceName": string
}
ช่อง
paymentType

enum (PaymentType)

ประเภทของการชำระเงิน

paymentMethodDisplayName

string

ชื่อวิธีการชำระเงินที่แสดงต่อผู้ใช้ เช่น VISA **** 1234 บัญชีกระแสรายวัน **** 5678

paymentMethodVoiceName

string

ชื่อวิธีการชำระเงินที่จะพูดอธิบายผู้ใช้สำหรับอุปกรณ์ Assistant แบบใช้เสียงเท่านั้น เช่น "วีซ่าที่ลงท้ายด้วย 1-234" หรือ "กำลังตรวจสอบบัญชีที่ลงท้ายด้วย 5678" หมายเหตุ: นี่คือสตริงที่เพิ่มประสิทธิภาพด้วยเสียงที่จะใช้แทน paymentMethodDisplayName สำหรับอุปกรณ์ Assistant แบบเสียงเท่านั้น หากไม่ได้ตั้งค่าสตริงนี้ ระบบจะบอกผู้ใช้ paymentMethodDisplayName แทน

PaymentType

PaymentType จะระบุรูปแบบการชำระเงินที่ใช้สำหรับวิธีการชำระเงินที่ผู้ขายระบุ การดำเนินการต้องระบุชื่อที่แสดงของวิธีการชำระเงินด้วย

Enum
PAYMENT_TYPE_UNSPECIFIED ไม่ได้ระบุประเภทการชำระเงิน
PAYMENT_CARD บัตรเครดิต/เดบิตหรือบัตรชำระเงินล่วงหน้า
BANK วิธีการชำระเงินคือบัญชีธนาคาร
LOYALTY_PROGRAM วิธีการชำระเงินเป็นโปรแกรมสะสมคะแนน
CASH วิธีการชำระเงินคือเงินสด
GIFT_CARD วิธีการชำระเงินคือบัตรของขวัญ
WALLET กระเป๋าเงินของบุคคลที่สาม เช่น PayPal

PaymentMethodProvenance

แสดงแหล่งที่มาของวิธีการชำระเงินที่ใช้สำหรับธุรกรรม

Enum
PAYMENT_METHOD_PROVENANCE_UNSPECIFIED ไม่ได้ระบุแหล่งที่มา
PAYMENT_METHOD_PROVENANCE_GOOGLE แหล่งที่มาคือ Google
PAYMENT_METHOD_PROVENANCE_MERCHANT หลักฐานเป็นผู้ขาย

โปรโมชัน

โปรโมชัน/ข้อเสนอที่เพิ่มลงในรถเข็น

การแสดง JSON
{
  "coupon": string
}
ช่อง
coupon

string

ต้องระบุ: รหัสคูปองที่ใช้กับข้อเสนอนี้

PurchaseOrderExtension

ส่วนขยายคำสั่งซื้อสำหรับประเภทธุรกิจการซื้อ คุณสมบัติเหล่านี้ใช้ได้กับรายการโฆษณาทั้งหมดในคำสั่งซื้อ เว้นแต่จะมีการลบล้างในรายการโฆษณา

การแสดง 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 อักขระ

type

enum (PurchaseType)

ต้องระบุ: ประเภทของการซื้อ

returnsInfo

object (PurchaseReturnsInfo)

ข้อมูลการคืนสินค้าสำหรับคำสั่งซื้อ

fulfillmentInfo

object (PurchaseFulfillmentInfo)

ข้อมูลการดำเนินการตามคำสั่งซื้อ

purchaseLocationType

enum (PurchaseLocationType)

สถานที่ซื้อ (ที่ร้านค้า / ออนไลน์)

errors[]

object (PurchaseError)

ไม่บังคับ: ข้อผิดพลาดเนื่องจากคำสั่งซื้อนี้ถูกปฏิเสธ

extension
(deprecated)

object

ช่องอื่นๆ ที่แลกเปลี่ยนกันระหว่างผู้ขายและ Google หมายเหตุ: ไม่แนะนำให้ใช้ส่วนขยายนี้ พิจารณาข้อใดข้อหนึ่งต่อไปนี้ตามกรณีการใช้งาน/สถานการณ์ 1. ระบุฟิลด์ใน PurchaseOrderExtension หากสามารถนำไปใช้กับกรณีการใช้งานอื่นๆ (เช่น ความสามารถ/ฟังก์ชันการทำงานทั่วไป) 2. ใช้ vertical_extension หากเป็นแค่กรณีการใช้งาน/ฟีเจอร์ที่กำหนดเองที่ไม่ใช่ทั่วไป

ออบเจ็กต์ที่มีช่องประเภทที่กำหนดเอง ช่องเพิ่มเติม "@type" จะมี URI ที่ระบุประเภท ตัวอย่างเช่น { "id": 1234, "@type": "types.example.com/standard/id" }

PurchaseLocationType

ประเภทสถานที่ของการซื้อ

Enum
UNSPECIFIED_LOCATION ค่าที่ไม่รู้จัก
ONLINE_PURCHASE การซื้อทั้งหมดซื้อออนไลน์
INSTORE_PURCHASE การซื้อที่ร้านทั้งหมด

PurchaseError

ข้อผิดพลาดที่อาจปฏิเสธใบสั่งซื้อได้

การแสดง 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)

มีความเกี่ยวข้องในกรณีที่มีข้อผิดพลาดประเภท PRICE_CHANGED / INCORRECT_PRICE

availableQuantity

integer

มีสินค้าพร้อมจำหน่ายแล้ว ใช้ได้ในกรณี AVAILABILITY_CHANGED

ErrorType

ประเภทข้อผิดพลาดที่เป็นไปได้

Enum
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 ผู้ขายพยายามลิงก์บัญชี 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:00 น. แต่เวลาเข้าคือ 8:30 น.

Type

ประเภทของเหตุการณ์

Enum
EVENT_TYPE_UNKNOWN ประเภทเหตุการณ์ที่ไม่รู้จัก
MOVIE ภาพยนตร์
CONCERT คอนเสิร์ต
SPORTS กีฬา

EventCharacter

ตัวละครในเหตุการณ์ 1 ตัว เช่น ผู้จัด นักแสดง เป็นต้น

การแสดง JSON
{
  "type": enum (Type),
  "name": string,
  "image": {
    object (Image)
  }
}
ช่อง
type

enum (Type)

ประเภทตัวละครในกิจกรรม เช่น นักแสดงหรือผู้กำกับ

name

string

ชื่อตัวละคร

image

object (Image)

ภาพของตัวละคร

Type

ประเภทตัวละคร

Enum
TYPE_UNKNOWN ประเภทที่ไม่รู้จัก
ACTOR ผู้ดำเนินการ
PERFORMER ผู้แสดง
DIRECTOR ผู้กำกับ
ORGANIZER ผู้จัด

UserNotification

การแจ้งเตือนผู้ใช้แบบไม่บังคับที่จะแสดงเป็นส่วนหนึ่งของการอัปเดตคำสั่งซื้อ

การแสดง JSON
{
  "title": string,
  "text": string
}
ช่อง
title

string

ชื่อของการแจ้งเตือนผู้ใช้ ความยาวสูงสุดคือ 30 อักขระ

text

string

เนื้อหาของการแจ้งเตือน ความยาวสูงสุดที่อนุญาตคือ 100 อักขระ

NextScene

แสดงฉากที่จะดำเนินการถัดไป

การแสดง 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))

ต้องระบุ รายการพารามิเตอร์ทั้งหมดที่รวบรวมจากแบบฟอร์มและ Intent ระหว่างเซสชัน คีย์ คือชื่อพารามิเตอร์ พารามิเตอร์ที่กำหนดที่นี่จะรวมเข้ากับพารามิเตอร์ที่กำหนดไว้แล้วในเซสชัน ระบบจะนำพารามิเตอร์ที่มีค่า 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 ซึ่งอาจต่างจากภาษาของผู้ใช้หากการดำเนินการใช้ฟีเจอร์หลายภาษา ตัวอย่างเช่น เมื่อมีการตั้งค่าManager_Response.expected.language_code ระบบจะเปลี่ยนภาษาของการสนทนาสําหรับการเลี้ยวที่ตามมาทั้งหมด ซึ่งจะแสดงในช่องนี้

TypeOverride

แสดงการลบล้างสำหรับประเภท

การแสดง JSON
{
  "name": string,
  "mode": enum (TypeOverrideMode),
  "synonym": {
    object (SynonymType)
  }
}
ช่อง
name

string

ต้องระบุ ชื่อประเภทที่จะเพิ่มหรือลบล้าง

mode

enum (TypeOverrideMode)

ต้องระบุ วิธีผสานรวมประเภทนี้กับค่าประเภทอื่นๆ

synonym

object (SynonymType)

TypeOverrideMode

ประเภทของการแก้ไขสำหรับประเภทเอนทิตีของเซสชัน

Enum
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

ต้องระบุ รายการคำพ้องความหมายของรายการ (เช่น "bike", "cycle")

display

object (EntryDisplay)

ไม่บังคับ ข้อมูลการแสดงผลรายการ

EntryDisplay

การแสดง 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)

การประทับเวลาของการโต้ตอบครั้งล่าสุดกับผู้ใช้รายนี้ ช่องนี้จะถูกละเว้นหากผู้ใช้ไม่เคยโต้ตอบกับตัวแทนมาก่อน

การประทับเวลาจะอยู่ในรูปแบบ RFC3339 UTC "Zulu" ที่มีความละเอียดระดับนาโนวินาทีและมีตัวเลขเศษส่วนได้สูงสุด 9 หลัก ตัวอย่าง: "2014-10-02T15:01:23Z" และ "2014-10-02T15:01:23.045123456Z"

engagement

object (Engagement)

การมีส่วนร่วมของผู้ใช้ปัจจุบัน รวมถึงการสมัครใช้บริการ Intent

packageEntitlements[]

object (PackageEntitlements)

การให้สิทธิ์ของผู้ใช้ที่เกี่ยวข้องกับแพ็กเกจ Android ที่เชื่อมโยงกับการดำเนินการปัจจุบัน

permissions[]

enum (Permission)

มีสิทธิ์ที่ได้รับจากผู้ใช้สำหรับการดำเนินการนี้

AccountLinkingStatus

ระบุว่าผู้ใช้ปลายทางลิงก์บัญชีกับแอปนี้หรือไม่ ดูเอกสารการลิงก์บัญชี: https://developers.google.com/assistant/identity

Enum
ACCOUNT_LINKING_STATUS_UNSPECIFIED ไม่รู้จัก
NOT_LINKED ผู้ใช้ยังไม่ได้ลิงก์บัญชีกับแอปนี้
LINKED ผู้ใช้ได้ลิงก์บัญชีกับแอปนี้

UserVerificationStatus

ระบุว่า Google ได้ยืนยันผู้ใช้แล้วหรือยัง สถานะ "ยืนยัน" บ่งชี้ว่าคุณสามารถบันทึกข้อมูลในการสนทนาต่างๆ โดยใช้ช่องพารามิเตอร์หรือการลิงก์บัญชี

Enum
USER_VERIFICATION_STATUS_UNSPECIFIED ไม่รู้จัก
GUEST ผู้ใช้ที่เป็นผู้มาเยือน
VERIFIED ผู้ใช้ที่ผ่านการยืนยัน

การมีส่วนร่วม

ให้ข้อมูลแบบอ่านอย่างเดียวเพิ่มเติมเกี่ยวกับกลไกการมีส่วนร่วมที่ผู้ใช้ปัจจุบันได้ลงทะเบียนไว้ ตัวอย่างเช่น การทราบ Intent ที่ผู้ใช้ติดตามแล้วอาจช่วยได้ เพื่อหลีกเลี่ยงการขอให้ผู้ใช้สมัครสมาชิก Intent เดิมอีกครั้ง กล่าวคือ ข้อมูลนี้สามารถใช้เพื่อกำหนดเส้นทางไปยังฉากอย่างมีเงื่อนไขเพื่อตั้งค่า DailyUpdates หรือ PushNotifications เฉพาะเมื่อผู้ใช้ยังไม่ได้ติดตาม ดูเอกสารประกอบเกี่ยวกับการมีส่วนร่วมของผู้ใช้ได้ที่ https://developers.google.com/assistant/engagement

การแสดง JSON
{
  "pushNotificationIntents": [
    {
      object (IntentSubscription)
    }
  ],
  "dailyUpdateIntents": [
    {
      object (IntentSubscription)
    }
  ]
}
ช่อง
pushNotificationIntents[]

object (IntentSubscription)

มีรายการ Intent ที่ผู้ใช้เปิดใช้ข้อความ Push

dailyUpdateIntents[]

object (IntentSubscription)

มีรายการ Intent ที่ผู้ใช้เปิดใช้การอัปเดตรายวัน

IntentSubscription

อธิบาย IntentSubscription ที่มีอยู่

การแสดง JSON
{
  "intent": string,
  "contentTitle": string
}
ช่อง
intent

string

ชื่อของความตั้งใจที่ติดตาม

contentTitle

string

คำอธิบายสั้นๆ ของการสมัครใช้บริการ ข้อมูลนี้ใช้เป็นป้ายกำกับของการแจ้งเตือนและเมื่อ Assistant กำลังขอสิทธิ์จากผู้ใช้

PackageEntitlements

รายการการให้สิทธิ์ของผู้ใช้ที่เกี่ยวข้องกับชื่อแพ็กเกจ ดูเอกสารประกอบเกี่ยวกับธุรกรรมดิจิทัลที่ดีได้ที่ https://developers.google.com/assistant/transactions/digital/dev-guide-digital-non-consumables

การแสดง JSON
{
  "packageName": string,
  "entitlements": [
    {
      object (Entitlement)
    }
  ]
}
ช่อง
packageName

string

ชื่อแพ็กเกจ Android ที่ระบุไว้ในแพ็กเกจการดำเนินการ

entitlements[]

object (Entitlement)

การให้สิทธิ์ของผู้ใช้สำหรับแพ็กเกจที่ระบุ

การให้สิทธิ์

กำหนดการให้สิทธิ์ดิจิทัลของผู้ใช้

การแสดง JSON
{
  "sku": string,
  "skuType": enum (SkuType),
  "inAppDetails": {
    object (SignedData)
  }
}
ช่อง
sku

string

SKU ของผลิตภัณฑ์ ชื่อแพ็กเกจสำหรับแอปที่ต้องซื้อ คำต่อท้าย Docid ของ Finsky สำหรับการซื้อในแอปและการสมัครใช้บริการในแอป จับคู่ getSku() ใน API การเรียกเก็บเงินในแอปของ Play ดูเอกสารการเรียกเก็บเงินสำหรับการซื้อในแอปของ Play ได้ที่ https://developer.android.com/google/play/billing

skuType

enum (SkuType)

ประเภทของ SKU

inAppDetails

object (SignedData)

แสดงสำหรับการซื้อในแอปและการติดตามในแอปเท่านั้น

SkuType

Enum
SKU_TYPE_UNSPECIFIED
IN_APP ทำการซื้อในแอป
SUBSCRIPTION การสมัครใช้บริการ
APP แอปที่ต้องซื้อ

SignedData

การแสดง JSON
{
  "inAppPurchaseData": {
    object
  },
  "inAppDataSignature": string
}
ช่อง
inAppPurchaseData

object (Struct format)

มีข้อมูลการซื้อในแอปทั้งหมดในรูปแบบ JSON ดูรายละเอียดในตารางที่ 6 ของ https://developer.android.com/google/play/billing/billing_reference.html

inAppDataSignature

string

ตรงกับ IN_APP_DATA_SIGNATURE จากเมธอด getPurchases() ใน Play InApp Billing API

สิทธิ์

ค่าที่เป็นไปได้สำหรับสิทธิ์

Enum
PERMISSION_UNSPECIFIED สิทธิ์ที่ไม่ได้ระบุ
DEVICE_PRECISE_LOCATION ขอตำแหน่งที่แน่นอนของผู้ใช้ ละติจูด/ลองจิจูด และที่อยู่ที่มีการจัดรูปแบบ
DEVICE_COARSE_LOCATION ขอสถานที่ตั้งคร่าวๆ รหัสไปรษณีย์ เมือง และรหัสประเทศของผู้ใช้
UPDATE ขอสิทธิ์เพื่อส่งการอัปเดต ดูที่ https://developers.google.com/assistant/engagement/daily

เคหสถาน

แสดงโครงสร้าง Home Graph ที่มีอุปกรณ์ของผู้ใช้เป้าหมาย

การแสดง JSON
{
  "params": {
    string: value,
    ...
  }
}
ช่อง
params

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

ไม่บังคับ รายการพารามิเตอร์ที่เชื่อมโยงกับโครงสร้าง Home Graph ที่มีอุปกรณ์เป้าหมายอยู่ ดูเอกสารเกี่ยวกับพื้นที่เก็บข้อมูลในบ้านได้ที่ 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)

ไม่บังคับ เขตเวลาที่เชื่อมโยงกับอุปกรณ์ไคลเอ็นต์ สามารถใช้เพื่อแก้ไขค่าวันที่และเวลาได้

ความสามารถ

ความสามารถของแพลตฟอร์มอุปกรณ์รองรับ ณ เวลาที่ขอ

Enum
UNSPECIFIED ความสามารถของอุปกรณ์แบบไม่ระบุ
SPEECH อุปกรณ์สามารถพูดคุยกับผู้ใช้ผ่านการอ่านออกเสียงข้อความหรือ SSML
RICH_RESPONSE อุปกรณ์แสดงการตอบสนองที่สมบูรณ์ได้ เช่น การ์ด รายการ และตาราง
LONG_FORM_AUDIO อุปกรณ์เล่นสื่อเสียงแบบยาว เช่น เพลงและพอดแคสต์ ได้
INTERACTIVE_CANVAS อุปกรณ์แสดงการตอบกลับ 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] เมื่อได้รับสิทธิ์เข้าถึงตำแหน่งคร่าวๆ ระบบคาดหวังให้เติมข้อมูลในช่อง "postalCode" และ "ท้องถิ่น" เท่านั้น สิทธิ์เข้าถึงตําแหน่งที่แน่นอนจะป้อนข้อมูลในช่องเพิ่มเติม เช่น "administrativeArea" และ "addressLines"

TimeZone

แสดงเขตเวลาจากฐานข้อมูลเขตเวลาของ IANA

การแสดง JSON
{
  "id": string,
  "version": string
}
ช่อง
id

string

เขตเวลาของ IANA Time Zone Database เช่น "America/New_York"

version

string

ไม่บังคับ หมายเลขเวอร์ชันของฐานข้อมูลเขตเวลาของ IANA เช่น "2019a"

บริบท

มีข้อมูลบริบทเมื่อผู้ใช้ทำการค้นหา บริบทดังกล่าวรวมถึงแต่ไม่จํากัดเพียงข้อมูลเกี่ยวกับเซสชันสื่อที่ใช้งานอยู่ สถานะของเว็บแอป Canvas ฯลฯ

การแสดง JSON
{
  "media": {
    object (MediaContext)
  },
  "canvas": {
    object (CanvasContext)
  }
}
ช่อง
media

object (MediaContext)

มีข้อมูลบริบทเกี่ยวกับเซสชันสื่อที่ใช้งานอยู่ในปัจจุบัน

canvas

object (CanvasContext)

มีข้อมูลบริบทเกี่ยวกับ Canvas ปัจจุบัน

MediaContext

มีข้อมูลบริบทเกี่ยวกับเซสชันสื่อที่ใช้งานอยู่ในปัจจุบัน

การแสดง JSON
{
  "progress": string,
  "index": integer
}
ช่อง
progress

string (Duration format)

ความคืบหน้าของสื่อของไฟล์สื่อที่ใช้งานอยู่

ระยะเวลาเป็นวินาทีโดยมีตัวเลขเศษส่วนไม่เกิน 9 หลัก ลงท้ายด้วย "s" เช่น "3.5s"

index

integer

ดัชนีที่อิงตาม 0 ของไฟล์สื่อที่ใช้งานอยู่ในปัจจุบันในรายการไฟล์สื่อในการตอบกลับของสื่อ

CanvasContext

มีข้อมูลบริบทเกี่ยวกับ Canvas ปัจจุบัน

การแสดง JSON
{
  "state": value
}
ช่อง
state

value (Value format)

ไม่บังคับ สถานะที่กำหนดโดยแอป 3P Interactive Canvas ค่านี้กำหนดให้เป็นคำขอเท่านั้น ไม่ใช่เพื่อการตอบกลับ ตัวอย่างเช่น หากเป็นแอปสูตรอาหาร สถานะอาจเป็นค่า struct : { "current_page" : 5, "last_page" : 3, } ขีดจำกัดขนาดคือ 50 KB

ที่คาดไว้

อธิบายความคาดหวังสำหรับการเปิดกล่องโต้ตอบครั้งต่อไป

การแสดง JSON
{
  "speech": [
    string
  ]
}
ช่อง
speech[]

string

รายการวลีที่การดำเนินการคาดหวังจากคำพูดของผู้ใช้สำหรับการให้น้ำหนักคำพูด อนุญาตให้มีวลีไม่เกิน 1,000 วลี หมายเหตุ: ช่องนี้มีความหมายเหมือนกับ ExpectInput.speech_biasing_hints ใน API v2