Skip to content

Commit 66d47db

Browse files
Google APIscopybara-github
authored andcommitted
feat: Addition of QuoteType enum, QuotedMessageSnapshot & ForwardMetadata in the QuotedMessageMetadata proto
PiperOrigin-RevId: 864426372
1 parent c0fcb35 commit 66d47db

File tree

1 file changed

+75
-1
lines changed

1 file changed

+75
-1
lines changed

google/chat/v1/message.proto

Lines changed: 75 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright 2025 Google LLC
1+
// Copyright 2026 Google LLC
22
//
33
// Licensed under the Apache License, Version 2.0 (the "License");
44
// you may not use this file except in compliance with the License.
@@ -292,6 +292,23 @@ message QuotedMessageMetadata {
292292
pattern: "spaces/{space}/messages/{message}/quotedMessageMetadata/{quoted_message_metadata}"
293293
};
294294

295+
// The quote type of the quoted message.
296+
enum QuoteType {
297+
// Reserved. This value is unused.
298+
QUOTE_TYPE_UNSPECIFIED = 0;
299+
300+
// If quote_type is `REPLY`, you can do the following:
301+
//
302+
// * If you're replying in a thread, you can quote another message in that
303+
// thread.
304+
//
305+
// * If you're creating a root message, you can quote another root message
306+
// in that space.
307+
//
308+
// You can't quote a message reply from a different thread.
309+
REPLY = 1;
310+
}
311+
295312
// Required. Resource name of the message that is quoted.
296313
//
297314
// Format: `spaces/{space}/messages/{message}`
@@ -310,6 +327,63 @@ message QuotedMessageMetadata {
310327
// message, the request fails.
311328
google.protobuf.Timestamp last_update_time = 2
312329
[(google.api.field_behavior) = REQUIRED];
330+
331+
// Optional. Specifies the quote type. If not set, defaults to REPLY in the
332+
// message read/write path for backward compatibility.
333+
QuoteType quote_type = 4 [(google.api.field_behavior) = OPTIONAL];
334+
335+
// Output only. A snapshot of the quoted message's content.
336+
QuotedMessageSnapshot quoted_message_snapshot = 5
337+
[(google.api.field_behavior) = OUTPUT_ONLY];
338+
339+
// Output only. Metadata about the source space of the quoted message.
340+
// Populated only for FORWARD quote type.
341+
ForwardedMetadata forwarded_metadata = 6
342+
[(google.api.field_behavior) = OUTPUT_ONLY];
343+
}
344+
345+
// Provides a snapshot of the content of the quoted message at the time of
346+
// quoting or forwarding
347+
message QuotedMessageSnapshot {
348+
// Output only. The quoted message's author name.
349+
// Populated for both REPLY & FORWARD quote types.
350+
string sender = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
351+
352+
// Output only. Snapshot of the quoted message's text content.
353+
string text = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
354+
355+
// Output only. Contains the quoted message `text` with markups added to
356+
// support rich formatting like hyperlinks,custom emojis, markup, etc.
357+
// Populated only for FORWARD quote type.
358+
string formatted_text = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
359+
360+
// Output only. Annotations parsed from the text body of the quoted message.
361+
// Populated only for FORWARD quote type.
362+
repeated Annotation annotations = 4
363+
[(google.api.field_behavior) = OUTPUT_ONLY];
364+
365+
// Output only. Attachments that were part of the quoted message. These are
366+
// copies of the quoted message's attachment metadata. Populated only for
367+
// FORWARD quote type.
368+
repeated Attachment attachments = 5
369+
[(google.api.field_behavior) = OUTPUT_ONLY];
370+
}
371+
372+
// Metadata about the source space from which a message was forwarded.
373+
message ForwardedMetadata {
374+
// Output only. The resource name of the source space.
375+
// Format: spaces/{space}
376+
string space = 1 [
377+
(google.api.field_behavior) = OUTPUT_ONLY,
378+
(google.api.resource_reference) = { type: "chat.googleapis.com/Space" }
379+
];
380+
381+
// Output only. The display name of the source space or DM at the time of
382+
// forwarding. For `SPACE`, this is the space name. For `DIRECT_MESSAGE`, this
383+
// is the other participant's name (e.g., "User A"). For `GROUP_CHAT`, this is
384+
// a generated name based on members' first names, limited to 5 including the
385+
// creator (e.g., "User A, User B").
386+
string space_display_name = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
313387
}
314388

315389
// A thread in a Google Chat space. For example usage, see

0 commit comments

Comments
 (0)