REST Resource: spaces.messages

Tài nguyên: Thông báo

Tin nhắn trong phòng Google Chat.

Biểu diễn dưới dạng 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)
    }
  ]
}
Trường
name

string

Giá trị nhận dạng. Tên tài nguyên của thông báo.

Định dạng spaces/{space}/messages/{message}

Trong đó {space} là mã nhận dạng của không gian đăng thông báo và {message} là mã nhận dạng do hệ thống chỉ định cho thông báo đó. Ví dụ: spaces/AAAAAAAAAAA/messages/BBBBBBBBBBB.BBBBBBBBBBB.

Nếu đặt mã nhận dạng tuỳ chỉnh khi tạo thông báo, bạn có thể sử dụng mã nhận dạng này để chỉ định thông báo trong yêu cầu bằng cách thay thế {message} bằng giá trị trong trường clientAssignedMessageId. Ví dụ: spaces/AAAAAAAAAAA/messages/client-custom-name. Để biết thông tin chi tiết, hãy xem phần Đặt tên cho thông báo.

sender

object (User)

Chỉ có đầu ra. Người dùng đã tạo thư. Nếu ứng dụng Chat xác thực dưới dạng người dùng, thì kết quả sẽ điền sẵn nametype của người dùng.

createTime

string (Timestamp format)

Không bắt buộc. Không thể thay đổi. Đối với những không gian được tạo trong Chat, đó là thời điểm tin nhắn được tạo. Trường này chỉ dành cho kết quả đầu ra, trừ phi được dùng trong không gian ở chế độ nhập.

Đối với không gian ở chế độ nhập, hãy đặt trường này thành dấu thời gian trong quá khứ tại thời điểm tạo thông báo trong nguồn để giữ nguyên thời gian tạo ban đầu.

lastUpdateTime

string (Timestamp format)

Chỉ có đầu ra. Thời gian người dùng chỉnh sửa thông báo gần đây nhất. Nếu thư chưa từng được chỉnh sửa, thì trường này trống.

deleteTime

string (Timestamp format)

Chỉ có đầu ra. Thời điểm tin nhắn bị xoá trong Google Chat. Nếu thư không bao giờ bị xoá, trường này sẽ trống.

text

string

Không bắt buộc. Nội dung thư ở dạng văn bản thuần tuý. Đường liên kết đầu tiên đến hình ảnh, video hoặc trang web sẽ tạo ra một khối xem trước. Bạn cũng có thể @thao tác nhắc đến một người dùng Google Chat hoặc mọi người trong không gian.

Để tìm hiểu về cách tạo tin nhắn văn bản, hãy xem phần Gửi tin nhắn.

formattedText

string

Chỉ có đầu ra. Chứa thông báo text với các mã đánh dấu được thêm vào để truyền đạt định dạng. Trường này có thể không ghi lại tất cả định dạng hiển thị trong giao diện người dùng, nhưng bao gồm những định dạng sau:

  • Cú pháp đánh dấu cho văn bản in đậm, in nghiêng, gạch ngang, phông chữ một khoảng cách, khối phông chữ một khoảng cách và danh sách có dấu đầu dòng.

  • Nội dung đề cập đến người dùng sử dụng định dạng <users/{user}>.

  • Siêu liên kết tuỳ chỉnh sử dụng định dạng <{url}|{rendered_text}>, trong đó chuỗi đầu tiên là URL và chuỗi thứ hai là văn bản được kết xuất, ví dụ: <http://example.com|custom text>.

  • Biểu tượng cảm xúc tuỳ chỉnh ở định dạng :{emojiName}: (ví dụ: :smile:). Điều này không áp dụng cho biểu tượng cảm xúc Unicode, chẳng hạn như U+1F600 cho biểu tượng mặt cười.

Để biết thêm thông tin, hãy xem phần Xem định dạng văn bản được gửi trong một thư

cards[]
(deprecated)

object (Card)

Không dùng nữa: Chuyển sang dùng cardsV2.

Thẻ đa dạng thức, được định dạng và có tính tương tác mà bạn có thể dùng để hiển thị các thành phần trên giao diện người dùng, chẳng hạn như: văn bản được định dạng, nút và hình ảnh có thể nhấp vào. Thẻ thường xuất hiện bên dưới nội dung văn bản thuần tuý của thư. cardscardsV2 có thể có kích thước tối đa là 32 KB.

