Freigeben über


Kanal erstellen

Namespace: microsoft.graph

Erstellen Sie einen neuen Kanal in einem Team, wie im Anforderungstext angegeben. Wenn Sie einen Kanal erstellen, beträgt die maximale Länge des Kanals displayName 50 Zeichen. Dies ist der Name, der dem Benutzer in Microsoft Teams angezeigt wird.

Wenn Sie einen privaten Kanal erstellen, können Sie maximal 200 Mitglieder hinzufügen.

Hinweis

  • Einige Sonderzeichen im Kanalnamen führen dazu, dass die Get filesFolder-API einen Fehler zurückgibt. Einzelheiten hierzu finden Sie unter Bekannte Probleme.
  • Wenn Sie einen privaten/freigegebenen Kanal erstellen, kann die SharePoint-Website möglicherweise nicht bereitgestellt werden. Wenn die Website nach fünf Minuten nicht bereitgestellt werden kann, verwenden Sie die GET filesFolder-API , um die Bereitstellung auszulösen.

Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.

Globaler Dienst US Government L4 US Government L5 (DOD) China, betrieben von 21Vianet

Berechtigungen

Wählen Sie für diese API die Als am wenigsten privilegierten Berechtigungen gekennzeichneten Berechtigungen aus. Verwenden Sie nur dann eine Berechtigung mit höheren Berechtigungen , wenn dies für Ihre App erforderlich ist. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.

Diese API unterstützt Administratorberechtigungen. Microsoft Teams-Dienstadministratoren können auf Teams zugreifen, in denen sie kein Mitglied sind.

Berechtigungstyp Berechtigungen mit den geringsten Berechtigungen Berechtigungen mit höheren Berechtigungen
Delegiert (Geschäfts-, Schul- oder Unikonto) Channel.Create Directory.ReadWrite.All, Group.ReadWrite.All
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt Nicht unterstützt
Anwendung Channel.Create.Group Channel.Create, Directory.ReadWrite.All, Group.ReadWrite.All, Teamwork.Migrate.All

Hinweis

  • Die Berechtigungen Group.ReadWrite.All und Directory.ReadWrite.All werden nur aus Gründen der Abwärtskompatibilität unterstützt. Es wird empfohlen, Ihre Lösungen zu aktualisieren, sodass sie eine alternative Berechtigung verwenden, die in der vorherigen Tabelle aufgeführt ist, und diese Berechtigungen in Zukunft nicht mehr verwenden.
  • Die Channel.Create.Group-Berechtigung verwendet die ressourcenspezifische Zustimmung. In Zukunft kann Microsoft verlangen, dass Sie oder Ihre Kunden zusätzliche Gebühren basierend auf der Menge der Daten zahlen, die mithilfe von Teamwork.Migrate.All und/oder Migrations-APIs importiert wurden.

HTTP-Anforderung

POST /teams/{team-id}/channels

Anforderungsheader

Kopfzeile Wert
Authorization Bearer {token}. Erforderlich. Erfahren Sie mehr über die Authentifizierung und Autorisierung.
Content-Type application/json. Erforderlich.

Anforderungstext

Geben Sie im Anforderungstext eine JSON-Darstellung des channel-Objekts an.

Antwort

Bei erfolgreicher Ausführung gibt die Methode den 201 Created Antwortcode und ein Kanalobjekt im Antworttext für einen Kanal mit dem membershipType-Wert oder privatezurückstandard. Für einen Kanal mit dem membershipType-Wert gibt shareddiese Methode einen 202 Accepted Antwortcode und einen Link zu teamsAsyncOperation zurück.

Beispiele

Beispiel 1: Erstellen eines Standardkanals

Anforderung

Das folgende Beispiel zeigt eine Anforderung zum Erstellen eines Standardkanals.

POST https://graph.microsoft.com/v1.0/teams/57fb72d0-d811-46f4-8947-305e6072eaa5/channels
Content-type: application/json

{
  "displayName": "Architecture Discussion",
  "description": "This channel is where we debate all future architecture plans",
  "membershipType": "standard"
}

