REST Resource: spaces.messages

Recurso: Mensaje

Un mensaje en un espacio de Google Chat.

Representación 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)
    }
  ]
}
Campos
name

string

Identificador. Es el nombre del recurso del mensaje.

Formato: spaces/{space}/messages/{message}

En el que {space} es el ID del espacio en el que se publicó el mensaje y {message} es un ID asignado por el sistema para el mensaje. Por ejemplo, spaces/AAAAAAAAAAA/messages/BBBBBBBBBBB.BBBBBBBBBBB.

Si estableces un ID personalizado cuando creas un mensaje, puedes usar este ID para especificar el mensaje en una solicitud. Para ello, reemplaza {message} por el valor del campo clientAssignedMessageId. Por ejemplo, spaces/AAAAAAAAAAA/messages/client-custom-name. Para obtener más información, consulta Cómo asignar un nombre a un mensaje.

sender

object (User)

Solo salida. El usuario que creó el mensaje. Si tu app de Chat se autentica como un usuario, el resultado propaga los name y type del usuario.

createTime

string (Timestamp format)

Opcional. Inmutable. En el caso de los espacios creados en Chat, es la hora a la que se creó el mensaje. Este campo es solo de salida, excepto cuando se usa en espacios en modo de importación.

En el caso de los espacios del modo de importación, establece este campo en la marca de tiempo histórica en la que se creó el mensaje en la fuente para conservar la hora de creación original.

lastUpdateTime

string (Timestamp format)

Solo salida. Es la hora en la que un usuario editó el mensaje por última vez. Si el mensaje nunca se editó, este campo estará vacío.

deleteTime

string (Timestamp format)

Solo salida. La hora a la que se borró el mensaje en Google Chat. Si nunca se borra el mensaje, este campo estará vacío.

text

string

Opcional. Es el cuerpo del mensaje en texto sin formato. El primer vínculo a una imagen, un video o una página web genera un chip de vista previa. También puedes mencionar a un usuario de Google Chat o a todos los miembros del espacio.

Para obtener información sobre cómo crear mensajes de texto, consulta Cómo enviar un mensaje.

formattedText

string

Solo salida. Contiene el mensaje text con marcas agregadas para comunicar el formato. Es posible que este campo no capture todo el formato visible en la IU, pero incluye lo siguiente:

  • Sintaxis de marcado para texto en negrita, itálico, tachado, monoespaciado, bloque monoespaciado y lista con viñetas.

  • Menciones de usuarios con el formato <users/{user}>

  • Hipervínculos personalizados con el formato <{url}|{rendered_text}>, en el que la primera cadena es la URL y la segunda es el texto renderizado, por ejemplo, <http://example.com|custom text>.

  • Emoji personalizado con el formato :{emojiName}:, por ejemplo, :smile:. Esto no se aplica a los emojis Unicode, como U+1F600 para un emoji de cara sonriente.

Para obtener más información, consulta Cómo ver el formato de texto enviado en un mensaje.

cards[]
(deprecated)

object (Card)

Obsoleto: Usa cardsV2 en su lugar.

Tarjetas interactivas, con formato y con formato que se pueden usar para mostrar elementos de la IU, como textos con formato, imágenes en las que se puede hacer clic y botones. Por lo general, las tarjetas se muestran debajo del cuerpo de texto sin formato del mensaje. cards y cardsV2 pueden tener un tamaño máximo de 32 KB.

cardsV2[]

object (CardWithId)

Opcional. Un array de tarjetas.

Solo las apps de Chat pueden crear tarjetas. Si tu app de Chat se autentica como un usuario, los mensajes no pueden contener tarjetas.

Para obtener información sobre cómo crear un mensaje que contenga tarjetas, consulta Cómo enviar un mensaje.

Diseña y obtén vistas previas de las tarjetas con el Creador de tarjetas.

Abre el compilador de tarjetas

annotations[]

object (Annotation)

