Criar equipeCreate team

Namespace: microsoft.graphNamespace: microsoft.graph

Criar uma nova equipe.Create a new team.

PermissõesPermissions

Uma das seguintes permissões é obrigatória para chamar esta API. Para saber mais, incluindo como escolher permissões, confira Permissões.One of the following permissions is required to call this API. To learn more, including how to choose permissions, see Permissions.

Tipo de permissãoPermission type Permissões (da com menos para a com mais privilégios)Permissions (from least to most privileged)
Delegada (conta corporativa ou de estudante)Delegated (work or school account) Team.Create, Group.ReadWrite.All, Directory.ReadWrite.AllTeam.Create, Group.ReadWrite.All, Directory.ReadWrite.All
Delegada (conta Microsoft pessoal)Delegated (personal Microsoft account) Sem suporte.Not supported.
AplicativoApplication Team.Create, Teamwork.Migrate.All, Group.ReadWrite.All, Directory.ReadWrite.AllTeam.Create, Teamwork.Migrate.All, Group.ReadWrite.All, Directory.ReadWrite.All

Solicitação HTTPHTTP request

POST /teams

Cabeçalhos de solicitaçãoRequest headers

CabeçalhoHeader ValorValue
AutorizaçãoAuthorization {token} de portador. Obrigatório.Bearer {token}. Required.
Content-TypeContent-Type application/json. Obrigatório.application/json. Required.

Corpo da solicitaçãoRequest body

No corpo da solicitação, forneça uma representação JSON de um objeto team.In the request body, supply a JSON representation of a team object.

RespostaResponse

Se bem-sucedida, essa API retornará uma resposta 202 Accepted contendo um link para a teamsAsyncOperation.If successful, this API returns a 202 Accepted response containing a link to the teamsAsyncOperation.

ExemplosExamples

Exemplo 1: Permissões delegadasExample 1: Delegated permissions

Este é um exemplo de uma solicitação mínima.The following is an example of a minimal request. Ao omitir outras propriedades, o cliente está, implicitamente, obtendo padrões do modelo predefinido representado por template.By omitting other properties, the client is implicitly taking defaults from the pre-defined template represented by template.

SolicitaçãoRequest

POST https://graph.microsoft.com/v1.0/teams
Content-Type: application/json

{
  "template@odata.bind": "https://graph.microsoft.com/v1.0/teamsTemplates('standard')",
  "displayName": "My Sample Team",
  "description": "My Sample Team’s Description"
}
RespostaResponse
HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /teams/{teamId}/operations/{operationId}
Content-Location: /teams/{teamId}
Content-Length: 0

Exemplo 2: Permissões de aplicativosExample 2: Application permissions

Aqui está um exemplo de uma solicitação mínima usando permissões de aplicativo.The following is an example of a minimal request using application permissions. Ao omitir outras propriedades, o cliente está implicitamente obtendo padrões do modelo predefinido representado por template.By omitting other properties, the client is implicitly taking defaults from the predefined template represented by template. Ao emitir uma solicitação com permissões de aplicativo, um usuário deve ser especificado no conjunto members.When issuing a request with application permissions, a user must be specified in the members collection.

SolicitaçãoRequest

POST https://graph.microsoft.com/v1.0/teams
Content-Type: application/json

{
   "template@odata.bind":"https://graph.microsoft.com/v1.0/teamsTemplates('standard')",
   "displayName":"My Sample Team",
   "description":"My Sample Team’s Description",
   "members":[
      {
         "@odata.type":"#microsoft.graph.aadUserConversationMember",
         "roles":[
            "owner"
         ],
         "userId":"0040b377-61d8-43db-94f5-81374122dc7e"
      }
   ]
}

RespostaResponse

HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /teams/{teamId}/operations/{operationId}
Content-Location: /teams/{teamId}
Content-Length: 0

Exemplo 3: Criar uma equipe com vários canais, aplicativos instalados e guias fixadas usando permissões delegadasExample 3: Create a team with multiple channels, installed apps, and pinned tabs using delegated permissions

Aqui está uma solicitação com um conteúdo completo.The following is a request with a full payload. O cliente pode substituir os valores no modelo-base e adicionar itens com valor de matriz na máxima extensão permitida por regras de validação para a specialization.The client can override values in the base template and add to array-valued items to the extent allowed by validation rules for the specialization.

SolicitaçãoRequest

POST https://graph.microsoft.com/v1.0/teams
Content-Type: application/json