Antwort

Das folgende Beispiel zeigt die Antwort.

Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.

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

{
  "id": "19:4b6bed8d24574f6a9e436813cb2617d8@thread.tacv2",
  "displayName": "Architecture Discussion",
  "description": "This channel is where we debate all future architecture plans"
}

Beispiel 2: Erstellen eines privaten Kanals im Namen des Benutzers

Anforderung

Das folgende Beispiel zeigt eine Anforderung zum Erstellen eines privaten Kanals und Hinzufügen eines Benutzers als Teambesitzer.

POST https://graph.microsoft.com/v1.0/teams/57fb72d0-d811-46f4-8947-305e6072eaa5/channels
Content-type: application/json

{
  "@odata.type": "#Microsoft.Graph.channel",
  "membershipType": "private",
  "displayName": "My First Private Channel",
  "description": "This is my first private channels",
  "members":
     [
        {
           "@odata.type":"#microsoft.graph.aadUserConversationMember",
           "user@odata.bind":"https://graph.microsoft.com/v1.0/users('62855810-484b-4823-9e01-60667f8b12ae')",
           "roles":["owner"]
        }
     ]
}

Anmerkung: Um dem Kanal ein Gastkonto hinzuzufügen, verwenden Sie für die Eigenschaft roles den Wert guest.

Antwort

Das folgende Beispiel zeigt die Antwort.

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

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#teams('57fb72d0-d811-46f4-8947-305e6072eaa5')/channels/$entity",
    "id": "19:33b76eea88574bd1969dca37e2b7a819@thread.skype",
    "displayName": "My First Private Channel",
    "description": "This is my first private channels",
    "isFavoriteByDefault": null,
    "email": "",
    "webUrl": "https://teams.microsoft.com/l/channel/19:33b76eea88574bd1969dca37e2b7a819@thread.skype/My%20First%20Private%20Channel?groupId=57fb72d0-d811-46f4-8947-305e6072eaa5&tenantId=0fddfdc5-f319-491f-a514-be1bc1bf9ddc",
    "membershipType": "private"
}

Beispiel 3: Erstellen eines Kanals im Migrationsmodus

Anforderung

Das folgende Beispiel zeigt, wie Sie einen Kanal erstellen, der zum Importieren von Nachrichten verwendet wird.

POST https://graph.microsoft.com/v1.0/teams/57fb72d0-d811-46f4-8947-305e6072eaa5/channels
Content-Type: application/json

{
  "@microsoft.graph.channelCreationMode": "migration",
  "displayName": "Import_150958_99z",
  "description": "Import_150958_99z",
  "createdDateTime": "2020-03-14T11:22:17.067Z"
}

Antwort

Das folgende Beispiel zeigt die Antwort. Der Content-Location-Header in der Antwort gibt den Pfad zu dem Kanal an, der bereitgestellt wird. Nach der Bereitstellung kann dieser Kanal zum Importieren von Nachrichten verwendet werden.

HTTP/1.1 201 Created
Location: /teams('57fb72d0-d811-46f4-8947-305e6072eaa5')/channels('19:4b6bed8d24574f6a9e436813cb2617d8@thread.tacv2')

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#teams('57fb72d0-d811-46f4-8947-305e6072eaa5')/channels/$entity",
    "id": "19:987c7a9fbe6447ccb3ea31bcded5c75c@thread.tacv2",
    "createdDateTime": null,
    "displayName": "Import_150958_99z",
    "description": "Import_150958_99z",
    "isFavoriteByDefault": null,
    "email": null,
    "webUrl": null,
    "membershipType": null,
    "moderationSettings": null
}

Beispiel 4: Erstellen eines privaten Kanals im Namen des Benutzers mithilfe des Benutzerprinzipalnamens

Anforderung

Das folgende Beispiel zeigt eine Anforderung zum Erstellen eines privaten Kanals und Hinzufügen eines Benutzers als Teambesitzer.

POST https://graph.microsoft.com/v1.0/teams/57fb72d0-d811-46f4-8947-305e6072eaa5/channels
Content-type: application/json

