REST Resource: spaces.messages

แหล่งข้อมูล: ข้อความ

ข้อความในพื้นที่ใน Google Chat

การแสดง JSON
{
  "name": string,
  "sender": {
    object (User)
  },
  "createTime": string,
  "lastUpdateTime": string,
  "deleteTime": string,
  "text": string,
  "formattedText": string,
  "cards": [
    {
      object (Card)
    }
  ],
  "cardsV2": [
    {
      object (CardWithId)
    }
  ],
  "annotations": [
    {
      object (Annotation)
    }
  ],
  "thread": {
    object (Thread)
  },
  "space": {
    object (Space)
  },
  "fallbackText": string,
  "actionResponse": {
    object (ActionResponse)
  },
  "argumentText": string,
  "slashCommand": {
    object (SlashCommand)
  },
  "attachment": [
    {
      object (Attachment)
    }
  ],
  "matchedUrl": {
    object (MatchedUrl)
  },
  "threadReply": boolean,
  "clientAssignedMessageId": string,
  "emojiReactionSummaries": [
    {
      object (EmojiReactionSummary)
    }
  ],
  "privateMessageViewer": {
    object (User)
  },
  "deletionMetadata": {
    object (DeletionMetadata)
  },
  "quotedMessageMetadata": {
    object (QuotedMessageMetadata)
  },
  "attachedGifs": [
    {
      object (AttachedGif)
    }
  ],
  "accessoryWidgets": [
    {
      object (AccessoryWidget)
    }
  ]
}
ช่อง
name

string

ตัวระบุ ชื่อทรัพยากรของข้อความ

รูปแบบ: spaces/{space}/messages/{message}

โดย {space} คือรหัสของพื้นที่ที่มีการโพสต์ข้อความ และ {message} คือรหัสที่ระบบกำหนดให้ข้อความ เช่น spaces/AAAAAAAAAAA/messages/BBBBBBBBBBB.BBBBBBBBBBB

หากตั้งค่ารหัสที่กำหนดเองเมื่อสร้างข้อความ คุณจะใช้รหัสนี้เพื่อระบุข้อความในคำขอได้โดยแทนที่ {message} ด้วยค่าจากช่อง clientAssignedMessageId เช่น spaces/AAAAAAAAAAA/messages/client-custom-name โปรดดูรายละเอียดที่หัวข้อตั้งชื่อข้อความ

sender

object (User)

เอาต์พุตเท่านั้น ผู้ใช้ที่สร้างข้อความ หากแอป Chat ตรวจสอบสิทธิ์ในฐานะผู้ใช้ เอาต์พุตจะแสดงใน user name และ type

createTime

string (Timestamp format)

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

สำหรับพื้นที่ทำงานในโหมดการนำเข้า ให้ตั้งค่าฟิลด์นี้เป็นการประทับเวลาในอดีตที่สร้างข้อความในแหล่งที่มาเพื่อรักษาเวลาที่สร้างเดิมไว้

lastUpdateTime

string (Timestamp format)

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

deleteTime

string (Timestamp format)

เอาต์พุตเท่านั้น เวลาที่ลบข้อความใน Google Chat หากไม่มีการลบข้อความ ช่องนี้จะว่างเปล่า

text

string

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

ดูข้อมูลเกี่ยวกับการสร้างข้อความได้ที่ส่งข้อความ

formattedText

string

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

  • ไวยากรณ์มาร์กอัปสำหรับตัวหนา ตัวเอียง ขีดทับ โมโนสเปซ บล็อกโมโนสเปซ และรายการสัญลักษณ์หัวข้อย่อย

  • การกล่าวถึงผู้ใช้โดยใช้รูปแบบ <users/{user}>

  • ไฮเปอร์ลิงก์ที่กำหนดเองโดยใช้รูปแบบ <{url}|{rendered_text}> ซึ่งสตริงแรกคือ URL และสตริงที่สองคือข้อความที่แสดง เช่น <http://example.com|custom text>

  • อีโมจิที่กำหนดเองโดยใช้รูปแบบ :{emojiName}: เช่น :smile: โดยจะไม่มีผลกับอีโมจิ Unicode เช่น U+1F600 สำหรับอีโมจิหน้ายิ้ม

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

cards[]
(deprecated)

object (Card)

เลิกใช้งานแล้ว: โปรดใช้ cardsV2 แทน

การ์ดแบบอินเทอร์แอกทีฟที่จัดรูปแบบแล้วและมีเนื้อหาหลากหลาย ซึ่งคุณใช้เพื่อแสดงองค์ประกอบ UI ได้ เช่น ข้อความที่จัดรูปแบบ ปุ่ม และรูปภาพที่คลิกได้ โดยปกติแล้ว การ์ดจะแสดงอยู่ใต้เนื้อหาข้อความแบบข้อความธรรมดา cards และ cardsV2 มีขนาดสูงสุดได้ 32 KB