cardsV2[]

object (CardWithId)

Không bắt buộc. Một mảng thẻ.

Chỉ các ứng dụng Chat mới có thể tạo thẻ. Nếu ứng dụng Chat của bạn xác thực dưới dạng người dùng, thì tin nhắn không được chứa thẻ.

Để tìm hiểu cách tạo tin nhắn chứa thẻ, hãy xem phần Gửi tin nhắn.

Thiết kế và xem trước thẻ bằng Trình tạo thẻ.

Mở Trình tạo thẻ

annotations[]

object (Annotation)

Chỉ có đầu ra. Chú thích liên kết với text trong thông báo này.

thread

object (Thread)

Chuỗi tin nhắn mà thư thuộc về. Để biết ví dụ về cách sử dụng, hãy xem phần Bắt đầu hoặc trả lời một chuỗi tin nhắn.

space

object (Space)

Chỉ có đầu ra. Nếu ứng dụng Chat xác thực với tư cách người dùng, thì kết quả chỉ điền sẵn không gian name.

fallbackText

string

Không bắt buộc. Nội dung mô tả dưới dạng văn bản thuần tuý về các thẻ của thông báo, được sử dụng khi không thể hiển thị thẻ thực tế (ví dụ: thông báo trên thiết bị di động).

actionResponse

object (ActionResponse)

Chỉ nhập. Các thông số mà ứng dụng Chat có thể sử dụng để định cấu hình cách đăng phản hồi.

argumentText

string

Chỉ có đầu ra. Nội dung tin nhắn ở dạng văn bản thuần tuý, trong đó xoá tất cả nội dung đề cập đến ứng dụng Chat.

slashCommand

object (SlashCommand)

Chỉ có đầu ra. Thông tin về lệnh dấu gạch chéo, nếu có.

attachment[]

object (Attachment)

Không bắt buộc. Tệp đính kèm do người dùng tải lên.

matchedUrl

object (MatchedUrl)

Chỉ có đầu ra. URL trong spaces.messages.text khớp với một mẫu xem trước đường liên kết. Để biết thêm thông tin, hãy xem phần Xem trước đường liên kết.

threadReply

boolean

Chỉ có đầu ra. Khi true, tin nhắn là một câu trả lời trong chuỗi tin nhắn trả lời. Khi false, tin nhắn sẽ xuất hiện trong cuộc trò chuyện cấp cao nhất của không gian dưới dạng tin nhắn đầu tiên trong một chuỗi hoặc một tin nhắn không có tin nhắn trả lời theo chuỗi.

Nếu không gian không hỗ trợ tính năng trả lời trong chuỗi tin nhắn, thì trường này luôn là false.

clientAssignedMessageId

string

Không bắt buộc. Không bắt buộc. Mã nhận dạng tuỳ chỉnh cho thông báo. Bạn có thể sử dụng trường để xác định một thư hoặc để nhận, xoá hoặc cập nhật thư. Để đặt mã tuỳ chỉnh, hãy chỉ định trường messageId khi bạn tạo thông báo. Để biết thông tin chi tiết, hãy xem phần Gán tên cho thư.

emojiReactionSummaries[]

object (EmojiReactionSummary)

Chỉ có đầu ra. Danh sách tóm tắt các biểu tượng cảm xúc phản ứng trên tin nhắn.

privateMessageViewer

object (User)

Không bắt buộc. Bất biến. Dữ liệu đầu vào để tạo thông báo, nếu không thì chỉ có dữ liệu đầu ra. Người dùng có thể xem thông báo. Khi được đặt, tin nhắn sẽ ở chế độ riêng tư và chỉ người dùng được chỉ định và ứng dụng Chat mới thấy được. Để đưa trường này vào yêu cầu, bạn phải gọi API Chat bằng cách xác thực ứng dụng và bỏ qua những thông tin sau:

Để biết thông tin chi tiết, hãy xem bài viết Gửi tin nhắn riêng tư.

deletionMetadata

object (DeletionMetadata)

Chỉ có đầu ra. Thông tin về một thư đã xoá. Tin nhắn sẽ bị xoá khi bạn đặt deleteTime.

