Публикация teamsApp

Пространство имен: microsoft.graph

Важно!

API в версии /beta Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте выбор версии .

Публикация приложения в каталоге Microsoft Teams приложения. В частности, этот API публикует приложение в каталог организации (каталог приложений клиента); созданный ресурс будет иметь значение свойства distributionMethod в organization.

Свойство requiresReview позволяет любому пользователю отправлять приложение для проверки администратором. Администраторы могут утверждать или отклонить эти приложения с помощью этого API или Microsoft Teams центра администрирования.

Разрешения

Для вызова этого API требуется одно из указанных ниже разрешений. Дополнительные сведения, в том числе о выборе разрешений, см. в статье Разрешения.

Тип разрешения Разрешения (в порядке повышения привилегий)
Делегированные (рабочая или учебная учетная запись) AppCatalog.Submit, AppCatalog.ReadWrite.All, Directory.ReadWrite.All**
Делегированные (личная учетная запись Майкрософт) Не поддерживается
Для приложений Не поддерживается.

Примечание. Разрешения, помеченные **, поддерживаются только для обратной совместимости. Рекомендуется обновить решения, чтобы использовать другое разрешение, указанное в предыдущей таблице, и избегать использования этих разрешений в будущем.

HTTP-запрос

POST /appCatalogs/teamsApps

Публикация приложения, требуемая для проверки:

POST /appCatalogs/teamsApps?requiresReview:{Boolean}

Параметры запроса

Свойство Тип Описание
requiresReview Boolean Этот необязательный параметр запроса запускает процесс проверки приложения. Пользователи с привилегиями администратора могут отправлять приложения без запуска проверки. Если пользователи хотят запросить отзыв перед публикацией, они должны задать requiresReview .true Пользователь, у которого есть привилегии requiresReview false администратора, может не устанавливать и не устанавливать значение, и приложение будет считаться утвержденным и будет публиковаться мгновенно.

Заголовки запросов

Заголовок Значение
Авторизация Bearer {token}. Обязательный.
Content-Type application/zip. Обязательно.

Текст запроса

В теле запроса включите полезное Teams почтовый манифест. Дополнительные сведения см. в материале Create an app package.

Каждое приложение в каталоге приложений должно иметь уникальный манифест id.

Отклик

В случае успешной работы этот метод возвращает код 200 OK ответа и объект teamsApp .

Примеры

Пример 1. Публикация приложения в каталоге приложений

Запрос

POST https://graph.microsoft.com/beta/appCatalogs/teamsApps
Content-type: application/zip

[Zip file containing a Teams app package]

Сведения о создании почтового файла Microsoft Teams приложения см. в примере Create an app package.

Отклик

HTTP/1.1 201 Created
Content-Type: application/json

{
  "id": "e3e29acb-8c79-412b-b746-e6c39ff4cd22",
  "externalId": "b5561ec9-8cab-4aa3-8aa2-d8d7172e4311",
  "name": "Test App",
  "version": "1.0.0",
  "distributionMethod": "organization"
}

Пример 2. Upload приложение для проверки в каталоге приложений организации

Запрос

POST https://graph.microsoft.com/beta/appCatalogs/teamsApps?requiresReview=true
Content-type: application/zip

Отклик

HTTP/1.1 201 Created
Location: https://graph.microsoft.com/beta/appCatalogs/teamsApps/e3e29acb-8c79-412b-b746-e6c39ff4cd22

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#appCatalogs/teamsApps/$entity",
  "id": "e3e29acb-8c79-412b-b746-e6c39ff4cd22",
  "externalId": "b5561ec9-8cab-4aa3-8aa2-d8d7172e4311",
  "name": "Test App",
  "version": "1.0.0",
  "distributionMethod": "organization"
}

Пример 3. Утверждение или отклонение приложения до рассмотрения

Запрос

HTTP

PATCH https://graph.microsoft.com/beta/appCatalogs/teamsApps/a761ad07-22ef-4a53-9feb-2837c8ad4a84/appDefinitions/YTc2MWFkMDctMjJlZi00YTUzLTlmZWItMjgzN2M4YWQ0YTg0IyMxLjEuOCMjU3VibWl0dGVk
Content-type: application/json
If-Match: InFtSStsNVJHVWdzWUJRU2ZVWGp4RWc9PSI=

{
  "publishingState":"published"
}

Отклик

HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#appCatalogs/teamsApps('a761ad07-22ef-4a53-9feb-2837c8ad4a84')/appDefinitions/$entity",
    "id": "YTc2MWFkMDctMjJlZi00YTUzLTlmZWItMjgzN2M4YWQ0YTg0IyMxLjEuOCMjUHVibGlzaGVk",
    "teamsAppId": "a761ad07-22ef-4a53-9feb-2837c8ad4a84",
    "azureADAppId": null,
    "displayName": "Ducks",
    "version": "1.1.8",
    "requiredResourceSpecificApplicationPermissions": [],
    "publishingState": "published",
    "shortdescription": "quaerat quasi magnam. slight change. 5",
    "description": "Aliquid placeat animi debitis accusamus. Non perferendis ullam. Quis est consequuntur vitae provident. Sunt laudantium id aut. slight change 5",
    "lastModifiedDateTime": null,
    "createdBy": null
}