Перечисление всех команд в Microsoft Teams для организации

Чтобы использовать API Microsoft Teams в Microsoft Graph для получения списка всех команд в организации (клиенте), вы найдете все группы, в которых есть команды, а затем получите сведения для каждой команды.

Получение списка групп

Пример 1. Получение списка групп, содержащих команду

Чтобы получить список всех групп в организации, у которых есть команды, получите список всех групп, а затем в коде найдите те, у которых есть свойство resourceProvisioningOptions, содержащее "Team".

Используйте API с $filter для возврата только тех групп, в которых есть команды.

Запрос

GET /groups?$filter=resourceProvisioningOptions/Any(x:x eq 'Team')

Примечание.

Для некоторых неиспользуемых старых команд не будет установлен параметр resourceProvisioningOptions. Дополнительные сведения см. в статье Известные проблемы.

Отклик

Ниже показан пример отклика.

Примечание. Показанный объект ответа может быть сокращен для удобочитаемости.

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

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#groups",
    "value": [
        {
            "id": "02bd9fd6-8f93-4758-87c3-1fb73740a315",
            "description": "Welcome to the HR Taskforce team.",
            "displayName": "HR Taskforce",
            "groupTypes": [
                "Unified"
            ],
            "mailEnabled": true,
            "mailNickname": "HRTaskforce",
            "resourceBehaviorOptions": [],
            "resourceProvisioningOptions": [
                "Team"
            ],
            "securityEnabled": false,
            "visibility": "Private"
        },
        {
            "id": "8090c93e-ba7c-433e-9f39-08c7ba07c0b3",
            "description": "Welcome to the team that we've assembled to launch our product.",
            "displayName": "X1050 Launch Team",
            "groupTypes": [
                "Unified"
            ],
            "mailEnabled": true,
            "mailNickname": "X1050LaunchTeam",
            "resourceBehaviorOptions": [],
            "resourceProvisioningOptions": [
                "Team"
            ],
            "securityEnabled": false,
            "visibility": "Private"
        }
    ]
}

Пример 2: Получение списка групп с помощью выбора только необходимых свойств

Так как группы являются большими объектами, используйте $select, чтобы получить только нужные свойства группы.

Запрос

GET /groups?$select=id,resourceProvisioningOptions

Примечание.

Для некоторых неиспользуемых старых команд не будет установлен параметр resourceProvisioningOptions. Дополнительные сведения см. в статье Известные проблемы.

Отклик

Ниже показан пример отклика.

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

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#groups",
    "value": [
        {
            "id": "00e897b1-70ba-4cb9-9126-fd5f95c4bb78",
            "resourceProvisioningOptions": []
        },
        {
            "id": "00f6e045-f884-4359-a617-d459ee626862",
            "resourceProvisioningOptions": [
                "Team"
            ]
        }
    ]
}

Получение сведений о команде для группы

Чтобы получить сведения о команде в определенной группе, вызовите API get team и включите идентификатор группы.

Запрос

GET /teams/{group-id}

Отклик

Ниже показан пример отклика.

Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.

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

{
  "isArchived" : false,
  "memberSettings": {
    "allowCreateUpdateChannels": true,
    "allowDeleteChannels": true,
    "allowAddRemoveApps": true,
    "allowCreateUpdateRemoveTabs": true,
    "allowCreateUpdateRemoveConnectors": true    
  },
  "guestSettings": {
    "allowCreateUpdateChannels": true,
    "allowDeleteChannels": true 
  },
  "messagingSettings": {
    "allowUserEditMessages": true,
    "allowUserDeleteMessages": true,
    "allowOwnerDeleteMessages": true,
    "allowTeamMentions": true,
    "allowChannelMentions": true    
  },
  "funSettings": {
    "allowGiphy": true,
    "giphyContentRating": "strict",
    "allowStickersAndMemes": true,
    "allowCustomMemes": true
  }
}