{
    "template@odata.bind": "https://graph.microsoft.com/v1.0/teamsTemplates('standard')",
    "visibility": "Private",
    "displayName": "Sample Engineering Team",
    "description": "This is a sample engineering team, used to showcase the range of properties supported by this API",
    "channels": [
        {
            "displayName": "Announcements 📢",
            "isFavoriteByDefault": true,
            "description": "This is a sample announcements channel that is favorited by default. Use this channel to make important team, product, and service announcements."
        },
        {
            "displayName": "Training 🏋️",
            "isFavoriteByDefault": true,
            "description": "This is a sample training channel, that is favorited by default, and contains an example of pinned website and YouTube tabs.",
            "tabs": [
                {
                    "teamsApp@odata.bind": "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps('com.microsoft.teamspace.tab.web')",
                    "name": "A Pinned Website",
                    "configuration": {
                        "contentUrl": "https://docs.microsoft.com/microsoftteams/microsoft-teams"
                    }
                },
                {
                    "teamsApp@odata.bind": "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps('com.microsoft.teamspace.tab.youtube')",
                    "name": "A Pinned YouTube Video",
                    "configuration": {
                        "contentUrl": "https://tabs.teams.microsoft.com/Youtube/Home/YoutubeTab?videoId=X8krAMdGvCQ",
                        "websiteUrl": "https://www.youtube.com/watch?v=X8krAMdGvCQ"
                    }
                }
            ]
        },
        {
            "displayName": "Planning 📅 ",
            "description": "This is a sample of a channel that is not favorited by default, these channels will appear in the more channels overflow menu.",
            "isFavoriteByDefault": false
        },
        {
            "displayName": "Issues and Feedback 🐞",
            "description": "This is a sample of a channel that is not favorited by default, these channels will appear in the more channels overflow menu."
        }
    ],
    "memberSettings": {
        "allowCreateUpdateChannels": true,
        "allowDeleteChannels": true,
        "allowAddRemoveApps": true,
        "allowCreateUpdateRemoveTabs": true,
        "allowCreateUpdateRemoveConnectors": true
    },
    "guestSettings": {
        "allowCreateUpdateChannels": false,
        "allowDeleteChannels": false
    },
    "funSettings": {
        "allowGiphy": true,
        "giphyContentRating": "Moderate",
        "allowStickersAndMemes": true,
        "allowCustomMemes": true
    },
    "messagingSettings": {
        "allowUserEditMessages": true,
        "allowUserDeleteMessages": true,
        "allowOwnerDeleteMessages": true,
        "allowTeamMentions": true,
        "allowChannelMentions": true
    },
    "discoverySettings": {
        "showInTeamsSearchAndSuggestions": true
    },
    "installedApps": [
        {
            "teamsApp@odata.bind": "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps('com.microsoft.teamspace.tab.vsts')"
        },
        {
            "teamsApp@odata.bind": "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps('1542629c-01b3-4a6d-8f76-1938b779e48d')"
        }
    ]
}

RespostaResponse

HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /teams/{teamId}/operations/{operationId}
Content-Location: /teams/{teamId}
Content-Length: 0

Exemplo 4: criar uma equipe a partir do grupoExample 4: Create a team from group

O exemplo a seguir mostra como você pode criar uma nova equipe a partir de um grupo, dado um groupId.The following example shows how you can create a new team from a group, given a groupId.

Alguns pontos a observar nesta chamada:A few things to note about this call:

  • Para criar uma equipe, o grupo a partir do qual você a está criando deve ter pelo menos um proprietário.In order to create a team, the group you're creating it from must have a least one owner.
  • A equipe criada será sempre herdeira do nome de exibição, visibilidade, especialização e proprietários do grupo.The team that's created will always inherit from the group's display name, visibility, specialization, and members. Portanto, ao tomar essa decisão com a propriedade **group@odata.bind** , a inclusão da equipe displayName , visibilidade , especialização ou propriedades **owners@odata.bind** retornarão um erro.Therefore, when making this call with the **group@odata.bind** property, the inclusion of team displayName , visibility , specialization , or **members@odata.bind** properties will return an error.
  • Se o grupo foi criado há menos de 15 minutos, é possível que a chamada Criar equipe falhe com um código de erro 404 devido a atrasos na replicação.If the group was created less than 15 minutes ago, it's possible for the Create team call to fail with a 404 error code due to replication delays. Recomendamos que você repita a chamada Criar equipe três vezes, com um atraso de 10 segundos entre as chamadas.We recommend that you retry the Create team call three times, with a 10 second delay between calls.

SolicitaçãoRequest

POST https://graph.microsoft.com/v1.0/teams
Content-Type: application/json

{
  "template@odata.bind": "https://graph.microsoft.com/v1.0/teamsTemplates('standard')",
  "group@odata.bind": "https://graph.microsoft.com/v1.0/groups('groupId')"
}

RespostaResponse

HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /teams/{teamId}/operations/{operationId}
Content-Location: /teams/{teamId}
Content-Length: 0

Exemplo 5: Criar uma equipe a partir de um grupo com vários canais, aplicativos instalados e guias fixadasExample 5: Create a team from a group with multiple channels, installed apps, and pinned tabs

A seguir está uma solicitação que converte um grupo existente com propriedades estendidas que criarão a equipe com vários canais, aplicativos instalados e guias fixadas.The following is a request that converts an existing group with extended properties which will create the team with multiple channels, installed apps, and pinned tabs.