cardsV2[]

object (CardWithId)

ไม่บังคับ อาร์เรย์ของการ์ด

เฉพาะแอป Chat เท่านั้นที่สร้างการ์ดได้ หากแอป Chat ตรวจสอบสิทธิ์ในฐานะผู้ใช้ ข้อความจะมีการ์ดไม่ได้

ดูวิธีสร้างข้อความที่มีการ์ดได้ที่ส่งข้อความ

ออกแบบและดูตัวอย่างการ์ดด้วยเครื่องมือสร้างการ์ด

เปิดเครื่องมือสร้างการ์ด

annotations[]

object (Annotation)

เอาต์พุตเท่านั้น คำอธิบายประกอบสามารถเชื่อมโยงกับเนื้อความข้อความที่เป็นข้อความธรรมดาหรือกับชิปที่ลิงก์ไปยังแหล่งข้อมูล Google Workspace เช่น Google เอกสารหรือชีตที่มี startIndex และ length เป็น 0

thread

object (Thread)

ชุดข้อความที่ข้อความเป็นสมาชิก ดูตัวอย่างการใช้งานได้ที่เริ่มหรือตอบกลับชุดข้อความ

space

object (Space)

เอาต์พุตเท่านั้น หากแอปใน Chat ตรวจสอบสิทธิ์ในฐานะผู้ใช้ เอาต์พุตจะแสดงเฉพาะในพื้นที่ทำงาน name

fallbackText

string

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

actionResponse

object (ActionResponse)

อินพุตเท่านั้น พารามิเตอร์ที่แอป Chat ใช้กำหนดค่าวิธีโพสต์คำตอบ

argumentText

string

เอาต์พุตเท่านั้น เนื้อหาข้อความแบบข้อความธรรมดาโดยไม่มีการกล่าวถึงแอป Chat ทั้งหมด

slashCommand

object (SlashCommand)

เอาต์พุตเท่านั้น ข้อมูลคำสั่งเครื่องหมายทับ (หากมี)

attachment[]

object (Attachment)

ไม่บังคับ ไฟล์แนบที่ผู้ใช้อัปโหลด

matchedUrl

object (MatchedUrl)

เอาต์พุตเท่านั้น URL ใน spaces.messages.text ที่ตรงกับรูปแบบตัวอย่างลิงก์ ดูข้อมูลเพิ่มเติมได้ที่แสดงตัวอย่างลิงก์

threadReply

boolean

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

หากพื้นที่ทำงานไม่รองรับการตอบกลับในชุดข้อความ ช่องนี้จะเป็น false เสมอ

clientAssignedMessageId

string

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

emojiReactionSummaries[]

object (EmojiReactionSummary)

เอาต์พุตเท่านั้น รายการสรุปรีแอ็กชันด้วยอีโมจิในข้อความ

privateMessageViewer

object (User)

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

โปรดดูรายละเอียดที่หัวข้อส่งข้อความแบบส่วนตัว

deletionMetadata

object (DeletionMetadata)

เอาต์พุตเท่านั้น ข้อมูลเกี่ยวกับข้อความที่ถูกลบ ระบบจะลบข้อความเมื่อตั้งค่า deleteTime

quotedMessageMetadata

object (QuotedMessageMetadata)

เอาต์พุตเท่านั้น ข้อมูลเกี่ยวกับข้อความที่ผู้ใช้ Google Chat อ้างอิงในพื้นที่ ผู้ใช้ Google Chat สามารถอ้างอิงข้อความเพื่อตอบกลับได้

attachedGifs[]

object (AttachedGif)

เอาต์พุตเท่านั้น รูปภาพ GIF ที่แนบมากับข้อความ

accessoryWidgets[]

object (AccessoryWidget)

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

การสร้างข้อความด้วยวิดเจ็ตอุปกรณ์เสริมต้องใช้การตรวจสอบสิทธิ์แอป

CardWithId

การ์ดในข้อความ Google Chat

เฉพาะแอป Chat เท่านั้นที่สร้างการ์ดได้ หากแอป Chat ตรวจสอบสิทธิ์ในฐานะผู้ใช้ ข้อความจะมีการ์ดไม่ได้

ออกแบบและดูตัวอย่างการ์ดด้วยเครื่องมือสร้างการ์ด

เปิดเครื่องมือสร้างการ์ด

การแสดง JSON
{
  "cardId": string,
  "card": {
    object (Card)
  }
}
ช่อง
cardId

string

ต้องระบุหากข้อความมีการ์ดหลายใบ ตัวระบุที่ไม่ซ้ำกันสำหรับบัตรในข้อความ

card

object (Card)

การ์ด ขนาดสูงสุดคือ 32 KB

หมายเหตุ