Solo salida. Anotaciones asociadas con el text de este mensaje.

thread

object (Thread)

Es el subproceso al que pertenece el mensaje. Para ver un ejemplo de uso, consulta Cómo iniciar o responder una conversación de mensajes.

space

object (Space)

Solo salida. Si tu app de Chat se autentica como un usuario, el resultado solo propaga el espacio name.

fallbackText

string

Opcional. Es una descripción en texto sin formato de las tarjetas del mensaje, que se usa cuando no se pueden mostrar las tarjetas reales; por ejemplo, notificaciones móviles.

actionResponse

object (ActionResponse)

Solo entrada. Son parámetros que una app de chat puede usar para configurar cómo se publica su respuesta.

argumentText

string

Solo salida. Cuerpo del mensaje en texto sin formato sin las menciones a la app de Chat

slashCommand

object (SlashCommand)

Solo salida. Información del comando de barra, si corresponde.

attachment[]

object (Attachment)

Opcional. Archivo adjunto subido por el usuario.

matchedUrl

object (MatchedUrl)

Solo salida. Una URL en spaces.messages.text que coincida con un patrón de vista previa de vínculo. Para obtener más información, consulta Vínculos de vista previa.

threadReply

boolean

Solo salida. Cuando es true, el mensaje es una respuesta en un hilo de respuestas. Cuando es false, el mensaje se muestra en la conversación de nivel superior del espacio como el primer mensaje de una conversación o un mensaje sin respuestas intercaladas.

Si el espacio no admite respuestas en conversaciones, este campo siempre es false.

clientAssignedMessageId

string

Opcional. Un ID personalizado para el mensaje. Puedes usar el campo para identificar un mensaje o para obtener, borrar o actualizar un mensaje. Para establecer un ID personalizado, especifica el campo messageId cuando crees el mensaje. Para obtener más información, consulta Cómo asignar un nombre a un mensaje.

emojiReactionSummaries[]

object (EmojiReactionSummary)

Solo salida. La lista de resúmenes de reacciones con emojis en el mensaje

privateMessageViewer

object (User)

Opcional. Inmutable. Entrada para crear un mensaje; de lo contrario, solo salida. El usuario que puede ver el mensaje. Cuando se configura, el mensaje es privado y solo lo pueden ver el usuario especificado y la app de Chat. Si quieres incluir este campo en tu solicitud, debes llamar a la API de Chat mediante la autenticación de apps y omitir lo siguiente:

Para obtener más información, consulta Cómo enviar un mensaje de forma privada.

deletionMetadata

object (DeletionMetadata)

Solo salida. Información sobre un mensaje borrado. Un mensaje se borra cuando se configura deleteTime.

quotedMessageMetadata

object (QuotedMessageMetadata)

Solo salida. Información sobre un mensaje que cita un usuario de Google Chat en un espacio. Los usuarios de Google Chat pueden citar un mensaje para responderlo.

attachedGifs[]

object (AttachedGif)

Solo salida. Imágenes GIF adjuntas al mensaje

accessoryWidgets[]

object (AccessoryWidget)

Opcional. Uno o más widgets interactivos que aparecen en la parte inferior de un mensaje. Puedes agregar widgets de accesorios a los mensajes que contengan texto, tarjetas o tanto texto como tarjetas. No es compatible con los mensajes que contienen diálogos. Para obtener más información, consulta Cómo agregar widgets interactivos en la parte inferior de un mensaje.

Para crear un mensaje con widgets de accesorios, se requiere la autenticación de la app.

CardWithId

Una tarjeta en un mensaje de Google Chat.

Solo las apps de Chat pueden crear tarjetas. Si tu app de Chat se autentica como usuario, el mensaje no puede contener tarjetas.

Diseña tarjetas y obtén una vista previa de ellas con Card Builder.

Abre el compilador de tarjetas

Representación JSON
{
  "cardId": string,
  "card": {
    object (Card)
  }
}
Campos
cardId

string