quotedMessageMetadata

object (QuotedMessageMetadata)

Chỉ có đầu ra. Thông tin về một tin nhắn mà người dùng Google Chat trích dẫn trong phòng. Người dùng Google Chat có thể trích dẫn một tin nhắn để trả lời tin nhắn đó.

attachedGifs[]

object (AttachedGif)

Chỉ có đầu ra. Hình ảnh GIF được đính kèm vào thư.

accessoryWidgets[]

object (AccessoryWidget)

Không bắt buộc. Một hoặc nhiều tiện ích tương tác xuất hiện ở cuối thư. Bạn có thể thêm tiện ích phụ kiện vào những tin nhắn chứa văn bản, thẻ hoặc cả văn bản và thẻ. Không hỗ trợ cho các tin nhắn chứa hộp thoại. Để biết thông tin chi tiết, hãy xem phần Thêm tiện ích tương tác ở cuối thư.

Để tạo một tin nhắn có tiện ích phụ kiện, bạn cần xác thực ứng dụng.

CardWithId

Một thẻ trong tin nhắn trên Google Chat.

Chỉ các ứng dụng Chat mới có thể tạo thẻ. Nếu ứng dụng Chat xác thực dưới dạng người dùng, thì tin nhắn không được chứa thẻ.

Thiết kế và xem trước thẻ bằng Trình tạo thẻ.

Mở Trình tạo thẻ

Biểu diễn dưới dạng JSON
{
  "cardId": string,
  "card": {
    object (Card)
  }
}
Trường
cardId

string

Bắt buộc nếu thư chứa nhiều thẻ. Giá trị nhận dạng duy nhất của một thẻ trong thư.

card

object (Card)

Thẻ. Kích thước tối đa là 32 KB.

Annotation

Chỉ có đầu ra. Chú giải liên kết với nội dung văn bản thuần tuý của thư. Để thêm định dạng cơ bản cho tin nhắn văn bản, hãy xem phần Định dạng tin nhắn văn bản.

Ví dụ về nội dung thư dạng văn bản thuần tuý:

Hello @FooBot how are you!"

Siêu dữ liệu chú thích tương ứng:

"annotations":[{
  "type":"USER_MENTION",
  "startIndex":6,
  "length":7,
  "userMention": {
    "user": {
      "name":"users/{user}",
      "displayName":"FooBot",
      "avatarUrl":"https://goo.gl/aeDtrS",
      "type":"BOT"
    },
    "type":"MENTION"
   }
}]
Biểu diễn dưới dạng 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.
}
Trường
type

enum (AnnotationType)

Loại chú thích này.

length

integer

Độ dài của chuỗi con trong nội dung thông báo dạng văn bản thuần tuý tương ứng với chú thích này.

startIndex

integer

Chỉ mục bắt đầu (dựa trên 0, bao gồm cả 0) trong nội dung thông báo văn bản thuần tuý tương ứng với chú thích này.

Trường kết hợp metadata. Siêu dữ liệu bổ sung về chú thích. metadata chỉ có thể là một trong những giá trị sau:
userMention

object (UserMentionMetadata)

Siêu dữ liệu về lượt đề cập người dùng.

slashCommand

object (SlashCommandMetadata)

Siêu dữ liệu cho lệnh dấu gạch chéo.

AnnotationType

Loại chú thích.

Enum
ANNOTATION_TYPE_UNSPECIFIED Giá trị mặc định của enum. Không sử dụng.
USER_MENTION Một người dùng được đề cập.
SLASH_COMMAND Lệnh dấu gạch chéo được gọi.

UserMentionMetadata

Siêu dữ liệu chú thích cho lượt đề cập của người dùng (@).

Biểu diễn dưới dạng JSON
{
  "user": {
    object (User)
  },
  "type": enum (Type)
}
Trường
user

object (User)

Người dùng được đề cập.

type

enum (Type)

Loại lượt đề cập đến người dùng.

Loại

Enum
TYPE_UNSPECIFIED Giá trị mặc định của enum. Không sử dụng.
ADD Thêm người dùng vào không gian.
MENTION Đề cập đến người dùng trong không gian.

SlashCommandMetadata

Siêu dữ liệu chú thích cho lệnh dấu gạch chéo (/).