เอาต์พุตเท่านั้น คำอธิบายประกอบสามารถเชื่อมโยงกับเนื้อความข้อความที่เป็นข้อความธรรมดาหรือกับชิปที่ลิงก์ไปยังแหล่งข้อมูล Google Workspace เช่น Google เอกสารหรือชีตที่มี startIndex และ length เป็น 0 หากต้องการเพิ่มการจัดรูปแบบพื้นฐานให้กับข้อความ ให้ดูจัดรูปแบบข้อความ

ตัวอย่างเนื้อหาข้อความแบบข้อความธรรมดา

Hello @FooBot how are you!"

ข้อมูลเมตาของคำอธิบายประกอบที่เกี่ยวข้อง

"annotations":[{
  "type":"USER_MENTION",
  "startIndex":6,
  "length":7,
  "userMention": {
    "user": {
      "name":"users/{user}",
      "displayName":"FooBot",
      "avatarUrl":"https://goo.gl/aeDtrS",
      "type":"BOT"
    },
    "type":"MENTION"
   }
}]
การแสดง JSON
{
  "type": enum (AnnotationType),
  "length": integer,
  "startIndex": integer,

  // Union field metadata can be only one of the following:
  "userMention": {
    object (UserMentionMetadata)
  },
  "slashCommand": {
    object (SlashCommandMetadata)
  },
  "richLinkMetadata": {
    object (RichLinkMetadata)
  },
  "customEmojiMetadata": {
    object (CustomEmojiMetadata)
  }
  // End of list of possible types for union field metadata.
}
ช่อง
type

enum (AnnotationType)

ประเภทของคำอธิบายประกอบนี้

length

integer

ความยาวของสตริงย่อยในเนื้อความของข้อความแบบข้อความธรรมดาที่คำอธิบายประกอบนี้สอดคล้องด้วย หากไม่มี แสดงว่ามีความยาวเป็น 0

startIndex

integer

ดัชนีเริ่มต้น (อิงตาม 0 รวม) ในเนื้อหาข้อความแบบข้อความธรรมดาที่คำอธิบายประกอบนี้สอดคล้อง

ฟิลด์ Union metadata ข้อมูลเมตาเพิ่มเติมเกี่ยวกับคำอธิบายประกอบ metadata ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
userMention

object (UserMentionMetadata)

ข้อมูลเมตาของการพูดถึงผู้ใช้

slashCommand

object (SlashCommandMetadata)

ข้อมูลเมตาสำหรับคำสั่งเครื่องหมายทับ

customEmojiMetadata

object (CustomEmojiMetadata)

ข้อมูลเมตาสำหรับอีโมจิที่กำหนดเอง

AnnotationType

ประเภทของคำอธิบายประกอบ

Enum
ANNOTATION_TYPE_UNSPECIFIED ค่าเริ่มต้นสำหรับ Enum อย่าใช้
USER_MENTION มีการกล่าวถึงผู้ใช้
SLASH_COMMAND มีการเรียกใช้คำสั่งเครื่องหมายทับ
CUSTOM_EMOJI คำอธิบายประกอบอีโมจิที่กำหนดเอง

UserMentionMetadata

ข้อมูลเมตาของคำอธิบายประกอบสำหรับการพูดถึงผู้ใช้ (@)

การแสดง JSON
{
  "user": {
    object (User)
  },
  "type": enum (Type)
}
ช่อง
user

object (User)

ผู้ใช้ที่กล่าวถึง

type

enum (Type)

ประเภทของการกล่าวถึงผู้ใช้

ประเภท

Enum
TYPE_UNSPECIFIED ค่าเริ่มต้นสำหรับ Enum อย่าใช้
ADD เพิ่มผู้ใช้ไปยังพื้นที่ทำงาน
MENTION พูดถึงผู้ใช้ในพื้นที่ทำงาน

SlashCommandMetadata

ข้อมูลเมตาของคำอธิบายประกอบสำหรับคำสั่งเครื่องหมายทับ (/)

การแสดง JSON
{
  "bot": {
    object (User)
  },
  "type": enum (Type),
  "commandName": string,
  "commandId": string,
  "triggersDialog": boolean
}
ช่อง
bot

object (User)

แอป Chat ที่เรียกใช้คำสั่ง

type

enum (Type)

ประเภทของคำสั่งเครื่องหมายทับ

commandName

string

ชื่อของคำสั่ง Slash ที่เรียกใช้

commandId

string (int64 format)

รหัสคำสั่งของคำสั่ง Slash ที่เรียกใช้

triggersDialog

boolean

ระบุว่าคำสั่งเครื่องหมายทับใช้สำหรับกล่องโต้ตอบหรือไม่

ประเภท

Enum
TYPE_UNSPECIFIED ค่าเริ่มต้นสำหรับ Enum อย่าใช้
ADD เพิ่มแอป Chat ลงในพื้นที่ทำงาน
INVOKE เรียกใช้คำสั่งเครื่องหมายทับในพื้นที่ทำงาน

