Method: spaces.messages.create

Crea un mensaje en un espacio de Chat de Google. Si quieres ver un ejemplo, consulta Envía un mensaje.

Admite los siguientes tipos de autenticación:

  • Autenticación de la app con el permiso de autorización:
    • https://www.googleapis.com/auth/chat.bot
  • Autenticación de usuario con uno de los siguientes permisos de autorización:
    • https://www.googleapis.com/auth/chat.messages.create
    • https://www.googleapis.com/auth/chat.messages
    • https://www.googleapis.com/auth/chat.import (solo espacios en modo de importación)

Chat atribuye el remitente del mensaje de manera diferente según el tipo de autenticación que uses en tu solicitud.

En la siguiente imagen, se muestra cómo Chat atribuye un mensaje cuando usas la autenticación de la app. Chat muestra la app de Chat como el remitente del mensaje. El contenido del mensaje puede incluir texto (text), tarjetas (cardsV2) y widgets complementarios (accessoryWidgets).

Mensaje enviado con autenticación de la app

En la siguiente imagen, se muestra cómo Chat atribuye un mensaje cuando usas la autenticación de usuario. Chat muestra al usuario como el remitente del mensaje y atribuye la app de Chat al mensaje mostrando su nombre. El contenido del mensaje solo puede incluir texto (text).

Mensaje enviado con autenticación del usuario

El tamaño máximo del mensaje, incluido el contenido, es de 32,000 bytes.

Para las solicitudes de webhook, la respuesta no contiene el mensaje completo. La respuesta solo propaga los campos name y thread.name, además de la información que estaba en la solicitud.

Solicitud HTTP

POST https://chat.googleapis.com/v1/{parent=spaces/*}/messages

La URL usa la sintaxis de la transcodificación gRPC.

Parámetros de ruta

Parámetros
parent

string

Obligatorio. El nombre del recurso del espacio en el que se creará un mensaje.

Formato: spaces/{space}

Parámetros de consulta

Parámetros
threadKey
(deprecated)

string

Es opcional. Obsoleto: Usa thread.thread_key en su lugar. Es el ID de la conversación. Admite hasta 4,000 caracteres. Para iniciar o agregar a una conversación, crea un mensaje y especifica un threadKey o el thread.name. Para ver un ejemplo de uso, consulta Inicia o responde una conversación.

requestId

string

Es opcional. Es un ID de solicitud único para este mensaje. Si se especifica un ID de solicitud existente, se muestra el mensaje creado con ese ID en lugar de crear uno nuevo.

messageReplyOption

enum (MessageReplyOption)

Es opcional. Especifica si un mensaje inicia una conversación o responde a una. Solo se admite en espacios con nombre.

Cuando se responde a las interacciones del usuario, se ignora este campo. Para las interacciones dentro de una conversación, la respuesta se crea en la misma conversación. De lo contrario, la respuesta se crea como una conversación nueva.

messageId

string

Es opcional. Es un ID personalizado para un mensaje. Permite que las apps de Chat obtengan, actualicen o borren un mensaje sin necesidad de almacenar el ID asignado por el sistema en el nombre del recurso del mensaje (representado en el campo name del mensaje).

El valor de este campo debe cumplir con los siguientes requisitos:

  • Comienza con client-. Por ejemplo, client-custom-name es un ID personalizado válido, pero custom-name no lo es.
  • Contiene hasta 63 caracteres y solo letras minúsculas, números y guiones.
  • Es único dentro de un espacio. Una app de Chat no puede usar el mismo ID personalizado para diferentes mensajes.

Para obtener más información, consulta Cómo nombrar un mensaje.

createMessageNotificationOptions

object (CreateMessageNotificationOptions)

Es opcional. Controla el comportamiento de las notificaciones cuando se publica el mensaje. Para obtener más información, consulta Forzar notificaciones o enviar mensajes silenciosos.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene una instancia de Message.

Cuerpo de la respuesta

Si el proceso se realiza de forma correcta, el cuerpo de la respuesta contiene una instancia recién creada de Message.

Permisos de autorización

Se necesita uno de los siguientes permisos de OAuth:

  • https://www.googleapis.com/auth/chat.bot
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.create

Para obtener más información, consulta la guía de autorización.

MessageReplyOption

Especifica cómo responder a un mensaje. Es posible que se agreguen más estados en el futuro.

Enums
MESSAGE_REPLY_OPTION_UNSPECIFIED Predeterminado. Inicia una conversación nueva. Si usas esta opción, se ignora cualquier thread ID o threadKey que se incluya.
REPLY_MESSAGE_FALLBACK_TO_NEW_THREAD Crea el mensaje como respuesta a la conversación especificada por thread ID o threadKey. Si falla, el mensaje inicia una conversación nueva.
REPLY_MESSAGE_OR_FAIL Crea el mensaje como respuesta a la conversación especificada por thread ID o threadKey. Si se usa un threadKey nuevo, se crea una conversación nueva. Si falla la creación del mensaje, se muestra un error NOT_FOUND.

CreateMessageNotificationOptions

Opciones para el comportamiento de las notificaciones cuando se publica el mensaje.

Representación JSON
{
  "notificationType": enum (NotificationType)
}
Campos
notificationType

enum (NotificationType)

Es el tipo de notificación para el mensaje.

NotificationType

Las opciones de tipos de notificación para el mensaje.

Enums
NOTIFICATION_TYPE_NONE Es el comportamiento predeterminado. El comportamiento de las notificaciones es similar a cuando el usuario humano envía el mensaje con la IU de Chat: no se envía ninguna notificación al remitente humano.
NOTIFICATION_TYPE_FORCE_NOTIFY

Fuerza la notificación de los destinatarios. Esto omite la configuración de notificaciones de espacio de los usuarios y la configuración de No interrumpir de Chat. Esta opción no omite la configuración de No interrumpir a nivel del dispositivo.

Requiere autenticación de la app.

NOTIFICATION_TYPE_SILENT

Silencia la notificación como si los destinatarios tuvieran habilitada la función No interrumpir de Chat o hubieran silenciado el espacio.

Requiere autenticación de la app.