Espace de noms: microsoft.graph
Importante
Les API sous la version /beta dans Microsoft Graph sont susceptibles d’être modifiées. L’utilisation de ces API dans des applications de production n’est pas prise en charge. Pour déterminer si une API est disponible dans v1.0, utilisez le sélecteur Version .
Mettez à jour les propriétés du canal spécifié.
Remarque
Lorsqu’elle est utilisée avec des autorisations d’application, cette API est limitée. Il prend en charge le model=A modèle de paiement. Pour plus d’informations, consultez Modèles de paiement. Si vous ne spécifiez pas de modèle de paiement dans votre requête, le mode d’évaluation par défaut est utilisé.
Cette API est disponible dans les déploiements de cloud national suivants.
| Service global |
Gouvernement des États-Unis L4 |
Us Government L5 (DOD) |
Chine gérée par 21Vianet |
| ✅ |
✅ |
✅ |
✅ |
Autorisations
Choisissez l’autorisation ou les autorisations marquées comme moins privilégiées pour cette API. Utilisez une autorisation ou des autorisations privilégiées plus élevées uniquement si votre application en a besoin. Pour plus d’informations sur les autorisations déléguées et d’application, consultez Types d’autorisations. Pour en savoir plus sur ces autorisations, consultez les informations de référence sur les autorisations.
Cette API prend en charge les autorisations d’administrateur. Les administrateurs de service Microsoft Teams peuvent accéder aux équipes dont ils ne sont pas membres.
| Type d’autorisation |
Autorisations avec privilèges minimum |
Autorisations privilégiées plus élevées |
| Déléguée (compte professionnel ou scolaire) |
ChannelSettings.ReadWrite.All |
Directory.ReadWrite.All, Group.ReadWrite.All |
| Déléguée (compte Microsoft personnel) |
Non prise en charge. |
Non prise en charge. |
| Application |
ChannelSettings.ReadWrite.Group |
ChannelSettings.ReadWrite.All, Directory.ReadWrite.All, Group.ReadWrite.All |
Remarque
- Les autorisations ChannelSettings.ReadWrite.Group utilisent le consentement spécifique à la ressource.
- Les autorisations Group.ReadWrite.All et Directory.ReadWrite.All et ne sont prises en charge qu’à des fins de compatibilité descendante. Nous vous recommandons de mettre à jour vos solutions pour utiliser une autorisation différente répertoriée dans le tableau précédent et d’éviter d’utiliser ces autorisations à l’avenir.
Requête HTTP
PATCH /teams/{team-id}/channels/{channel-id}
Corps de la demande
Dans le corps de la demande, fournissez une représentation JSON de l’objet canal.
Note: Vous ne pouvez pas mettre à jour la membershipType valeur d’un canal existant.
Réponse
Si elle réussit, cette méthode renvoie un code de réponse 204 No Content.
Exemple
Exemple 1 : Canal de mise à jour
Demande
L’exemple suivant illustre une demande.
PATCH https://graph.microsoft.com/beta/teams/893075dd-2487-4122-925f-022c42e20265/channels/19:561fbdbbfca848a484f0a6f00ce9dbbd@thread.tacv2
Réponse
L’exemple suivant illustre la réponse.
HTTP/1.1 204 No Content
Exemple 2 : Mettre à jour le canal avec les paramètres de modération
Demande
L’exemple suivant montre une demande de mise à jour des paramètres de modération d’un canal. Seuls les propriétaires d’équipe peuvent effectuer cette opération.
PATCH https://graph.microsoft.com/beta/teams/893075dd-2487-4122-925f-022c42e20265/channels/19:561fbdbbfca848a484f0a6f00ce9dbbd@thread.tacv2
Content-type: application/json
{
"displayName": "UpdateChannelModeration",
"description": "Update channel moderation.",
"moderationSettings": {
"userNewMessageRestriction": "moderators",
"replyRestriction": "everyone",
"allowNewMessageFromBots": true,
"allowNewMessageFromConnectors": true
}
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new Channel
{
DisplayName = "UpdateChannelModeration",
Description = "Update channel moderation.",
ModerationSettings = new ChannelModerationSettings
{
UserNewMessageRestriction = UserNewMessageRestriction.Moderators,
ReplyRestriction = ReplyRestriction.Everyone,
AllowNewMessageFromBots = true,
AllowNewMessageFromConnectors = true,
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Teams["{team-id}"].Channels["{channel-id}"].PatchAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewChannel()
displayName := "UpdateChannelModeration"
requestBody.SetDisplayName(&displayName)
description := "Update channel moderation."
requestBody.SetDescription(&description)
moderationSettings := graphmodels.NewChannelModerationSettings()
userNewMessageRestriction := graphmodels.MODERATORS_USERNEWMESSAGERESTRICTION
moderationSettings.SetUserNewMessageRestriction(&userNewMessageRestriction)
replyRestriction := graphmodels.EVERYONE_REPLYRESTRICTION
moderationSettings.SetReplyRestriction(&replyRestriction)
allowNewMessageFromBots := true
moderationSettings.SetAllowNewMessageFromBots(&allowNewMessageFromBots)
allowNewMessageFromConnectors := true
moderationSettings.SetAllowNewMessageFromConnectors(&allowNewMessageFromConnectors)
requestBody.SetModerationSettings(moderationSettings)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
channels, err := graphClient.Teams().ByTeamId("team-id").Channels().ByChannelId("channel-id").Patch(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
Channel channel = new Channel();
channel.setDisplayName("UpdateChannelModeration");
channel.setDescription("Update channel moderation.");
ChannelModerationSettings moderationSettings = new ChannelModerationSettings();
moderationSettings.setUserNewMessageRestriction(UserNewMessageRestriction.Moderators);
moderationSettings.setReplyRestriction(ReplyRestriction.Everyone);
moderationSettings.setAllowNewMessageFromBots(true);
moderationSettings.setAllowNewMessageFromConnectors(true);
channel.setModerationSettings(moderationSettings);
Channel result = graphClient.teams().byTeamId("{team-id}").channels().byChannelId("{channel-id}").patch(channel);
const options = {
authProvider,
};
const client = Client.init(options);
const channel = {
displayName: 'UpdateChannelModeration',
description: 'Update channel moderation.',
moderationSettings: {
userNewMessageRestriction: 'moderators',
replyRestriction: 'everyone',
allowNewMessageFromBots: true,
allowNewMessageFromConnectors: true
}
};
await client.api('/teams/893075dd-2487-4122-925f-022c42e20265/channels/19:561fbdbbfca848a484f0a6f00ce9dbbd@thread.tacv2')
.version('beta')
.update(channel);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Models\Channel;
use Microsoft\Graph\Beta\Generated\Models\ChannelModerationSettings;
use Microsoft\Graph\Beta\Generated\Models\UserNewMessageRestriction;
use Microsoft\Graph\Beta\Generated\Models\ReplyRestriction;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new Channel();
$requestBody->setDisplayName('UpdateChannelModeration');
$requestBody->setDescription('Update channel moderation.');
$moderationSettings = new ChannelModerationSettings();
$moderationSettings->setUserNewMessageRestriction(new UserNewMessageRestriction('moderators'));
$moderationSettings->setReplyRestriction(new ReplyRestriction('everyone'));
$moderationSettings->setAllowNewMessageFromBots(true);
$moderationSettings->setAllowNewMessageFromConnectors(true);
$requestBody->setModerationSettings($moderationSettings);
$result = $graphServiceClient->teams()->byTeamId('team-id')->channels()->byChannelId('channel-id')->patch($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Teams
$params = @{
displayName = "UpdateChannelModeration"
description = "Update channel moderation."
moderationSettings = @{
userNewMessageRestriction = "moderators"
replyRestriction = "everyone"
allowNewMessageFromBots = $true
allowNewMessageFromConnectors = $true
}
}
Update-MgBetaTeamChannel -TeamId $teamId -ChannelId $channelId -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.models.channel import Channel
from msgraph_beta.generated.models.channel_moderation_settings import ChannelModerationSettings
from msgraph_beta.generated.models.user_new_message_restriction import UserNewMessageRestriction
from msgraph_beta.generated.models.reply_restriction import ReplyRestriction
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = Channel(
display_name = "UpdateChannelModeration",
description = "Update channel moderation.",
moderation_settings = ChannelModerationSettings(
user_new_message_restriction = UserNewMessageRestriction.Moderators,
reply_restriction = ReplyRestriction.Everyone,
allow_new_message_from_bots = True,
allow_new_message_from_connectors = True,
),
)
result = await graph_client.teams.by_team_id('team-id').channels.by_channel_id('channel-id').patch(request_body)
Réponse
L’exemple suivant illustre la réponse.
HTTP/1.1 204 No Content
Exemple 4 : Mettre à jour le type de disposition d’un canal
Cet exemple montre comment mettre à jour le type de disposition d’un canal existant de la publication à la conversation.
Demande
L’exemple suivant montre une demande de modification de la disposition d’un canal du format post-réponse traditionnel à une expérience de thread de type conversation.
PATCH https://graph.microsoft.com/beta/teams/893075dd-2487-4122-925f-022c42e20265/channels/19:4b6bed8d24574f6a9e436813cb2617d8@thread.tacv2
Content-type: application/json
{
"layoutType": "chat"
}
Réponse
L’exemple suivant illustre la réponse.
HTTP/1.1 204 No Content
Exemple 5 : revenir au type de disposition de publication d’un canal
Cet exemple montre comment reconverti un canal de disposition de conversation au format post-réponse traditionnel.
Demande
PATCH https://graph.microsoft.com/beta/teams/893075dd-2487-4122-925f-022c42e20265/channels/19:4b6bed8d24574f6a9e436813cb2617d8@thread.tacv2
Content-type: application/json
{
"layoutType": "post"
}
Réponse
L’exemple suivant illustre la réponse.
HTTP/1.1 204 No Content
Contenu connexe
Limites de limitation spécifiques au service Microsoft Graph