RichLinkMetadata

ลิงก์ที่สมบูรณ์ไปยังแหล่งข้อมูล ลิงก์ Rich สามารถเชื่อมโยงกับเนื้อหาข้อความแบบข้อความธรรมดาหรือแสดงชิปที่ลิงก์ไปยังแหล่งข้อมูลของ Google Workspace เช่น Google เอกสารหรือชีตที่มี startIndex และ length เป็น 0

การแสดง JSON
{
  "uri": string,
  "richLinkType": enum (RichLinkType),

  // Union field data can be only one of the following:
  "driveLinkData": {
    object (DriveLinkData)
  },
  "chatSpaceLinkData": {
    object (ChatSpaceLinkData)
  },
  "meetSpaceLinkData": {
    object (MeetSpaceLinkData)
  },
  "calendarEventLinkData": {
    object (CalendarEventLinkData)
  }
  // End of list of possible types for union field data.
}
ช่อง
uri

string

URI ของลิงก์นี้

ฟิลด์ Union data ข้อมูลสำหรับแหล่งข้อมูลที่ลิงก์ data ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น

RichLinkType

ประเภทริชลิงก์ และอาจมีการเพิ่มประเภทอื่นๆ ในอนาคต

Enum
DRIVE_FILE ประเภทลิงก์สมบูรณ์ของ Google ไดรฟ์
CHAT_SPACE ประเภทริชลิงก์ของพื้นที่ใน Chat เช่น ชิปอัจฉริยะของพื้นที่ทำงาน
MEET_SPACE ประเภทริชลิงก์ของข้อความ Meet เช่น ชิป Meet
CALENDAR_EVENT ประเภทลิงก์ Rich ของข้อความในปฏิทิน เช่น ชิปปฏิทิน

DriveLinkData

ข้อมูลสำหรับลิงก์ Google ไดรฟ์

การแสดง JSON
{
  "driveDataRef": {
    object (DriveDataRef)
  },
  "mimeType": string
}
ช่อง
driveDataRef

object (DriveDataRef)

DriveDataRef ที่อ้างอิงไฟล์ใน Google ไดรฟ์

mimeType

string

ประเภท MIME ของทรัพยากร Google ไดรฟ์ที่ลิงก์

ChatSpaceLinkData

ข้อมูลสำหรับลิงก์พื้นที่ใน Chat

การแสดง JSON
{
  "space": string,
  "thread": string,
  "message": string
}
ช่อง
space

string

พื้นที่ของทรัพยากรพื้นที่ใน Chat ที่ลิงก์

รูปแบบ: spaces/{space}

thread

string

ชุดข้อความของทรัพยากรพื้นที่ใน Chat ที่ลิงก์

รูปแบบ: spaces/{space}/threads/{thread}

message

string

ข้อความของทรัพยากรพื้นที่ใน Chat ที่ลิงก์

รูปแบบ: spaces/{space}/messages/{message}

MeetSpaceLinkData

ข้อมูลสำหรับลิงก์พื้นที่ทำงานของ Meet

การแสดง JSON
{
  "meetingCode": string,
  "type": enum (Type),
  "huddleStatus": enum (HuddleStatus)
}
ช่อง
meetingCode

string

รหัสการประชุมของพื้นที่ Meet ที่ลิงก์

type

enum (Type)

ระบุประเภทพื้นที่ใน Meet

huddleStatus

enum (HuddleStatus)

ไม่บังคับ เอาต์พุตเท่านั้น หาก Meet เป็น Huddle จะระบุสถานะของ Huddle หากไม่เช่นนั้น ระบบจะไม่ตั้งค่านี้

ประเภท

ประเภทพื้นที่ Meet

Enum
TYPE_UNSPECIFIED ค่าเริ่มต้นสำหรับ Enum อย่าใช้
MEETING พื้นที่ Meet คือการประชุม
HUDDLE พื้นที่ Meet คือการประชุมย่อย

HuddleStatus

สถานะของการแฮ็กกาธอน

Enum
HUDDLE_STATUS_UNSPECIFIED ค่าเริ่มต้นสำหรับ Enum อย่าใช้
STARTED เริ่มการประชุมสั้นแล้ว
ENDED การประชุมสั้นสิ้นสุดแล้ว ในกรณีนี้ URI และตัวระบุของพื้นที่ทำงานใน Meet จะใช้ไม่ได้อีกต่อไป
MISSED ไม่ได้รับสายการประชุมสั้น ในกรณีนี้ URI และตัวระบุของพื้นที่ทำงานใน Meet จะใช้ไม่ได้อีกต่อไป

CalendarEventLinkData

ข้อมูลสำหรับลิงก์กิจกรรมในปฏิทิน

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

string

ตัวระบุปฏิทินของปฏิทินที่ลิงก์

eventId

string

ตัวระบุเหตุการณ์ของกิจกรรมในปฏิทินที่ลิงก์

