ファイアウォールなどで通信データを制御している場合、以下のページでアクセス先を確認し、設定を行うケースは多々あるかと思います。
Office 365 URL および IP アドレス範囲 - Office 365
これを見ていたところ、以下のように注意書きが追加されており、Webサービス(RESTサービス)への移行が記されていました。
【注意書き】
そして、その内容は以下。
Managing Office 365 endpoints - Office 365
4.Webサービスというタブが追加され、どういったアクセスが必要となるかが記されています。
詳細は読んでいただくとして、大まかには以下3つのコマンドを用いての制御となります。
https://endpoints.office.com/version/O365Worldwide
https://endpoints.office.com/endpoints/o365worldwide
https://endpoints.office.com/changes/o365worldwide/0000000000
Office365中国、ドイツなどでは一部アドレスがことなったりしますが、概ねこれを覚えておけば問題ないかと。
ClientRequestId=の必須パラメータでGUIDをセットしないとデータがとってこれないため、これは忘れないようにしましょう。GUIDについては特に値に決まりはないようです。(サイトにも記載はありますが、この値は使えなくなるかも。とのこと)
日本語サイトだと、クエリパラメータとしてFORMAT=となる部分が形式=となっていたりで正しいパラメータがわかりにくいので、そのあたりを考慮して英語サイトで閲覧したほうがよさそうです。
試しに以下コマンドで動作を確認してみたところ、ブラウザアクセスでも応答を取得できました。
endpointsとchangesについては、ここで取得したデータをもとに組み立てろ。ということになりますね。
上記応答より、20180503の変更点を取ってみると、、、
なんとデータなし笑
ひとつ前でとってみると、、、
きっちりとデータの取得が行えました。
実体としては、変更点の取得よりも今の状態を取ることが多いのかと思います。
その場合はendpointsを取得することになります。
加工方法によって、JSONもしくはCSVどちらで出力するか決めることになりますが、Formatパラメータを付けなければJSONとなるため、JSONでとってから加工するのが一般的になるのかと。(CSVにした方がデータ量が削減されると思います。微々たるものですが。)
この内容を定期的に取得し、うまくFWにあてる仕組みを作ってしまえばメンテが楽になると思いますので、活用を検討してみてはいかがでしょうか。
音楽:YUZURIHA