Para saber mais sobre os tipos de modelos base com suporte e propriedades com suporte, confira Comece a trabalhar com modelos do Teams.To learn more about supported base template types and supported properties, see Get started with Teams templates.

SolicitaçãoRequest

POST https://graph.microsoft.com/v1.0/teams
Content-Type: application/json

{
   "template@odata.bind":"https://graph.microsoft.com/v1.0/teamsTemplates('standard')",
   "group@odata.bind":"https://graph.microsoft.com/v1.0/groups('groupId')",
   "channels":[
      {
         "displayName":"Class Announcements 📢",
         "isFavoriteByDefault":true
      },
      {
         "displayName":"Homework 🏋️",
         "isFavoriteByDefault":true
      }
   ],
   "memberSettings":{
      "allowCreateUpdateChannels":false,
      "allowDeleteChannels":false,
      "allowAddRemoveApps":false,
      "allowCreateUpdateRemoveTabs":false,
      "allowCreateUpdateRemoveConnectors":false
   },
   "installedApps":[
      {
         "teamsApp@odata.bind":"https://graph.microsoft.com/v1.0/appCatalogs/teamsApps('com.microsoft.teamspace.tab.vsts')"
      },
      {
         "teamsApp@odata.bind":"https://graph.microsoft.com/v1.0/appCatalogs/teamsApps('1542629c-01b3-4a6d-8f76-1938b779e48d')"
      }
   ]
}

RespostaResponse

HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /teams/{teamId}/operations/{operationId}
Content-Location: /teams/{teamId}
Content-Length: 0

Exemplo 6: Criar uma equipe com um tipo de modelo de base não padrãoExample 6: Create a team with a non-standard base template type

Os tipos de modelos base são modelos especiais criados pela Microsoft para setores específicos.Base template types are special templates that Microsoft created for specific industries. Estes modelos base geralmente contêm aplicativos proprietários que não estão disponíveis nas lojas, e propriedade de equipe que ainda não tem suporte individual nos modelos do Microsoft Teams.These base templates often contain proprietary apps that aren't available in the store and team properties that are not yet supported individually in Microsoft Teams templates.

Para criar uma equipe a partir de um modelo base não padrão, você vai precisar alterar a propriedade template@odata.bind no corpo da solicitação de standard para indicar o que você deseja criar para o modelo base padrão.To create a team from a non-standard base template, you’ll want to change the template@odata.bind property in the request body from standard to point to the specific base template you’d like to create.

Para saber mais sobre tipos de modelos base com suporte, confira Comece a trabalhar com modelos do Teams.To learn more about supported base template types, see Get started with Teams templates.

SolicitaçãoRequest

POST https://graph.microsoft.com/v1.0/teams
Content-Type: application/json

{
  "template@odata.bind": "https://graph.microsoft.com/v1.0/teamsTemplates('educationClass')",
  "displayName": "My Class Team",
  "description": "My Class Team’s Description"
}

RespostaResponse

HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /teams/{teamId}/operations/{operationId}
Content-Location: /teams/{teamId}
Content-Length: 0

Exemplo 7: Criar uma equipe com um tipo de modelo base não padrão com propriedades estendidasExample 7: Create a team with a non-standard base template type with extended properties

Os tipos de modelos base podem ser estendidos com propriedade adicionais, permitindo que você crie sobre um modelo base existente com configurações, canais, aplicativos ou guias de equipe adicionais.Base template types can be extended with additional properties, enabling you to build on an existing base template with additional team settings, channels, apps, or tabs.

Para saber mais sobre os tipos de modelos base com suporte e propriedades com suporte, confira Comece a trabalhar com modelos do Teams.To learn more about supported base template types and supported properties, see Get started with Teams templates.

SolicitaçãoRequest

POST https://graph.microsoft.com/v1.0/teams
Content-Type: application/json

{
   "template@odata.bind":"https://graph.microsoft.com/v1.0/teamsTemplates('educationClass')",
   "displayName":"My Class Team",
   "description":"My Class Team’s Description",
   "channels":[
      {
         "displayName":"Class Announcements 📢",
         "isFavoriteByDefault":true
      },
      {
         "displayName":"Homework 🏋️",
         "isFavoriteByDefault":true
      }
   ],
   "memberSettings":{
      "allowCreateUpdateChannels":false,
      "allowDeleteChannels":false,
      "allowAddRemoveApps":false,
      "allowCreateUpdateRemoveTabs":false,
      "allowCreateUpdateRemoveConnectors":false
   },
   "installedApps":[
      {
         "teamsApp@odata.bind":"https://graph.microsoft.com/v1.0/appCatalogs/teamsApps('com.microsoft.teamspace.tab.vsts')"
      },
      {
         "teamsApp@odata.bind":"https://graph.microsoft.com/v1.0/appCatalogs/teamsApps('1542629c-01b3-4a6d-8f76-1938b779e48d')"
      }
   ]
}

RespostaResponse

HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /teams/{teamId}/operations/{operationId}
Content-Location: /teams/{teamId}
Content-Length: 0

Confira tambémSee also