SharePoint Onlineでサイトページからページ一覧を取得するために管理しているリストのIDを取得したい。

## リストの中身を知るには、時にリストIDが必要な場合があるのだ
SharePoint Onlineでニュースなどページを追加すると、サイトのページとして一覧が確認できます。見てわかるとおりこれはリストです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285141/b2b1c0a7-586d-9af1-c31a-7ccc627d0171.png)
## この記事が役に立つ人
SharePoint Onlineを会社や部署のポータルサイトとして利用していて、多くのニュース投稿を管理してる方にお勧めです。
さっそくPower Automateで取得してやろう！と試してみましたが、リストの一覧にサイトページのリストは現れません。これは「カスタム値の入力」で直接IDを投入してやる必要がありそうです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285141/8a377887-57f6-dfc6-1a9c-d4718b25a044.png)
## サイトのページは、ただのリストではないからか？
ふつうのリストだと、「設定」＞「リストの設定」を開くと、出てくる設定画面のURLにリストIDが含まれています。（%7Bは{を表すので、その後ろからがリストIDですね）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285141/bbbb2e94-9b02-2a78-d09a-0c46f3a825ae.png)![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285141/9f154e17-2c18-8d3a-76f7-14d14d466818.png)
ところが、サイトのページ　リストが表示されている画面から「設定」をクリックしても、「リストの設定」がありません。これは困った。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285141/5fbacc00-7076-6ef7-9b91-46cd8bb9856d.png)
## リストIDの取得方法
### その１ 設定画面から取得する
以下の通りに開きます。
1. 設定
2. サイトコンテンツ
3. サイト設定
4. サイトのライブラリとリスト
5. "サイトのページ"のカスタマイズ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285141/d46eba11-b01c-f69f-79d5-5484936d0f8b.png)
「サイトのライブラリとリスト」画面のURLに、リストIDが含まれていました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285141/4640641f-6ed4-18e2-7910-76f6de2d90e4.png)

### その２ Excelにエクスポートから取得する
サイトの上部に表示されている「Excelにエクスポート」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285141/cb1eda98-fa39-c195-3956-fdc30c0a16b7.png)
query.iqy　という名前のファイルがダウンロードされます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285141/c97a91f4-0b54-622f-25e6-3aea4b7cb88b.png)
これをテキストエディタやメモ帳で開きます。SharePointListName という項目がリストのIDです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285141/035d583b-44b4-bca3-4966-ff302cfa2bdc.png)

## Power Automateでリストの内容を取得してみる
さっそく、取得したIDを「複数の項目の取得」のリスト名に「カスタム値の入力」として差し込みました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285141/c07208b9-2627-5832-24c4-5c3f1cc546e6.png)
いちどテスト実行して得たJSONの値をコピーして、「JSONの解析」アクションの「サンプルから生成」を開いた中に張り付け、スキマーを自動生成させます。
この状態で再度テスト実行します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285141/9882d47a-3b70-09ce-cdd4-2a50b1eaf7eb.png)
サイトの一覧が取得できました。取得できたのは以下のような項目です。
|  項目 |  説明  |
| ---- | ---- |
|  ID  |  リストの行ID  |
|  TITLE  | ページタイトル  |
|Editor |記事の投稿者情報 |
|Editor#Claims |投稿者のID |
|Modified |編集日時 |
|Created|作成日時 |
|Description|ページの中身のテキスト（250文字）|
|BannerImageUrl|バナーのイメージURL|
|FirstPublishedDate|最初に公開された日時|
|OData__AuthorByline|投稿者の情報、ページURL、ページファイル名、バージョン番号など|

## IDが取得できてよかった・・・でももっと簡単な方法が。
リスト名の選択に現れなかった「サイトのページ」を手入力したら、ID不要で取得できてしまった衝撃の字事実・・・。IDの出し方をいろいろ探していた時間っていったい・・・。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/285141/a0e537a8-a50f-610b-017e-2cf4f757d877.png)
この衝撃の方法は、こちらのQiita記事で知りました。https://qiita.com/mizukyf/items/81aa3a370cd40f501162

## 最後に
サイトのページリストはページを一覧で取得できてPower Automateと組み合わせるとかなり強力なことがわかりました。ページの中身のテキストも抽出できるのだけれど、250文字以降は端折られているので、別記事では全文取得にチャレンジしたいと思います。