Biểu diễn dưới dạng JSON
{
  "bot": {
    object (User)
  },
  "type": enum (Type),
  "commandName": string,
  "commandId": string,
  "triggersDialog": boolean
}
Trường
bot

object (User)

Ứng dụng Chat có lệnh được gọi.

type

enum (Type)

Loại lệnh dấu gạch chéo.

commandName

string

Tên của lệnh dấu gạch chéo được gọi.

commandId

string (int64 format)

Mã lệnh của lệnh dấu gạch chéo đã gọi.

triggersDialog

boolean

Cho biết liệu lệnh dấu gạch chéo có dành cho hộp thoại hay không.

Loại

Enum
TYPE_UNSPECIFIED Giá trị mặc định của enum. Không sử dụng.
ADD Thêm ứng dụng Chat vào không gian.
INVOKE Gọi lệnh dấu gạch chéo trong không gian.

RichLinkMetadata

Đường liên kết đa dạng thức đến một tài nguyên.

Biểu diễn dưới dạng JSON
{
  "uri": string,
  "richLinkType": enum (RichLinkType),

  // Union field data can be only one of the following:
  "driveLinkData": {
    object (DriveLinkData)
  },
  "chatSpaceLinkData": {
    object (ChatSpaceLinkData)
  }
  // End of list of possible types for union field data.
}
Trường
uri

string

URI của đường liên kết này.

Trường hợp hợp nhất data. Dữ liệu cho tài nguyên được liên kết. data chỉ có thể là một trong những trạng thái sau đây:

RichLinkType

Loại đường liên kết đa dạng thức. Các loại khác có thể được thêm vào trong tương lai.

Enum
DRIVE_FILE Loại đường liên kết đa dạng thức trên Google Drive.
CHAT_SPACE Loại đường liên kết đa dạng thức trong phòng Chat. Ví dụ: khối thông minh cho không gian.

DriveLinkData

Dữ liệu cho các đường liên kết đến Google Drive.

Biểu diễn dưới dạng JSON
{
  "driveDataRef": {
    object (DriveDataRef)
  },
  "mimeType": string
}
Trường
driveDataRef

object (DriveDataRef)

DriveDataRef tham chiếu đến một tệp trên Google Drive.

mimeType

string

Loại MIME của tài nguyên Google Drive được liên kết.

ChatSpaceLinkData

Dữ liệu về đường liên kết đến phòng Chat.

Biểu diễn dưới dạng JSON
{
  "space": string,
  "thread": string,
  "message": string
}
Trường
space

string

Không gian của tài nguyên phòng Chat được liên kết.

Định dạng spaces/{space}

thread

string

Luồng của tài nguyên phòng Chat được liên kết.

Định dạng spaces/{space}/threads/{thread}

message

string

Tin nhắn của tài nguyên trong phòng Chat được liên kết.

Định dạng spaces/{space}/messages/{message}

Chuỗi hội thoại

Một chuỗi cuộc trò chuyện trong phòng Google Chat. Để biết ví dụ về cách sử dụng, hãy xem phần Bắt đầu hoặc trả lời một chuỗi tin nhắn.

Nếu chỉ định một chuỗi khi tạo thông báo, thì bạn có thể đặt trường messageReplyOption để xác định việc sẽ xảy ra nếu không tìm thấy chuỗi nào trùng khớp.

Biểu diễn dưới dạng JSON
{
  "name": string,
  "threadKey": string
}
Trường
name

string

Giá trị nhận dạng. Tên tài nguyên của luồng.

Ví dụ: spaces/{space}/threads/{thread}

threadKey

string

Không bắt buộc. Dữ liệu đầu vào để tạo hoặc cập nhật luồng. Nếu không, chỉ có thể xuất đầu ra. Mã nhận dạng của luồng. Hỗ trợ tối đa 4.000 ký tự.

Mã này là duy nhất đối với ứng dụng Chat đã đặt mã đó. Ví dụ: nếu nhiều ứng dụng trong Chat tạo tin nhắn bằng cùng một khoá chuỗi tin nhắn, thì tin nhắn đó sẽ được đăng trong nhiều chuỗi tin nhắn. Để trả lời trong một chuỗi tin nhắn do một người hoặc một ứng dụng Chat khác tạo, hãy chỉ định trường name của chuỗi tin nhắn.