Es obligatorio si el mensaje contiene varias tarjetas. Es un identificador único para una tarjeta en un mensaje.

card

object (Card)

Una tarjeta El tamaño máximo es de 32 KB.

Anotación

Solo salida. Anotaciones asociadas con el cuerpo de texto sin formato del mensaje Para agregar formato básico a un mensaje de texto, consulta Cómo dar formato a los mensajes de texto.

Ejemplo de cuerpo de mensaje de texto sin formato:

Hello @FooBot how are you!"

Los metadatos de anotaciones correspondientes:

"annotations":[{
  "type":"USER_MENTION",
  "startIndex":6,
  "length":7,
  "userMention": {
    "user": {
      "name":"users/{user}",
      "displayName":"FooBot",
      "avatarUrl":"https://goo.gl/aeDtrS",
      "type":"BOT"
    },
    "type":"MENTION"
   }
}]
Representación 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.
}
Campos
type

enum (AnnotationType)

Es el tipo de esta anotación.

length

integer

Es la longitud de la subcadena en el cuerpo del mensaje de texto sin formato a la que corresponde esta anotación.

startIndex

integer

Índice de inicio (basado en 0, inclusive) en el cuerpo del mensaje de texto sin formato al que corresponde esta anotación.

Campo de unión metadata. Son metadatos adicionales sobre la anotación. Las direcciones (metadata) solo pueden ser una de las siguientes opciones:
userMention

object (UserMentionMetadata)

Son los metadatos de la mención de un usuario.

slashCommand

object (SlashCommandMetadata)

Los metadatos de un comando de barra.

AnnotationType

Es el tipo de anotación.

Enumeraciones
ANNOTATION_TYPE_UNSPECIFIED Es el valor predeterminado de la enumeración. No usar.
USER_MENTION Se menciona a un usuario.
SLASH_COMMAND Se invoca un comando de barra.

UserMentionMetadata

Metadatos de anotación para menciones de usuarios (@).

Representación JSON
{
  "user": {
    object (User)
  },
  "type": enum (Type)
}
Campos
user

object (User)

El usuario mencionado.

type

enum (Type)

Es el tipo de mención del usuario.

Tipo

Enumeraciones
TYPE_UNSPECIFIED Es el valor predeterminado de la enumeración. No usar.
ADD Agrega el usuario al espacio.
MENTION Mencionar al usuario en el espacio

SlashCommandMetadata

Metadatos de anotación para los comandos de barra (/).

Representación JSON
{
  "bot": {
    object (User)
  },
  "type": enum (Type),
  "commandName": string,
  "commandId": string,
  "triggersDialog": boolean
}
Campos
bot

object (User)

La app de Chat cuyo comando se invocó

type

enum (Type)

Es el tipo de comando de barra.

commandName

string

Es el nombre del comando de barra invocado.

commandId

string (int64 format)

El ID del comando de barra invocado.

triggersDialog

boolean

Indica si el comando de barra es para un diálogo.

Tipo

Enumeraciones
TYPE_UNSPECIFIED Es el valor predeterminado de la enumeración. No usar.
ADD Agrega la app de Chat al espacio.
INVOKE Invoca el comando de barra en el espacio.

RichLinkMetadata

Es un vínculo enriquecido a un recurso.

Representación 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.
}
Campos
uri

string

Es el URI de este vínculo.

Campo de unión data. Datos del recurso vinculado. Las direcciones (data) solo pueden ser una de las siguientes opciones:

RichLinkType

El tipo de vínculo enriquecido. Es posible que se agreguen más tipos en el futuro.

Enumeraciones
DRIVE_FILE Es un tipo de vínculo enriquecido de Google Drive.
CHAT_SPACE Un tipo de vínculo enriquecido a un espacio de Chat. Por ejemplo, un chip inteligente de espacio.

DriveLinkData

Datos de vínculos de Google Drive.