CustomEmojiMetadata

ข้อมูลเมตาคำอธิบายประกอบสำหรับอีโมจิที่กำหนดเอง

การแสดง JSON
{
  "customEmoji": {
    object (CustomEmoji)
  }
}
ช่อง
customEmoji

object (CustomEmoji)

อีโมจิที่กำหนดเอง

ชุดข้อความ

ชุดข้อความในพื้นที่ใน Google Chat ดูตัวอย่างการใช้งานได้ที่เริ่มหรือตอบกลับชุดข้อความ

หากระบุชุดข้อความเมื่อสร้างข้อความ คุณจะตั้งค่าฟิลด์ messageReplyOption เพื่อกำหนดสิ่งที่เกิดขึ้นหากไม่พบชุดข้อความที่ตรงกันได้

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

string

ตัวระบุ ชื่อทรัพยากรของเธรด

ตัวอย่าง: spaces/{space}/threads/{thread}

threadKey

string

ไม่บังคับ ข้อมูลสำหรับการสร้างหรืออัปเดตเธรด หรือหากมีการตั้งค่า ระบบจะแสดงผลเท่านั้น รหัสของชุดข้อความ รองรับอักขระสูงสุด 4,000 ตัว

รหัสนี้เป็นรหัสเฉพาะสำหรับแอป Chat ที่ตั้งค่ารหัส เช่น หากแอป Chat หลายแอปสร้างข้อความโดยใช้คีย์ชุดข้อความเดียวกัน ระบบจะโพสต์ข้อความในชุดข้อความที่แตกต่างกัน หากต้องการตอบกลับในชุดข้อความที่สร้างโดยบุคคลหรือแอป Chat อื่น ให้ระบุฟิลด์ name แทน

ActionResponse

พารามิเตอร์ที่แอป Chat ใช้กำหนดค่าวิธีโพสต์คำตอบ

การแสดง JSON
{
  "type": enum (ResponseType),
  "url": string,
  "dialogAction": {
    object (DialogAction)
  },
  "updatedWidget": {
    object (UpdatedWidget)
  }
}
ช่อง
type

enum (ResponseType)

อินพุตเท่านั้น ประเภทการตอบกลับของแอป Chat

url

string

อินพุตเท่านั้น URL สำหรับให้ผู้ใช้ตรวจสอบสิทธิ์หรือกำหนดค่า (สำหรับประเภทการตอบกลับ REQUEST_CONFIG เท่านั้น)

dialogAction

object (DialogAction)

อินพุตเท่านั้น การตอบกลับเหตุการณ์การโต้ตอบที่เกี่ยวข้องกับกล่องโต้ตอบ ต้องมี ResponseType.Dialog ประกอบ

updatedWidget

object (UpdatedWidget)

อินพุตเท่านั้น การตอบกลับของวิดเจ็ตที่อัปเดต

ResponseType

ประเภทการตอบกลับของแอป Chat

Enum
TYPE_UNSPECIFIED ประเภทเริ่มต้นที่จัดการเป็น NEW_MESSAGE
NEW_MESSAGE โพสต์เป็นข้อความใหม่ในหัวข้อ
UPDATE_MESSAGE อัปเดตข้อความของแอป Chat ซึ่งจะได้รับอนุญาตในCARD_CLICKEDเหตุการณ์ที่ประเภทผู้ส่งข้อความเป็นBOTเท่านั้น
UPDATE_USER_MESSAGE_CARDS อัปเดตการ์ดในข้อความของผู้ใช้ อนุญาตให้ใช้ได้เฉพาะในการตอบกลับMESSAGEเหตุการณ์ที่มี URL ที่ตรงกัน หรือCARD_CLICKEDเหตุการณ์ที่ประเภทผู้ส่งข้อความเป็น HUMAN ระบบจะไม่สนใจข้อความ
REQUEST_CONFIG ขอให้ผู้ใช้ทำการตรวจสอบสิทธิ์หรือกำหนดค่าเพิ่มเติมแบบส่วนตัว
DIALOG แสดงกล่องโต้ตอบ
UPDATE_WIDGET คำค้นหาตัวเลือกการเติมข้อความอัตโนมัติของข้อความวิดเจ็ต

DialogAction

มีกล่องโต้ตอบและรหัสสถานะคำขอ

การแสดง JSON
{
  "actionStatus": {
    object (ActionStatus)
  },

  // Union field action can be only one of the following:
  "dialog": {
    object (Dialog)
  }
  // End of list of possible types for union field action.
}
ช่อง
actionStatus

object (ActionStatus)

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

ฟิลด์ Union action การดำเนินการที่จะทำ action ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
dialog

object (Dialog)

อินพุตเท่านั้น กล่องโต้ตอบสำหรับคำขอ

Dialog

Wrapper รอบเนื้อหาของการ์ดของกล่องโต้ตอบ