ActionResponse

Các thông số mà ứng dụng Chat có thể dùng để định cấu hình cách đăng câu trả lời.

Biểu diễn dưới dạng JSON
{
  "type": enum (ResponseType),
  "url": string,
  "dialogAction": {
    object (DialogAction)
  },
  "updatedWidget": {
    object (UpdatedWidget)
  }
}
Trường
type

enum (ResponseType)

Chỉ nhập. Loại phản hồi của ứng dụng trong Chat.

url

string

Chỉ nhập. URL để người dùng xác thực hoặc định cấu hình. (Chỉ dành cho REQUEST_CONFIG loại phản hồi.)

dialogAction

object (DialogAction)

Chỉ nhập. Phản hồi cho một sự kiện tương tác liên quan đến hộp thoại. Phải đi kèm với ResponseType.Dialog.

updatedWidget

object (UpdatedWidget)

Chỉ nhập. Phản hồi của tiện ích đã cập nhật.

ResponseType

Loại phản hồi của ứng dụng trong Chat.

Enum
TYPE_UNSPECIFIED Loại mặc định được xử lý là NEW_MESSAGE.
NEW_MESSAGE Đăng dưới dạng tin nhắn mới trong chủ đề.
UPDATE_MESSAGE Cập nhật tin nhắn của ứng dụng Chat. Điều này chỉ được phép trên sự kiện CARD_CLICKED khi loại người gửi thư là BOT.
UPDATE_USER_MESSAGE_CARDS Cập nhật các thẻ trên tin nhắn của người dùng. Điều này chỉ được phép dùng làm phản hồi cho sự kiện MESSAGE có URL khớp hoặc sự kiện CARD_CLICKED trong đó loại người gửi thư là HUMAN. Bỏ qua văn bản.
REQUEST_CONFIG Yêu cầu riêng tư người dùng xác thực hoặc định cấu hình bổ sung.
DIALOG Trình bày một hộp thoại.
UPDATE_WIDGET Truy vấn các tuỳ chọn tự động hoàn thành văn bản tiện ích.

DialogAction

Chứa hộp thoại và yêu cầu mã trạng thái.

Biểu diễn dưới dạng 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.
}
Trường
actionStatus

object (ActionStatus)

Chỉ nhập. Trạng thái của yêu cầu gọi hoặc gửi hộp thoại. Hiển thị trạng thái và thông báo cho người dùng (nếu cần). Ví dụ: trong trường hợp xảy ra lỗi hoặc thành công.

Trường kết hợp action. Hành động cần thực hiện. action chỉ có thể là một trong những giá trị sau:
dialog

object (Dialog)

Chỉ nhập. Hộp thoại cho yêu cầu.

Hộp thoại

Trình bao bọc xung quanh phần thân thẻ của hộp thoại.

Biểu diễn dưới dạng JSON
{
  "body": {
    object (Card)
  }
}
Trường
body

object (Card)

Chỉ nhập. Nội dung của hộp thoại, được hiển thị theo phương thức. Ứng dụng Google Chat không hỗ trợ các thực thể thẻ sau: DateTimePicker, OnChangeAction.

ActionStatus

Biểu thị trạng thái của một yêu cầu gọi hoặc gửi hộp thoại.

Biểu diễn dưới dạng JSON
{
  "statusCode": enum (Code),
  "userFacingMessage": string
}
Trường
statusCode

enum (Code)

Mã trạng thái.

userFacingMessage

string

Thông báo gửi cho người dùng về trạng thái yêu cầu của họ. Nếu không đặt, hệ thống sẽ gửi một thông báo chung dựa trên statusCode.

Mã lỗi chính tắc cho API gRPC.

Đôi khi, có thể áp dụng nhiều mã lỗi. Dịch vụ phải trả về mã lỗi cụ thể nhất được áp dụng. Ví dụ: ưu tiên OUT_OF_RANGE hơn FAILED_PRECONDITION nếu cả hai mã đều áp dụng. Tương tự, hãy ưu tiên NOT_FOUND hoặc ALREADY_EXISTS hơn FAILED_PRECONDITION.

Enum
OK

Không phải là lỗi; được trả về khi thành công.

Ánh xạ HTTP: 200 OK

CANCELLED