Representación JSON
{
  "driveDataRef": {
    object (DriveDataRef)
  },
  "mimeType": string
}
Campos
driveDataRef

object (DriveDataRef)

Un DriveDataRef que hace referencia a un archivo de Google Drive.

mimeType

string

El tipo MIME del recurso de Google Drive vinculado.

ChatSpaceLinkData

Datos de los vínculos del espacio de Chat.

Representación JSON
{
  "space": string,
  "thread": string,
  "message": string
}
Campos
space

string

Es el espacio del recurso de espacio de Chat vinculado.

Formato: spaces/{space}

thread

string

Es el subproceso del recurso del espacio de Chat vinculado.

Formato: spaces/{space}/threads/{thread}

message

string

Es el mensaje del recurso de espacio de Chat vinculado.

Formato: spaces/{space}/messages/{message}

Conversación

Una conversación en un espacio de Google Chat. Para ver un ejemplo de uso, consulta Cómo iniciar o responder una conversación de mensajes.

Si especificas una conversación cuando creas un mensaje, puedes configurar el campo messageReplyOption para determinar qué sucede si no se encuentra una conversación coincidente.

Representación JSON
{
  "name": string,
  "threadKey": string
}
Campos
name

string

Identificador. Es el nombre del recurso del subproceso.

Ejemplo: spaces/{space}/threads/{thread}

threadKey

string

Opcional. Entrada para crear o actualizar una conversación. De lo contrario, solo se muestra la salida. Es el ID del subproceso. Admite hasta 4,000 caracteres.

Este ID es único para la app de Chat que lo establece. Por ejemplo, si varias apps de chat crean un mensaje con la misma clave de conversación, los mensajes se publican en conversaciones diferentes. Para responder en una conversación creada por una persona o por otra app de Chat, especifica el campo de la conversación name.

ActionResponse

Son parámetros que una app de chat puede usar para configurar cómo se publica su respuesta.

Representación JSON
{
  "type": enum (ResponseType),
  "url": string,
  "dialogAction": {
    object (DialogAction)
  },
  "updatedWidget": {
    object (UpdatedWidget)
  }
}
Campos
type

enum (ResponseType)

Solo entrada. El tipo de respuesta de la app de Chat.

url

string

Solo entrada. URL para que los usuarios se autentiquen o configuren. (Solo para tipos de respuesta REQUEST_CONFIG).

dialogAction

object (DialogAction)

Solo entrada. Es una respuesta a un evento de interacción relacionado con un diálogo. Debe ir acompañado de ResponseType.Dialog.

updatedWidget

object (UpdatedWidget)

Solo entrada. La respuesta del widget actualizado.

ResponseType

El tipo de respuesta de la app de Chat.

Enumeraciones
TYPE_UNSPECIFIED Es el tipo predeterminado que se controla como NEW_MESSAGE.
NEW_MESSAGE Publica un mensaje nuevo en el tema.
UPDATE_MESSAGE Actualiza el mensaje de la app de Chat. Esto solo se permite en un evento CARD_CLICKED en el que el tipo de remitente del mensaje es BOT.
UPDATE_USER_MESSAGE_CARDS Actualiza las tarjetas del mensaje de un usuario. Esto solo se permite como respuesta a un evento MESSAGE con una URL coincidente o a un evento CARD_CLICKED en el que el tipo de remitente del mensaje es HUMAN. Se ignora el texto.
REQUEST_CONFIG Solicita al usuario autenticación o configuración adicionales de forma privada.
DIALOG Presenta un diálogo.
UPDATE_WIDGET Búsqueda de opciones de autocompletado de texto del widget.

DialogAction

Contiene un diálogo y el código de estado de la solicitud.

Representación 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.
}
Campos
actionStatus

object (ActionStatus)

Solo entrada. Es el estado de una solicitud para invocar o enviar un diálogo. Muestra un estado y un mensaje a los usuarios, si es necesario. Por ejemplo, en caso de error o éxito.

