2025年12月14日 (日)

SharePoint リストやライブラリのURLをPower Automate で変更しよう

Adobestock_1575508426

この記事は、Microsoft 365 Advent Calendar 2025 に参加しています。※公開が予定より少し遅れてすみません💦

🎄 Microsoft 365 Advent Calendar 2025 - Adventar ⛄

SharePoint のリストやライブラリのURLは、新規作成時にリスト名やライブラリ名を日本語で指定すると、List, List1, List2,  や DocLib, DocLib1, DocLib2,,,, というようなパスを見ても一見よくわからないURLが生成されます。英語だとそのままパスとして利用されます。

さて、こんな時にパスを後化から英語表記やローマ字表記に変えることができるのですが、これには SharePoint のAPIを使う必要があります。PowerShellでも設定できますが、Power Automate を使うほうが慣れている人も多いでしょうから、SharePoint REST APIを使った変更方法をご紹介しましょぅ。

ちなみに、当然ではありますが、後からURLを変更するとすでにそのURLを告知している人はリンク切れになるので注意してください。

さて、Power Automate のクラウドフローで例えば、「フローを手動でトリガーする」アクションから始めてみましょう。つづいて SharePointコネクターの 「SharePointにHTTP要求を送信します」アクションを追加します。

20251214_013749

ここで次のように指定していきます。

  • サイトのアドレス: 目的のSharePoint サイトのアドレス (※末尾に/は不要)
  • 方法: POST
  • URL: _api/web/lists/getbytitle('<目的のリスト名>')/RootFolder/MoveTo(newurl='変更後のURLパス')
  • ヘッダー
Accept application/json;odata=verbose
Content-Type application/json;odata=verbose
IF-MATCH *
X-HTTP-Method MERGE

パスの指定はリストとライブラリで異なります。

  • リスト… Lists/<新しいパス> ※リストは Lists というパスの配下に各リストのが作られる
  • ライブラリ…<新しいパス> ※ライブラリはサイトの直下に作られる

あとはフローを保存して、テスト実行してみるとURLパスが変わることが確認できます。

たとえば、次のようにリストのURLを変更してみましょう。

[変更前] 
https://officeilearning.sharepoint.com/sites/Training-PowerAutomate-Advanced/Lists/DemoList

20251214_014029

[変更]

https://officeilearning.sharepoint.com/sites/Training-PowerAutomate-Advanced/Lists/
MerryChristmas

実際の画面の例は次の通りです。

20251214_014434実行後は元のURLにアクセスすると 404 Not Found エラーになります。

URLを変更したためそのページは存在しないといわれるのです。

改めて新しいパスにアクセスするとパスが変更されたことが確認できます。

20251214_014739

SharePoint のリストやライブラリのパスは一度作成したら変更できないと思い込んでいる方も少なくないと思いますが、こうやって比較的手軽に変更できるんですよ。

オンプレミスの SharePoint時代からある REST API の Tips でした。

では皆様、素敵な Happy Holidays をお過ごしください。

研修の紹介

弊社では Power Automate の入門者向け研修から、JSONや関数の使い方を体系立てて身に着ける上位研修までご用意しています。Copilot Studio によるAIエージェント構築では、エージェントフローが利用ができるようになっていますが、Power Automate が基盤となっており基礎知識は欠かせません。

体系立てた知識やスキルを身に着けたい方はぜひご受講もご検討ください。

 

コメント