Thao tác đã bị huỷ, thường là do phương thức gọi.

Ánh xạ HTTP: 499 Yêu cầu đã đóng của ứng dụng

UNKNOWN

Lỗi không xác định. Ví dụ: lỗi này có thể được trả về khi một giá trị Status nhận được từ một không gian địa chỉ khác thuộc về một không gian lỗi không xác định trong không gian địa chỉ này. Ngoài ra, lỗi do những API không trả về đủ thông tin lỗi có thể được chuyển đổi thành lỗi này.

Ánh xạ HTTP: 500 Lỗi máy chủ nội bộ

INVALID_ARGUMENT

Khách hàng đã chỉ định một đối số không hợp lệ. Xin lưu ý rằng thuộc tính này khác với FAILED_PRECONDITION. INVALID_ARGUMENT cho biết các đối số có vấn đề bất kể trạng thái của hệ thống (ví dụ: tên tệp có định dạng không chính xác).

Ánh xạ HTTP: 400 Yêu cầu không hợp lệ

DEADLINE_EXCEEDED

Đã hết thời hạn trước khi thao tác có thể hoàn tất. Đối với những hoạt động thay đổi trạng thái của hệ thống, lỗi này có thể được trả về ngay cả khi thao tác đã hoàn tất thành công. Ví dụ: một phản hồi thành công từ máy chủ có thể bị trì hoãn đủ lâu đến thời hạn.

Ánh xạ HTTP: Hết thời gian chờ của cổng 504

NOT_FOUND

Không tìm thấy một số thực thể được yêu cầu (ví dụ: tệp hoặc thư mục).

Lưu ý cho các nhà phát triển máy chủ: nếu yêu cầu bị từ chối đối với toàn bộ một nhóm người dùng, chẳng hạn như triển khai tính năng dần dần hoặc danh sách cho phép không được ghi nhận, thì NOT_FOUND có thể được sử dụng. Nếu một yêu cầu bị từ chối đối với một số người dùng trong một lớp người dùng, chẳng hạn như kiểm soát quyền truy cập dựa trên người dùng, thì bạn phải sử dụng PERMISSION_DENIED.

Ánh xạ HTTP: Không tìm thấy 404

ALREADY_EXISTS

Thực thể mà ứng dụng khách tìm cách tạo (ví dụ: tệp hoặc thư mục) đã tồn tại.

Ánh xạ HTTP: Xung đột 409

PERMISSION_DENIED

Phương thức gọi không có quyền thực thi thao tác đã chỉ định. Không được sử dụng PERMISSION_DENIED cho các trường hợp bị từ chối do làm cạn kiệt tài nguyên (hãy dùng RESOURCE_EXHAUSTED thay cho các lỗi đó). Không được sử dụng PERMISSION_DENIED nếu không thể xác định phương thức gọi (hãy dùng UNAUTHENTICATED để khắc phục những lỗi đó). Mã lỗi này không ngụ ý yêu cầu là hợp lệ hoặc thực thể được yêu cầu tồn tại hoặc đáp ứng các điều kiện tiên quyết khác.

Ánh xạ HTTP: 403 bị cấm

UNAUTHENTICATED

Yêu cầu không có thông tin xác thực hợp lệ cho thao tác này.

Ánh xạ HTTP: 401 Không được phép

RESOURCE_EXHAUSTED

Một số tài nguyên đã hết, có thể là hạn mức trên mỗi người dùng hoặc có thể toàn bộ hệ thống tệp đã hết dung lượng.

Ánh xạ HTTP: 429 Quá nhiều yêu cầu

FAILED_PRECONDITION

Thao tác đã bị từ chối vì hệ thống không ở trạng thái cần thiết để thực thi thao tác. Ví dụ: thư mục cần xoá không trống, thao tác rmdir được áp dụng cho một thư mục không phải là thư mục, v.v.