Campo de unión action. Acción que se debe realizar. Las direcciones (action) solo pueden ser una de las siguientes opciones:
dialog

object (Dialog)

Solo entrada. Dialog para la solicitud.

Diálogo

Unión alrededor del cuerpo de la tarjeta del diálogo.

Representación JSON
{
  "body": {
    object (Card)
  }
}
Campos
body

object (Card)

Solo entrada. Es el cuerpo del diálogo, que se renderiza en un elemento modal. Las apps de Google Chat no admiten las siguientes entidades de tarjetas: DateTimePicker y OnChangeAction.

ActionStatus

Representa el estado de una solicitud para invocar o enviar un diálogo.

Representación JSON
{
  "statusCode": enum (Code),
  "userFacingMessage": string
}
Campos
statusCode

enum (Code)

El código de estado.

userFacingMessage

string

Es el mensaje que se enviará a los usuarios sobre el estado de su solicitud. Si no se establece, se envía un mensaje genérico basado en statusCode.

Código

Los códigos de error canónicos para las API de gRPC.

A veces, es posible que se apliquen varios códigos de error. Los servicios deben mostrar el código de error más específico que corresponda. Por ejemplo, es preferible OUT_OF_RANGE en lugar de FAILED_PRECONDITION si se aplican ambos códigos. Del mismo modo, prefiere NOT_FOUND o ALREADY_EXISTS en lugar de FAILED_PRECONDITION.

Enumeraciones
OK

No es un error. que se muestran con éxito.

Asignación HTTP: 200 OK

CANCELLED

La operación se canceló (por lo general, la cancela el emisor).

Asignación HTTP: 499 Solicitudes cerradas por el cliente

UNKNOWN

Error desconocido Por ejemplo, este error puede mostrarse cuando un valor Status recibido de otro espacio de direcciones pertenece a un espacio de error desconocido en este espacio de direcciones. Además, los errores generados por API que no muestran suficiente información sobre el error pueden convertirse en este error.

Asignación HTTP: Error interno del servidor 500

INVALID_ARGUMENT

El cliente especificó un argumento no válido. Ten en cuenta que esto difiere de FAILED_PRECONDITION. INVALID_ARGUMENT indica los argumentos que son problemáticos sin importar el estado del sistema (p.ej., un nombre de archivo con formato incorrecto).

Asignación HTTP: 400 Solicitud incorrecta

DEADLINE_EXCEEDED

El plazo venció antes de que la operación se pudiera completar. En el caso de las operaciones que cambian el estado del sistema, es probable que se muestre este error incluso si la operación se completó correctamente. Por ejemplo, una respuesta correcta desde un servidor podría haberse retrasado lo suficiente como para que el plazo venciera.

Asignación HTTP: Tiempo de espera de la puerta de enlace 504

NOT_FOUND

No se encontró alguna entidad solicitada (p. ej., un archivo o un directorio).

Nota para los desarrolladores de servidores: si se niega una solicitud a una clase completa de usuarios, como el lanzamiento gradual de funciones o una lista de permisos no documentada, se puede usar NOT_FOUND. Si se niega una solicitud para algunos usuarios dentro de una clase de usuarios, como el control de acceso basado en usuarios, se debe usar PERMISSION_DENIED

Asignación HTTP: 404 No encontrado

ALREADY_EXISTS

La entidad que un cliente intentó crear (p.ej., un archivo o un directorio) ya existe.

Asignación HTTP: 409 Conflicto

PERMISSION_DENIED

El emisor de la llamada no tiene permiso para ejecutar la operación especificada. No se debe usar PERMISSION_DENIED para los rechazos causados por el agotamiento de algún recurso (en su lugar, usa RESOURCE_EXHAUSTED para esos errores). No se debe usar PERMISSION_DENIED si no se puede identificar al emisor (en su lugar, usa UNAUTHENTICATED para esos errores). Este código de error no sugiere que la solicitud sea válida o que la entidad solicitada exista o satisfaga otras condiciones previas.

