Compartir a través de


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 nacionales de nube.

Servicio global Gobierno de EE. UU. L4 Us Government L5 (DOD) China operada por 21Vianet

Permissions

Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores 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.Manage.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 permiso Chat.Manage.Chat usa 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 la autenticación y la autorización.
Content-Type application/json. Obligatorio.

Cuerpo de la solicitud

El cuerpo de la solicitud debe contener el identificador de aplicación generado por el catálogo 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 Description
consentedPermissionSet teamsAppPermissionSet Conjunto de permisos específicos de recursos a los que se está dando su consentimiento.

Nota: Los permisos consentidos durante la instalación deben ser los mismos que los permisos específicos del recurso presentes en teamsAppDefinition de la aplicación. Para obtener la aplicación y permisos específicos de recursos delegados, consulte el ejemplo 7. Si solo hay permisos delegados específicos de recursos 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 la 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