Người triển khai dịch vụ có thể sử dụng các nguyên tắc sau để quyết định giữa FAILED_PRECONDITION, ABORTEDUNAVAILABLE: (a) Sử dụng UNAVAILABLE nếu ứng dụng chỉ có thể thử lại lệnh gọi không thành công. (b) Sử dụng ABORTED nếu ứng dụng nên thử lại ở cấp cao hơn. Ví dụ: khi một kiểm thử và tập hợp do ứng dụng chỉ định không thành công, cho biết ứng dụng cần khởi động lại trình tự đọc-sửa đổi-ghi. (c) Sử dụng FAILED_PRECONDITION nếu máy khách không nên thử lại cho đến khi trạng thái hệ thống được khắc phục một cách rõ ràng. Ví dụ: nếu "rmdir" không thành công do thư mục này không trống, thì hệ thống phải trả về FAILED_PRECONDITION vì ứng dụng không nên thử lại trừ phi các tệp bị xoá khỏi thư mục.

Ánh xạ HTTP: Yêu cầu không hợp lệ 400

ABORTED

Thao tác đã bị huỷ, thường là do vấn đề đồng thời như không kiểm tra được trình tự hoặc huỷ giao dịch.

Hãy xem các nguyên tắc ở trên để quyết định giữa FAILED_PRECONDITION, ABORTEDUNAVAILABLE.

Ánh xạ HTTP: Xung đột 409

OUT_OF_RANGE

Thao tác đã được thực hiện quá phạm vi hợp lệ. Ví dụ: tìm kiếm hoặc đọc quá cuối tệp.

Không giống như INVALID_ARGUMENT, lỗi này cho biết một vấn đề có thể được khắc phục nếu trạng thái hệ thống thay đổi. Ví dụ: hệ thống tệp 32 bit sẽ tạo INVALID_ARGUMENT nếu được yêu cầu đọc ở một độ dời không nằm trong phạm vi [0,2^32-1], nhưng sẽ tạo OUT_OF_RANGE nếu được yêu cầu đọc từ một độ dời vượt quá kích thước tệp hiện tại.

Có một chút trùng lặp giữa FAILED_PRECONDITIONOUT_OF_RANGE. Bạn nên sử dụng OUT_OF_RANGE (lỗi cụ thể hơn) khi áp dụng lỗi này để những phương thức gọi đang lặp lại qua một không gian có thể dễ dàng tìm lỗi OUT_OF_RANGE nhằm phát hiện thời điểm hoàn tất.

Ánh xạ HTTP: 400 Yêu cầu không hợp lệ

UNIMPLEMENTED

Thao tác này không được triển khai hoặc không được hỗ trợ/bật trong dịch vụ này.

Liên kết HTTP: 501 Chưa triển khai

INTERNAL

Lỗi nội bộ. Điều này có nghĩa là một số hằng số mà hệ thống cơ bản dự kiến đã bị phá vỡ. Mã lỗi này dành riêng cho các lỗi nghiêm trọng.

Ánh xạ HTTP: 500 Lỗi máy chủ nội bộ

UNAVAILABLE

Dịch vụ này hiện không dùng được. Đây có thể là một tình trạng tạm thời và có thể khắc phục bằng cách thử lại với thời gian đợi. Lưu ý rằng không phải lúc nào bạn cũng có thể thử lại các thao tác không hoạt động bất biến.

Hãy xem các nguyên tắc ở trên để quyết định giữa FAILED_PRECONDITION, ABORTEDUNAVAILABLE.

Ánh xạ HTTP: 503 Không có dịch vụ

DATA_LOSS

Dữ liệu bị mất hoặc không khôi phục được.

Ánh xạ HTTP: 500 Lỗi máy chủ nội bộ

UpdatedWidget

Phản hồi của tiện ích đã cập nhật. Dùng để cung cấp các lựa chọn tự động hoàn thành cho một tiện ích.

Biểu diễn dưới dạng 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.
}
Trường
widget

string

Mã của tiện ích đã cập nhật. Mã nhận dạng này phải khớp với mã nhận dạng của tiện ích đã kích hoạt yêu cầu cập nhật.

Trường hợp hợp nhất updated_widget. Tiện ích được cập nhật để phản hồi một hành động của người dùng. updated_widget chỉ có thể là một trong những giá trị sau:
suggestions

object (SelectionItems)

Danh sách kết quả tự động hoàn thành tiện ích

SelectionItems

Danh sách kết quả tự động hoàn thành tiện ích.

Biểu diễn dưới dạng JSON
{
  "items": [
    {
      object (SelectionItem)
    }
  ]
}
Trường
items[]

object (SelectionItem)