Asignación HTTP: 403 Prohibido

UNAUTHENTICATED

La solicitud no tiene credenciales de autenticación válidas para la operación.

Asignación HTTP: 401 No autorizado

RESOURCE_EXHAUSTED

Algunos recursos se agotaron, tal vez una cuota por usuario, o tal vez se agotó el espacio de todo el sistema de archivos.

Asignación HTTP: 429 Demasiadas solicitudes

FAILED_PRECONDITION

La operación se rechazó debido a que el sistema no se encuentra en un estado necesario para la ejecución de la operación. Por ejemplo, el directorio que se borrará no está vacío, se aplicará una operación rmdir a un directorio que no sea de directorio, etcétera.

Los implementadores de servicios pueden usar los siguientes lineamientos para decidir entre FAILED_PRECONDITION, ABORTED y UNAVAILABLE: (a) Usa UNAVAILABLE si el cliente puede reintentar solo la llamada con errores. (b) Usa ABORTED si el cliente debe reintentar en un nivel superior. Por ejemplo, cuando falla una prueba y un conjunto especificado por el cliente, lo que indica que el cliente debe reiniciar una secuencia de lectura, modificación y escritura. (c) Usa FAILED_PRECONDITION si el cliente no debe volver a intentar hasta que el estado del sistema se haya corregido de forma explícita. Por ejemplo, si un "rmdir" falla porque el directorio no está vacío, se debe mostrar FAILED_PRECONDITION, ya que el cliente no debe reintentar, a menos que se borren los archivos del directorio.

Asignación HTTP: 400 Solicitud incorrecta

ABORTED

La operación se anuló, generalmente debido a un problema de simultaneidad, como una falla en la verificación del secuenciador o la anulación de la transacción.

Consulta los lineamientos anteriores para decidir entre FAILED_PRECONDITION, ABORTED y UNAVAILABLE.

Asignación HTTP: 409 Conflicto

OUT_OF_RANGE

La operación se intentó fuera del rango válido. Por ejemplo, buscar o leer el final del archivo.

A diferencia de INVALID_ARGUMENT, este error indica un problema que se puede solucionar si cambia el estado del sistema. Por ejemplo, un sistema de archivos de 32 bits generará INVALID_ARGUMENT si se le pide que lea en un desplazamiento que no esté en el rango [0,2^32-1], pero generará OUT_OF_RANGE si se le pide leer. desde un desplazamiento después del tamaño de archivo actual

Hay una leve superposición entre FAILED_PRECONDITION y OUT_OF_RANGE. Recomendamos usar OUT_OF_RANGE (el error más específico) cuando se aplique para que los emisores que iteran a través de un espacio puedan buscar con facilidad un error OUT_OF_RANGE a fin de detectar cuando finalicen.

Asignación HTTP: 400 Solicitud incorrecta

UNIMPLEMENTED

La operación no se implementó, no se admite o no está habilitada en este servicio.

Asignación HTTP: 501 No implementado

INTERNAL

Errores internos. Esto significa que algunos invariantes que espera el sistema subyacente están rotos. Este código de error está reservado para errores graves.

Asignación HTTP: Error interno del servidor 500

UNAVAILABLE

El servicio no está disponible actualmente. Lo más probable es que esta sea una condición transitoria y que se pueda corregir si vuelves a intentar una retirada. Ten en cuenta que no siempre es seguro reintentar operaciones no idempotentes.

Consulta los lineamientos anteriores para decidir entre FAILED_PRECONDITION, ABORTED y UNAVAILABLE.

Asignación HTTP: 503 Servicio no disponible

DATA_LOSS

Daño o pérdida de datos no recuperable.

Asignación HTTP: Error interno del servidor 500

UpdatedWidget

En el caso de los widgets selectionInput, muestra sugerencias de autocompletado para un menú de selección múltiple.

Representación 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.
}
Campos
widget

string

