名前空間: microsoft.graph
チーム内の チャネル をアーカイブします。 チャネルがアーカイブされると、ユーザーは新しいメッセージを送信したり、チャネル内の既存のメッセージに反応したり、チャネル設定を編集したり、チャネルに他の変更を加えたりすることはできません。
アーカイブされたチャネルを削除したり、そのチャネルに対してメンバーを追加したり削除したりできます。 チームをアーカイブすると、そのチャネルもアーカイブされます。
アーカイブは非同期操作です。チャネルは、非同期アーカイブ操作が正常に完了した後にアーカイブされます。これは、応答が返された後に発生する可能性があります。
所有者がいないチャネル、または所有者のない グループ に属するチャネルはアーカイブできません。
アーカイブされた状態からチャネルを復元するには、 チャネル: 非アーカイブ メソッドを使用します。 チャネルがアーカイブされている場合、チャネルをアーカイブまたはアーカイブ解除することはできません。
この API は、次の国内クラウド展開で使用できます。
グローバル サービス |
米国政府機関 L4 |
米国政府機関 L5 (DOD) |
21Vianet が運営する中国 |
✅ |
✅ |
✅ |
✅ |
アクセス許可
この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。
アプリで必要な場合にのみ、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、「アクセス許可のリファレンス」を参照してください。
アクセス許可の種類 |
最小特権アクセス許可 |
より高い特権のアクセス許可 |
委任 (職場または学校のアカウント) |
ChannelSettings.ReadWrite.All |
注意事項なし。 |
委任 (個人用 Microsoft アカウント) |
サポートされていません。 |
サポートされていません。 |
アプリケーション |
ChannelSettings.ReadWrite.All |
注意事項なし。 |
注: この API は、管理者のアクセス許可をサポートします。 グローバル管理者またはMicrosoft Teamsサービス管理者ロールを持つユーザーは、メンバーではないチームにアクセスできます。
HTTP 要求
POST /teams/{team-id}/channels/{channel-id}/archive
POST /groups/{team-id}/team/channels/{channel-id}/archive
名前 |
説明 |
Authorization |
ベアラー {token}。 必須です。
認証と認可についての詳細をご覧ください。 |
Content-Type |
application/json. 省略可能。 |
要求本文
要求本文では、必要に応じて、次のパラメーターを持つ JSON オブジェクトを指定できます。
パラメーター |
型 |
説明 |
shouldSetSpoSiteReadOnlyForMembers |
ブール型 |
チームに関連付けられている SharePoint Online サイトでチャネル メンバーに読み取り専用のアクセス許可を設定するかどうかを定義します。 パラメーターを false または省略するように設定した場合、この手順はスキップされます。 |
次の例は、 shouldSetSpoSiteReadOnlyForMembers が true
に設定された要求本文を示しています。
{
"shouldSetSpoSiteReadOnlyForMembers": true
}
応答
アーカイブが正常に開始された場合、このメソッドは202 Accepted
応答コードを返します。 応答には、チーム内のチャネルのアーカイブを処理するために作成された teamsAsyncOperation の場所を指定するLocation
ヘッダーが含まれています。 この場所に GET 要求を作成して、アーカイブ操作の状態を確認します。
例
例 1: チャネルをアーカイブする
次の例は、チャネルをアーカイブする要求を示しています。
要求
POST https://graph.microsoft.com/v1.0/teams/16dc05c0-2259-4540-a970-3580ff459721/channels/19:v32db348d9264477abcf18ffa2cf76dc@thread.tacv2/archive
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.Teams["{team-id}"].Channels["{channel-id}"].Archive.PostAsync(null);
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
//other-imports
)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
graphClient.Teams().ByTeamId("team-id").Channels().ByChannelId("channel-id").Archive().Post(context.Background(), nil)
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
graphClient.teams().byTeamId("{team-id}").channels().byChannelId("{channel-id}").archive().post(null);
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
const options = {
authProvider,
};
const client = Client.init(options);
await client.api('/teams/16dc05c0-2259-4540-a970-3580ff459721/channels/19:v32db348d9264477abcf18ffa2cf76dc@thread.tacv2/archive')
.post();
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
<?php
use Microsoft\Graph\GraphServiceClient;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$graphServiceClient->teams()->byTeamId('team-id')->channels()->byChannelId('channel-id')->archive()->post()->wait();
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
await graph_client.teams.by_team_id('team-id').channels.by_channel_id('channel-id').archive.post(None)
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
応答
次の例は応答を示しています。
HTTP/1.1 202 Accepted
Location: /teams/16dc05c0-2259-4540-a970-3580ff459721/operations/b7ee702a-d87f-4cc6-82b9-e731c16d3aba
Content-Type: text/plain
Content-Length: 0
例 2: チームがアーカイブされたときにチャネルをアーカイブする
次の例は、チームがアーカイブされているために失敗したチャネルをアーカイブする要求を示しています。チャネルをアーカイブまたはアーカイブ解除するには、チームがアクティブである必要があります。
要求
POST https://graph.microsoft.com/v1.0/teams/16dc05c0-2259-4540-a970-3580ff459721/channels/19:v32db348d9264477abcf18ffa2cf76dc@thread.tacv2/archive
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.Teams["{team-id}"].Channels["{channel-id}"].Archive.PostAsync(null);
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
//other-imports
)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
graphClient.Teams().ByTeamId("team-id").Channels().ByChannelId("channel-id").Archive().Post(context.Background(), nil)
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
graphClient.teams().byTeamId("{team-id}").channels().byChannelId("{channel-id}").archive().post(null);
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
const options = {
authProvider,
};
const client = Client.init(options);
await client.api('/teams/16dc05c0-2259-4540-a970-3580ff459721/channels/19:v32db348d9264477abcf18ffa2cf76dc@thread.tacv2/archive')
.post();
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
<?php
use Microsoft\Graph\GraphServiceClient;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$graphServiceClient->teams()->byTeamId('team-id')->channels()->byChannelId('channel-id')->archive()->post()->wait();
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
await graph_client.teams.by_team_id('team-id').channels.by_channel_id('channel-id').archive.post(None)
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
応答
次の例は、対応するエラー メッセージを含む 400 Bad Request
応答コードを示しています。
http/1.1 400 Bad Request
Content-Type: application/json
Content-Length: 193
{
"error": {
"code": "BadRequest",
"message": "Team has to be active, for channel to be archived or unarchived: {channel-id}",
"innerError": {
"message": "Team has to be active, for channel to be archived or unarchived: {channel-id}",
"code": "Unknown",
"innerError": {},
"date": "2023-12-11T04:26:35",
"request-id": "8f897345980-f6f3-49dd-83a8-a3064eeecdf8",
"client-request-id": "50a0er33-4567-3f6c-01bf-04d144fc8bbe"
}
}
}