การแสดง JSON
{
  "body": {
    object (Card)
  }
}
ช่อง
body

object (Card)

อินพุตเท่านั้น เนื้อหาของกล่องโต้ตอบซึ่งแสดงในโมดอล แอป Google Chat ไม่รองรับเอนทิตีการ์ดต่อไปนี้ DateTimePicker, OnChangeAction

ActionStatus

แสดงสถานะของคำขอเพื่อเรียกใช้หรือส่งกล่องโต้ตอบ

การแสดง JSON
{
  "statusCode": enum (Code),
  "userFacingMessage": string
}
ช่อง
statusCode

enum (Code)

รหัสสถานะ

userFacingMessage

string

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

รหัส

รหัสข้อผิดพลาด Canonical สำหรับ gRPC API

บางครั้งอาจมีรหัสข้อผิดพลาดหลายรายการที่เกี่ยวข้อง บริการควรแสดงรหัสข้อผิดพลาดที่เฉพาะเจาะจงที่สุดที่เกี่ยวข้อง เช่น ให้ใช้รหัส OUT_OF_RANGE แทน FAILED_PRECONDITION หากใช้ได้ทั้ง 2 รหัส ในทำนองเดียวกัน ให้เลือก NOT_FOUND หรือ ALREADY_EXISTS มากกว่า FAILED_PRECONDITION

Enum
OK

ไม่ใช่ข้อผิดพลาด แต่จะแสดงผลเมื่อสำเร็จ

การแมป HTTP: 200 OK

CANCELLED

การดำเนินการถูกยกเลิก โดยปกติแล้วผู้โทรจะเป็นผู้ยกเลิก

การแมป HTTP: 499 คำขอที่ไคลเอ็นต์ปิดการเชื่อมต่อ

UNKNOWN

ข้อผิดพลาดที่ไม่รู้จัก เช่น ข้อผิดพลาดนี้อาจแสดงขึ้นเมื่อค่า Status ที่ได้รับจากพื้นที่ที่อยู่อื่นเป็นของพื้นที่ข้อผิดพลาดที่ไม่รู้จักในพื้นที่ที่อยู่นี้ นอกจากนี้ ข้อผิดพลาดที่ API สร้างขึ้นซึ่งไม่ได้ส่งข้อมูลข้อผิดพลาดเพียงพออาจแปลงเป็นข้อผิดพลาดนี้

การแมป HTTP: 500 ข้อผิดพลาดภายในเซิร์ฟเวอร์

INVALID_ARGUMENT

ไคลเอ็นต์ระบุอาร์กิวเมนต์ไม่ถูกต้อง โปรดทราบว่าสิ่งนี้แตกต่างจาก FAILED_PRECONDITION INVALID_ARGUMENT ระบุอาร์กิวเมนต์ที่มีปัญหาไม่ว่าสถานะของระบบจะเป็นอย่างไร (เช่น ชื่อไฟล์ที่มีรูปแบบไม่ถูกต้อง)

การแมป HTTP: 400 คำขอไม่ถูกต้อง

DEADLINE_EXCEEDED

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

การแมป HTTP: 504 เกตเวย์หมดเวลา

NOT_FOUND

ไม่พบเอนทิตีที่ขอ (เช่น ไฟล์หรือไดเรกทอรี)

หมายเหตุสำหรับนักพัฒนาเซิร์ฟเวอร์: หากคำขอถูกปฏิเสธสำหรับผู้ใช้ทั้งกลุ่ม เช่น การเปิดตัวฟีเจอร์แบบค่อยเป็นค่อยไปหรือรายการที่อนุญาตที่ไม่มีในเอกสาร NOT_FOUND อาจใช้ได้ หากระบบปฏิเสธคำขอสำหรับผู้ใช้บางรายในกลุ่มผู้ใช้ เช่น การควบคุมการเข้าถึงตามผู้ใช้ คุณต้องใช้ PERMISSION_DENIED

การแมป HTTP: 404 ไม่พบ

ALREADY_EXISTS

มีเอนทิตีที่ไคลเอ็นต์พยายามสร้างอยู่แล้ว (เช่น ไฟล์หรือไดเรกทอรี)

การแมป HTTP: 409 เกิดความขัดแย้ง

PERMISSION_DENIED

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

การแมป HTTP: 403 Forbidden

UNAUTHENTICATED

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

การแมป HTTP: 401 ไม่ได้รับอนุญาต

RESOURCE_EXHAUSTED

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

การแมป HTTP: 429 มีคำขอมากเกินไป

FAILED_PRECONDITION

ระบบปฏิเสธการดำเนินการเนื่องจากระบบไม่อยู่ในสถานะที่จำเป็นสำหรับการดำเนินการ เช่น ไดเรกทอรีที่จะลบไม่ใช่ไดเรกทอรีว่าง มีการดำเนินการ rmdir กับรายการที่ไม่ใช่ไดเรกทอรี เป็นต้น