{
  "@odata.type": "#Microsoft.Graph.channel",
  "membershipType": "private",
  "displayName": "My First Private Channel",
  "description": "This is my first private channels",
  "members":
     [
        {
           "@odata.type":"#microsoft.graph.aadUserConversationMember",
           "user@odata.bind":"https://graph.microsoft.com/v1.0/users('jacob@contoso.com')",
           "roles":["owner"]
        }
     ]
}

Anmerkung: Um dem Kanal ein Gastkonto hinzuzufügen, verwenden Sie für die Eigenschaft roles den Wert guest.

Antwort

Das folgende Beispiel zeigt die Antwort.

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

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#teams('57fb72d0-d811-46f4-8947-305e6072eaa5')/channels/$entity",
    "id": "19:33b76eea88574bd1969dca37e2b7a819@thread.skype",
    "displayName": "My First Private Channel",
    "description": "This is my first private channels",
    "isFavoriteByDefault": null,
    "email": "",
    "webUrl": "https://teams.microsoft.com/l/channel/19:33b76eea88574bd1969dca37e2b7a819@thread.skype/My%20First%20Private%20Channel?groupId=57fb72d0-d811-46f4-8947-305e6072eaa5&tenantId=0fddfdc5-f319-491f-a514-be1bc1bf9ddc",
    "membershipType": "private"
}

Beispiel 5: Erstellen eines freigegebenen Kanals im Namen eines Benutzers

Anforderung

Das folgende Beispiel zeigt, wie Sie einen freigegebenen Kanal erstellen.

POST https://graph.microsoft.com/v1.0/teams/57fb72d0-d811-46f4-8947-305e6072eaa5/channels
Content-type: application/json

{
  "displayName": "My First Shared Channel",
  "description": "This is my first shared channel",
  "membershipType": "shared",
  "members": [
    {
      "@odata.type": "#microsoft.graph.aadUserConversationMember",
      "user@odata.bind": "https://graph.microsoft.com/v1.0/users('7640023f-fe43-573f-9ff4-84a9efe4acd6')",
      "roles": [
        "owner"
      ]
    }
  ]
}

Anmerkung: Um dem Kanal ein Gastkonto hinzuzufügen, verwenden Sie für die Eigenschaft roles den Wert guest.

Antwort

Das folgende Beispiel zeigt die Antwort.

HTTP/1.1 202 Accepted
Content-Type: application/json
Content-Location: /teams/7640023f-fe43-4cc7-9bd3-84a9efe4acd6/operations/359d75f6-2bb8-4785-ab2d-377bf3d573fa
Content-Length: 0

Beispiel 7: Erstellen eines freigegebenen Kanals, der für das Hostteam freigegeben wurde

Anforderung

Das folgende Beispiel zeigt, wie Sie einen freigegebenen Kanal erstellen, der für das Hostteam freigegeben ist.

POST https://graph.microsoft.com/v1.0/teams/57fb72d0-d811-46f4-8947-305e6072eaa5/channels
Content-type: application/json

{
  "displayName": "My First Shared Channel",
  "description": "This is my first shared channel",
  "membershipType": "shared",
  "members": [
    {
      "@odata.type": "#microsoft.graph.aadUserConversationMember",
      "user@odata.bind": "https://graph.microsoft.com/beta/users('7640023f-fe43-573f-9ff4-84a9efe4acd6')",
      "roles": [
        "owner"
      ]
    }
  ],
  "sharedWithTeams":[
    {
      "id": "57fb72d0-d811-46f4-8947-305e6072eaa5"
    }
  ]
}

Antwort

Das folgende Beispiel zeigt die Antwort.

HTTP/1.1 202 Accepted
Content-Type: application/json
Content-Location: /teams/7640023f-fe43-4cc7-9bd3-84a9efe4acd6/operations/359d75f6-2bb8-4785-ab2d-377bf3d573fa
Content-Length: 0

Microsoft Graph – dienstspezifische Drosselungslimiten