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 ตรวจสอบสิทธิ์ในฐานะผู้ใช้ เอาต์พุตจะป้อนข้อมูลผู้ใช้ 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 และรายการที่ 2 คือข้อความที่แสดงผล เช่น <http://example.com|custom text>

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

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

cards[]
(deprecated)

object (Card)

เลิกใช้งานแล้ว: ใช้ cardsV2 แทน

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

cardsV2[]

object (CardWithId)

อาร์เรย์ของการ์ด

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

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

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

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

annotations[]

object (Annotation)

เอาต์พุตเท่านั้น คำอธิบายประกอบที่เชื่อมโยงกับ text ในข้อความนี้

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 เท่านั้นที่ส่งข้อความส่วนตัวได้ หากแอป Chat ตรวจสอบสิทธิ์ในฐานะผู้ใช้เพื่อส่งข้อความ ข้อความดังกล่าวจะไม่สามารถเป็นแบบส่วนตัวและต้องยกเว้นช่องนี้

โปรดดูรายละเอียดที่หัวข้อส่งข้อความส่วนตัวไปยังผู้ใช้ Google Chat

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

หมายเหตุ

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

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

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)
  }
  // End of list of possible types for union field metadata.
}
ช่อง
type

enum (AnnotationType)

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

length

integer

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

startIndex

integer

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

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

object (UserMentionMetadata)

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

slashCommand

object (SlashCommandMetadata)

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

AnnotationType

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

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

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

ชื่อของคำสั่งเครื่องหมายทับที่เรียกใช้

commandId

string (int64 format)

รหัสคำสั่งของคำสั่งเครื่องหมายทับที่เรียกใช้

triggersDialog

boolean

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

ประเภท

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

RichLinkMetadata

ลิงก์แบบสมบูรณ์ไปยังทรัพยากร

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

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

string

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

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

RichLinkType

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

Enum
DRIVE_FILE ประเภทลิงก์แบบสมบูรณ์ของ Google ไดรฟ์

DriveLinkData

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

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

object (DriveDataRef)

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

mimeType

string

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

ชุดข้อความ

ชุดข้อความในพื้นที่ทำงานของ 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)

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

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

object (Dialog)

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

Dialog

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

การแสดง 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 หากใช้รหัสทั้งสอง ในทำนองเดียวกัน โปรดใช้ 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 หากลูกค้าควรลองอีกครั้งในระดับที่สูงกว่า เช่น เมื่อการทดสอบและการตั้งค่าที่ระบุโดยไคลเอ็นต์ล้มเหลว หมายความว่าไคลเอ็นต์ควรรีสตาร์ทลำดับ Read-modify-write (ค) ใช้ 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

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

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

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

DATA_LOSS

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

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

UpdatedWidget

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

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

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

ฟิลด์สหภาพ 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

ผู้ที่ลบข้อความและวิธีลบข้อความ

Enum
DELETION_TYPE_UNSPECIFIED ค่านี้ไม่ได้ใช้
CREATOR ผู้ใช้ลบข้อความของตนเอง
SPACE_OWNER เจ้าของพื้นที่ทำงานลบข้อความ
ADMIN ผู้ดูแลระบบ Google Workspace ลบข้อความแล้ว
APP_MESSAGE_EXPIRY แอป Chat ลบข้อความของตัวเองเมื่อหมดอายุ
CREATOR_VIA_APP แอป Chat ลบข้อความในนามของผู้ใช้
SPACE_OWNER_VIA_APP แอป Chat ลบข้อความในนามของเจ้าของพื้นที่ทำงาน

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.
}
ช่อง
ฟิลด์สหภาพ action ประเภทของการดำเนินการ action ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
buttonList

object (ButtonList)

รายการปุ่ม

วิธีการ

create

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

delete

ลบข้อความ

get

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

list

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

patch

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

update

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