ผู้ใช้บริการสามารถใช้หลักเกณฑ์ต่อไปนี้เพื่อเลือกระหว่าง FAILED_PRECONDITION, ABORTED และ UNAVAILABLE ได้ (ก) ใช้ UNAVAILABLE หากไคลเอ็นต์ลองโทรซ้ำเฉพาะการโทรที่ไม่สำเร็จได้ (ข) ใช้ ABORTED หากไคลเอ็นต์ควรลองอีกครั้งในระดับที่สูงขึ้น เช่น เมื่อการทดสอบและตั้งค่าที่ไคลเอ็นต์ระบุล้มเหลว ซึ่งบ่งบอกว่าไคลเอ็นต์ควรเริ่มลำดับการอ่าน-แก้ไข-เขียนใหม่ (ค) ใช้ FAILED_PRECONDITION หากไคลเอ็นต์ไม่ควรลองอีกครั้งจนกว่าจะมีการแก้ไขสถานะระบบอย่างชัดเจน เช่น หาก "rmdir" ล้มเหลวเนื่องจากไดเรกทอรีไม่ว่าง ควรแสดงผล FAILED_PRECONDITION เนื่องจากไคลเอ็นต์ไม่ควรรีลองจนกว่าจะลบไฟล์ออกจากไดเรกทอรี

การแมป HTTP: 400 คำขอไม่ถูกต้อง

ABORTED

การดำเนินการถูกยกเลิก โดยปกติแล้วเกิดจากปัญหาการทำงานพร้อมกัน เช่น การตรวจสอบลำดับไม่สำเร็จหรือการยกเลิกธุรกรรม

ดูหลักเกณฑ์ด้านบนเพื่อเลือกระหว่าง FAILED_PRECONDITION, ABORTED และ UNAVAILABLE

การแมป HTTP: 409 เกิดความขัดแย้ง

OUT_OF_RANGE

พยายามดำเนินการนอกช่วงที่ถูกต้อง เช่น การค้นหาหรือการอ่านที่เกินจุดสิ้นสุดของไฟล์

ข้อผิดพลาดนี้ต่างจาก INVALID_ARGUMENT ตรงที่บ่งชี้ถึงปัญหาที่อาจแก้ไขได้หากสถานะของระบบเปลี่ยนแปลง ตัวอย่างเช่น ระบบไฟล์ 32 บิตจะสร้าง INVALID_ARGUMENT หากมีการขอให้อ่านที่ออฟเซ็ตที่ไม่อยู่ในช่วง [0,2^32-1] แต่จะสร้าง OUT_OF_RANGE หากมีการขอให้อ่านจากออฟเซ็ตที่เกินขนาดไฟล์ปัจจุบัน

FAILED_PRECONDITION และ OUT_OF_RANGE มีความทับซ้อนกันอยู่พอสมควร เราขอแนะนำให้ใช้ OUT_OF_RANGE (ข้อผิดพลาดที่เฉพาะเจาะจงมากขึ้น) เมื่อเกี่ยวข้อง เพื่อให้ผู้โทรที่วนซ้ำในพื้นที่ค้นหาข้อผิดพลาด OUT_OF_RANGE ได้ง่ายๆ เพื่อตรวจหาว่าดำเนินการเสร็จแล้วเมื่อใด

การแมป HTTP: 400 คำขอไม่ถูกต้อง

UNIMPLEMENTED

การดำเนินการนี้ยังไม่เสร็จสิ้นหรือไม่รองรับ/เปิดใช้ในบริการนี้

การแมป HTTP: 501 ไม่มีการใช้งาน

INTERNAL

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

การแมป HTTP: 500 ข้อผิดพลาดภายในเซิร์ฟเวอร์

UNAVAILABLE

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

ดูหลักเกณฑ์ด้านบนเพื่อเลือกระหว่าง FAILED_PRECONDITION, ABORTED และ UNAVAILABLE

การแมป HTTP: 503 ไม่พร้อมให้บริการ

DATA_LOSS

ข้อมูลสูญหายโดยกู้คืนไม่ได้หรือข้อมูลเสียหาย

การแมป HTTP: 500 ข้อผิดพลาดภายในเซิร์ฟเวอร์

UpdatedWidget

สำหรับวิดเจ็ต selectionInput จะแสดงคำแนะนำการเติมข้อความอัตโนมัติสำหรับการคืนค่าสำหรับเมนูแบบเลือกหลายรายการ

การแสดง JSON
{
  "widget": string,

  // Union field updated_widget can be only one of the following:
  "suggestions": {
    object (SelectionItems)
  }
  // End of list of possible types for union field updated_widget.
}
ช่อง
widget

string

รหัสของวิดเจ็ตที่อัปเดต รหัสต้องตรงกับรหัสของวิดเจ็ตที่ทริกเกอร์คำขออัปเดต

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

