鍋綿ブログ

C#・SharePoint・SharePoint Framework・Office365を中心に扱うブログです。

REST APIでコミュニケーションサイトのテンプレートを使ってSharePointのサイトコレクションを作る方法。Flowにも組み込み可!

クラシック機能では、SharePointのサイトコレクションをREST APIで作成することができませんでした。モダン機能では「コミュニケーションサイト」をREST APIで作ることができましたのでメモしておきます。Microsoft Docsでも公開されています。

同様に「Office 365グループに接続されたチーム サイト」も作成できました。

www.micknabewata.com

 

 

リクエスト

  • URL

   https://{テナント}.sharepoint.com/_api/sitepages/communicationsite/create

  • メソッド

   POST

  • ヘッダ

   accept:application/json;odata=verbose

   content-type:application/json;odata=verbose

  • 本文

   {
    "request":{
     "__metadata":{
      "type":"SP.Publishing.CommunicationSiteCreationRequest"
     },
     "AllowFileSharingForGuestUsers":"false",
     "Description":"Description",
     "SiteDesignId":"f6cc5403-0d63-442e-96c0-285923709ffc",
     "Title":"{サイト名}",
     "Url":"{サイトURL}",
     "lcid":"1041"
    }
   }

※ 本文中のlcidは今のところ設定しても効果がありません。地域と既定の言語は英語になります。第2言語で全言語が選択された状態になるようなので、見た目はちゃんと日本語でした。

※ 標準デザインのSiteDesignIdはMicrosoft Docsに掲載されています。

Flowへの組み込み

「SharePoint に HTTP要求を送信します」というアクションを組み込むことでFlow内からもコミュニケーションサイト作成を実行できます。

f:id:micknabewata:20190611171638p:plain

組み込み例

以上、参考になれば幸いです。