Es el ID del widget actualizado. El ID debe coincidir con el del widget que activó la solicitud de actualización.

Campo de unión updated_widget. El widget se actualizó en respuesta a una acción del usuario. Las direcciones (updated_widget) solo pueden ser una de las siguientes opciones:
suggestions

object (SelectionItems)

Lista de resultados de autocompletado de widgets

SelectionItems

Es la lista de resultados del autocompletado del widget.

Representación JSON
{
  "items": [
    {
      object (SelectionItem)
    }
  ]
}
Campos
items[]

object (SelectionItem)

Un array de los objetos SelectionItem.

SlashCommand

Un comando de barra en Google Chat.

Representación JSON
{
  "commandId": string
}
Campos
commandId

string (int64 format)

Es el ID del comando de barra invocado.

MatchedUrl

Una URL coincidente en un mensaje de Chat. Las apps de chat pueden obtener una vista previa de las URLs coincidentes. Para obtener más información, consulta Vista previa de vínculos.

Representación JSON
{
  "url": string
}
Campos
url

string

Solo salida. La URL que coincidió.

EmojiReactionSummary

Indica la cantidad de personas que reaccionaron a un mensaje con un emoji específico.

Representación JSON
{
  "emoji": {
    object (Emoji)
  },
  "reactionCount": integer
}
Campos
emoji

object (Emoji)

Solo salida. Emoji asociado con las reacciones.

reactionCount

integer

Solo salida. Es la cantidad total de reacciones con el emoji asociado.

DeletionMetadata

Información sobre un mensaje borrado. Se borra un mensaje cuando se configura deleteTime.

Representación JSON
{
  "deletionType": enum (DeletionType)
}
Campos
deletionType

enum (DeletionType)

Indica quién borró el mensaje.

DeletionType

Quién borró el mensaje y cómo se borró Es posible que se agreguen más valores en el futuro.

Enumeraciones
DELETION_TYPE_UNSPECIFIED Este valor no se usa.
CREATOR El usuario borró su propio mensaje.
SPACE_OWNER El propietario del espacio borró el mensaje.
ADMIN Un administrador de Google Workspace borró el mensaje.
APP_MESSAGE_EXPIRY Una app de Chat borró su propio mensaje cuando venció.
CREATOR_VIA_APP Una app de Chat borró el mensaje en nombre del usuario.
SPACE_OWNER_VIA_APP Una app de Chat borró el mensaje en nombre del propietario del espacio.

QuotedMessageMetadata

Información sobre un mensaje citado.

Representación JSON
{
  "name": string,
  "lastUpdateTime": string
}
Campos
name

string

Solo salida. Es el nombre del recurso del mensaje citado.

Formato: spaces/{space}/messages/{message}

lastUpdateTime

string (Timestamp format)

Solo salida. La marca de tiempo de cuando se creó el mensaje citado o de cuando se actualizó por última vez.

AttachedGif

Es una imagen GIF especificada por una URL.

Representación JSON
{
  "uri": string
}
Campos
uri

string

Solo salida. Es la URL que aloja la imagen GIF.

AccessoryWidget

Uno o más widgets interactivos que aparecen en la parte inferior de un mensaje. Para obtener más información, consulta Cómo agregar widgets interactivos en la parte inferior de un mensaje.

Representación JSON
{

  // Union field action can be only one of the following:
  "buttonList": {
    object (ButtonList)
  }
  // End of list of possible types for union field action.
}
Campos
Campo de unión action. El tipo de acción. Las direcciones (action) solo pueden ser una de las siguientes opciones:
buttonList

object (ButtonList)

Una lista de botones.

Métodos

create

Crea un mensaje en un espacio de Google Chat.

delete

Borra un mensaje.

get

Muestra detalles sobre un mensaje.

list

Muestra una lista de los mensajes de un espacio del que pertenece el emisor, incluidos los mensajes de los miembros y espacios bloqueados.

patch

Actualiza un mensaje.

update

Actualiza un mensaje.