Method: spaces.setup

Crea un espacio y le agrega usuarios específicos. El usuario que llama se agrega automáticamente al espacio y no se debe especificar como una membresía en la solicitud. Para ver un ejemplo, consulta Configura un espacio.

Para especificar los miembros humanos que quieres agregar, agrega membresías con el member.name apropiado en la SetUpSpaceRequest. Para agregar un usuario humano, usa users/{user}, en el que {user} es {person_id} para la persona de la API de People, o bien id para el usuario en la API de Directory del SDK de Admin. Por ejemplo, si la API de Person resourceName es people/123456789, puedes agregar al usuario al espacio si incluyes una membresía con users/123456789 como member.name.

En el caso de un chat en grupo o de espacios, si el emisor bloquea o es bloqueado por algunos miembros, estos no se agregarán al espacio creado.

Para crear un mensaje directo (DM) entre el usuario que llama y otro usuario humano, especifica exactamente una membresía que represente al usuario humano. Si un usuario bloquea al otro, la solicitud falla y no se crea el MD.

Para crear un MD entre el usuario que llama y la app que lo llama, establece Space.singleUserBotDm en true y no especifiques ninguna membresía. Solo puedes usar este método para configurar un MD con la app que realiza la llamada. Si deseas agregar la app que realiza la llamada como miembro de un espacio o un MD existente entre dos usuarios humanos, consulta cómo crear una membresía.

Si ya existe un MD entre dos usuarios, incluso cuando uno de ellos bloquea al otro en el momento en que se realiza una solicitud, se muestra el MD existente.

No se admiten espacios con respuestas en múltiples conversaciones ni acceso de invitado.

Requiere autenticación de usuario y el alcance chat.spaces.create o chat.spaces.

Solicitud HTTP

POST https://chat.googleapis.com/v1/spaces:setup

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

Cuerpo de la solicitud

El cuerpo de la solicitud contiene datos con la siguiente estructura:

Representación JSON
{
  "space": {
    object (Space)
  },
  "requestId": string,
  "memberships": [
    {
      object (Membership)
    }
  ]
}
Campos
space

object (Space)

Obligatorio. El campo Space.spaceType es obligatorio.

Para crear un espacio, configura Space.spaceType en SPACE y Space.displayName.

Para crear un chat en grupo, establece Space.spaceType en GROUP_CHAT. No establezcas Space.displayName.

Para crear una conversación 1:1 entre personas, establece Space.spaceType en DIRECT_MESSAGE y Space.singleUserBotDm en false. No establezcas Space.displayName ni Space.spaceDetails.

Para crear una conversación 1:1 entre una persona y la app de Chat que llama, establece Space.spaceType en DIRECT_MESSAGE y Space.singleUserBotDm en true. No establezcas Space.displayName ni Space.spaceDetails.

Si ya existe un espacio DIRECT_MESSAGE, se muestra en lugar de crear uno nuevo.

requestId

string

Opcional. Es un identificador único para esta solicitud. Se recomienda usar un UUID aleatorio. Si especificas un ID de solicitud existente, se mostrará el espacio creado con ese ID en lugar de crear un espacio nuevo. Si especificas un ID de solicitud existente desde la misma app de Chat con un usuario autenticado diferente, se mostrará un error.

memberships[]

object (Membership)

Opcional. Es el conjunto inicial de usuarios del dominio invitados a unirse al espacio. El usuario que llama se agrega automáticamente al espacio y no se debe especificar como una membresía.

Actualmente, el conjunto permite hasta 20 membresías (además del emisor).

El campo Membership.member debe contener un usuario con name propagado y User.Type.HUMAN. Se ignoran todos los demás campos.

Opcional cuando se configura Space.spaceType como SPACE.

Es obligatorio cuando se configura Space.spaceType como GROUP_CHAT, junto con al menos dos membresías.

Obligatorio cuando se configura Space.spaceType en DIRECT_MESSAGE con un usuario humano, junto con exactamente una membresía.

Debe estar vacío cuando se crea una conversación 1:1 entre una persona y la app de Chat que llama (cuando se establece Space.spaceType como DIRECT_MESSAGE y Space.singleUserBotDm como true).

No admitido: Invitar a usuarios invitados o agregar otras apps de Chat.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de Space.

Permisos de autorización

Se necesita uno de los siguientes alcances de OAuth:

  • https://www.googleapis.com/auth/chat.spaces
  • https://www.googleapis.com/auth/chat.spaces.create

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