Agregar la aplicación al chat

Espacio de nombres: microsoft.graph

Importante

Las API de la versión /beta de Microsoft Graph están sujetas a cambios. No se admite el uso de estas API en aplicaciones de producción. Para determinar si una API está disponible en la versión 1.0, use el selector de Versión.

Instale un teamsApp en el chat especificado.

Notas:

  • Si el chat está asociado a una instancia de onlineMeeting, se instalará de forma efectiva teamsApp en la reunión.

Esta API está disponible en las siguientes implementaciones en la nube nacional.

Servicio global Administración pública de EE. UU. Gobierno de EE. UU. L5 (DOD) China operado por 21Vianet

Permissions

Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use uno o varios permisos con privilegios más altos solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.

Tipo de permiso Permisos con privilegios mínimos Permisos con privilegios más altos
Delegado (cuenta profesional o educativa) TeamsAppInstallation.ReadWriteSelfForChat TeamsAppInstallation.ManageSelectedForChat, TeamsAppInstallation.ReadWriteAndConsentForChat, TeamsAppInstallation.ReadWriteAndConsentSelfForChat, TeamsAppInstallation.ReadWriteForChat
Delegado (cuenta personal de Microsoft) No admitida. No admitida.
Aplicación TeamsAppInstallation.ReadWriteSelfForChat.All Chat. Administrar. Chat, TeamsAppInstallation.ManageSelectedForChat.All, TeamsAppInstallation.ReadWriteAndConsentForChat.All, TeamsAppInstallation.ReadWriteAndConsentSelfForChat.All, TeamsAppInstallation.ReadWriteForChat.All

Nota:

  • Los permisos TeamsAppInstallation.ReadWriteSelfForChat, TeamsAppInstallation.ReadWriteForChat, TeamsAppInstallation.ReadWriteSelfForChat.All y TeamsAppInstallation.ReadWriteForChat.All no se pueden usar para instalar aplicaciones que requieran consentimiento para permisos específicos de recursos.
  • El Chat. Administrar. El permiso de chat utiliza el consentimiento específico del recurso.

Solicitud HTTP

POST /chats/{chat-id}/installedApps

Encabezados de solicitud

Encabezado Valor
Authorization {token} de portador. Obligatorio. Obtenga más información sobre autenticación y autorización.
Content-Type application/json. Obligatorio.

Cuerpo de la solicitud

El cuerpo de la solicitud debe contener el id. de aplicación generado para el catálogo de aplicaciones. Para obtener más información, consulte Propiedades de teamsApp. En la tabla siguiente se enumeran más parámetros que se pueden usar con el cuerpo de la solicitud.

Parámetro Tipo Descripción
consentedPermissionSet teamsAppPermissionSet Conjunto de permisos específicos de recursos a los que se da consentimiento.

Nota: Los permisos consentidos durante la instalación deben ser los mismos que los permisos específicos de recursos presentes en teamsAppDefinition de la aplicación. Para obtener los permisos específicos de la aplicación y del recurso delegado, consulte el Ejemplo 7. Si solo hay permisos específicos de recursos delegados presentes en teamsAppDefinition, los permisos se pueden omitir en el cuerpo de esta solicitud.

Respuesta

Si se ejecuta correctamente, este método devuelve un código de respuesta 201 Created.

Ejemplos

Ejemplo 1: Instalación de una aplicación en un chat

Solicitud

En el ejemplo siguiente se muestra la solicitud.

POST https://graph.microsoft.com/beta/chats/19:ea28e88c00e94c7786b065394a61f296@thread.v2/installedApps
Content-Type: application/json

{
   "teamsApp@odata.bind":"https://graph.microsoft.com/beta/appCatalogs/teamsApps/12345678-9abc-def0-123456789a"
}

Respuesta

En el ejemplo siguiente se muestra la respuesta.

HTTP/1.1 201 Created

Para obtener la lista de permisos específicos de recursos requeridos por la aplicación, obtenga la aplicación desde appCatalog, como se muestra en el ejemplo 7.

Solicitud

En el ejemplo siguiente se muestra la solicitud.

POST https://graph.microsoft.com/beta/chats/19:ea28e88c00e94c7786b065394a61f296@thread.v2/installedApps
Content-Type: application/json

{
	"teamsApp@odata.bind" : "https://graph.microsoft.com/beta/appCatalogs/teamsApps/2b524e28-95ce-4c9b-9773-4a5bd6ec1770",
    "consentedPermissionSet": {
        "resourceSpecificPermissions": [
        {
          "permissionValue": "OnlineMeeting.ReadBasic.Chat",
          "permissionType": "Delegated"
        },
        {
          "permissionValue": "OnlineMeetingIncomingAudio.Detect.Chat",
          "permissionType": "Delegated"
        },
        {
          "permissionValue": "ChatMember.Read.Chat",
          "permissionType": "Application"
        },
        {
          "permissionValue": "ChatMessage.Read.Chat",
          "permissionType": "Application"
        }]
      }
}

Respuesta

En el ejemplo siguiente se muestra la respuesta.

HTTP/1.1 201 Created