object (SelectionItems)

รายการผลการเติมข้อความอัตโนมัติของวิดเจ็ต

SelectionItems

รายการผลการเติมข้อความอัตโนมัติของวิดเจ็ต

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

object (SelectionItem)

อาร์เรย์ของออบเจ็กต์ SelectionItem

SlashCommand

ข้อมูลเมตาเกี่ยวกับคำสั่งเครื่องหมายทับใน Google Chat

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

string (int64 format)

รหัสของคำสั่งเครื่องหมายทับ

MatchedUrl

URL ที่ตรงกันในข้อความ Chat แอปแชทสามารถแสดงตัวอย่าง URL ที่ตรงกันได้ ดูข้อมูลเพิ่มเติมได้ที่แสดงตัวอย่างลิงก์

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

string

เอาต์พุตเท่านั้น URL ที่ตรงกัน

EmojiReactionSummary

จำนวนคนที่รีแอ็กต่อข้อความด้วยอีโมจิที่เฉพาะเจาะจง

การแสดง JSON
{
  "emoji": {
    object (Emoji)
  },
  "reactionCount": integer
}
ช่อง
emoji

object (Emoji)

เอาต์พุตเท่านั้น อีโมจิที่เชื่อมโยงกับรีแอ็กชัน

reactionCount

integer

เอาต์พุตเท่านั้น จำนวนรีแอ็กชันทั้งหมดที่ใช้โดยใช้อีโมจิที่เชื่อมโยง

DeletionMetadata

ข้อมูลเกี่ยวกับข้อความที่ถูกลบ ระบบจะลบข้อความเมื่อตั้งค่า deleteTime

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

enum (DeletionType)

ระบุผู้ที่ลบข้อความ

DeletionType

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

Enum
DELETION_TYPE_UNSPECIFIED ค่านี้ไม่ได้ใช้
CREATOR ผู้ใช้ลบข้อความของตนเอง
SPACE_OWNER ผู้จัดการพื้นที่ทำงานลบข้อความ
ADMIN ผู้ดูแลระบบ Google Workspace ลบข้อความ ผู้ดูแลระบบสามารถลบข้อความใดก็ได้ในพื้นที่ทำงาน ซึ่งรวมถึงข้อความที่สมาชิกในพื้นที่ทำงานหรือแอป Chat ส่ง
APP_MESSAGE_EXPIRY แอป Chat ลบข้อความของตัวเองเมื่อหมดอายุ
CREATOR_VIA_APP แอป Chat ลบข้อความในนามของผู้สร้าง (โดยใช้การตรวจสอบสิทธิ์ผู้ใช้)
SPACE_OWNER_VIA_APP แอป Chat ลบข้อความในนามของผู้จัดการพื้นที่ทำงาน (โดยใช้การตรวจสอบสิทธิ์ผู้ใช้)
SPACE_MEMBER สมาชิกในพื้นที่ทำงานลบข้อความ ผู้ใช้สามารถลบข้อความที่แอปส่งได้

QuotedMessageMetadata

ข้อมูลเกี่ยวกับข้อความที่อ้างอิง

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

string

เอาต์พุตเท่านั้น ชื่อทรัพยากรของข้อความที่อ้างอิง

รูปแบบ: spaces/{space}/messages/{message}

lastUpdateTime

string (Timestamp format)

เอาต์พุตเท่านั้น การประทับเวลาเมื่อสร้างข้อความที่ยกมาหรือเมื่ออัปเดตข้อความที่ยกมาครั้งล่าสุด

AttachedGif

รูปภาพ GIF ที่ระบุโดย URL

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

string

เอาต์พุตเท่านั้น URL ที่โฮสต์รูปภาพ GIF

AccessoryWidget

วิดเจ็ตแบบอินเทอร์แอกทีฟอย่างน้อย 1 รายการที่ปรากฏที่ด้านล่างของข้อความ โปรดดูรายละเอียดที่หัวข้อเพิ่มวิดเจ็ตแบบอินเทอร์แอกทีฟที่ด้านล่างของข้อความ

การแสดง JSON
{

  // Union field action can be only one of the following:
  "buttonList": {
    object (ButtonList)
  }
  // End of list of possible types for union field action.
}
ช่อง
ฟิลด์ Union action ประเภทของการดำเนินการ action ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
buttonList

object (ButtonList)

รายการปุ่ม

เมธอด

create

สร้างข้อความในพื้นที่ใน Google Chat

delete

ลบข้อความ

get

แสดงรายละเอียดเกี่ยวกับข้อความ

list

แสดงข้อความในพื้นที่ทำงานที่ผู้โทรเป็นสมาชิก รวมถึงข้อความจากสมาชิกและพื้นที่ทำงานที่ถูกบล็อก

patch

อัปเดตข้อความ

update

อัปเดตข้อความ