Một mảng các đối tượng SelectionItem.

SlashCommand

Lệnh dấu gạch chéo trong Google Chat.

Biểu diễn dưới dạng JSON
{
  "commandId": string
}
Trường
commandId

string (int64 format)

Mã của lệnh gạch chéo được gọi.

MatchedUrl

URL trùng khớp trong một tin nhắn trên Chat. Các ứng dụng nhắn tin có thể xem trước URL trùng khớp. Để biết thêm thông tin, hãy xem bài viết Xem trước đường liên kết.

Biểu diễn dưới dạng JSON
{
  "url": string
}
Trường
url

string

Chỉ có đầu ra. URL được so khớp.

EmojiReactionSummary

Số người đã thể hiện cảm xúc với một tin nhắn bằng một biểu tượng cảm xúc cụ thể.

Biểu diễn dưới dạng JSON
{
  "emoji": {
    object (Emoji)
  },
  "reactionCount": integer
}
Trường
emoji

object (Emoji)

Chỉ có đầu ra. Biểu tượng cảm xúc được liên kết với các lượt thể hiện cảm xúc.

reactionCount

integer

Chỉ có đầu ra. Tổng số lượt thể hiện cảm xúc bằng biểu tượng cảm xúc được liên kết.

DeletionMetadata

Thông tin về một thư đã xoá. Một tin nhắn sẽ bị xoá khi bạn đặt deleteTime.

Biểu diễn dưới dạng JSON
{
  "deletionType": enum (DeletionType)
}
Trường
deletionType

enum (DeletionType)

Cho biết người đã xoá thư.

DeletionType

Người đã xoá tin nhắn và cách xoá tin nhắn. Các giá trị khác có thể được thêm trong tương lai.

Enum
DELETION_TYPE_UNSPECIFIED Giá trị này không được sử dụng.
CREATOR Người dùng đã xoá tin nhắn của chính họ.
SPACE_OWNER Chủ sở hữu không gian đã xoá tin nhắn này.
ADMIN Một quản trị viên Google Workspace đã xoá tin nhắn này.
APP_MESSAGE_EXPIRY Một ứng dụng Chat đã xoá tin nhắn của chính mình khi tin nhắn đó hết hạn.
CREATOR_VIA_APP Ứng dụng Chat đã xoá tin nhắn thay mặt cho người dùng.
SPACE_OWNER_VIA_APP Một ứng dụng Chat đã xoá tin nhắn này thay mặt cho chủ sở hữu không gian.

QuotedMessageMetadata

Thông tin về tin nhắn được trích dẫn.

Biểu diễn dưới dạng JSON
{
  "name": string,
  "lastUpdateTime": string
}
Trường
name

string

Chỉ có đầu ra. Tên tài nguyên của thư được trích dẫn.

Định dạng spaces/{space}/messages/{message}

lastUpdateTime

string (Timestamp format)

Chỉ có đầu ra. Dấu thời gian khi thư được trích dẫn được tạo hoặc khi thư được trích dẫn được cập nhật gần đây nhất.

AttachedGif

Hình ảnh GIF được chỉ định bằng URL.

Biểu diễn dưới dạng JSON
{
  "uri": string
}
Trường
uri

string

Chỉ có đầu ra. URL lưu trữ hình ảnh GIF.

AccessoryWidget

Một hoặc nhiều tiện ích tương tác xuất hiện ở cuối thư. Để biết thông tin chi tiết, hãy xem phần Thêm tiện ích tương tác ở cuối thư.

Biểu diễn dưới dạng JSON
{

  // Union field action can be only one of the following:
  "buttonList": {
    object (ButtonList)
  }
  // End of list of possible types for union field action.
}
Trường
Trường hợp hợp nhất action. Loại hành động. action chỉ có thể là một trong những trạng thái sau đây:
buttonList

object (ButtonList)

Danh sách các nút.

Phương thức

create

Tạo tin nhắn trong phòng Google Chat.

delete

Xoá tin nhắn.

get

Trả về thông tin chi tiết về một thông báo.

list

Liệt kê tin nhắn trong một không gian mà người gọi là thành viên, bao gồm cả tin nhắn của các thành viên và không gian bị chặn.

patch

Cập nhật tin nhắn.

update

Cập nhật tin nhắn.