SlideShare a Scribd company logo
1 of 36
Download to read offline
Office 365 パワーユーザー向け
REST API マスターへの道
Road to the REST API NINJA
太田 浩史
Office Apps and Services – Microsoft MVP
Office 365 パワーユーザー向け REST API マスターへの道 p. 1
自己紹介
太田 浩史 (おおた ひろふみ)
• 2008 年ごろから、SharePoint を中心に活動しています。
• 自社やお客様の Office 365 活用のご支援もしています。
• ちょっとした工夫や役立ちそうな小ネタが好きです。
Office 365 パワーユーザー向け REST API マスターへの道 p. 2
Microsoft MVP
2013 - 2014 SharePoint Server
2015 - 2018 Office Servers and Services
2018 – 2019 Office Apps & Services
www.slideshare.net/hirofumi_ota
idea.tostring.jp
ブログとか資料とかソーシャルとか
twitter.com/hrfmjp
www.facebook.com/idea.tostring.jp
ああ…
Office 365 パワーユーザー向け REST API マスターへの道 p. 3
Microsoft Flow とか PowerApps とか
楽しそうだけど
REST API とか JSON とか言うじゃない?
ああ…
Office 365 パワーユーザー向け REST API マスターへの道 p. 4
そんなん知らねーよ!
ではなく
覚えましょう
目的とゴール
Office 365 パワーユーザー向け REST API マスターへの道 p. 5
目的
• Microsoft Flow / PowerApps / Power BI と「REST API」という
聞きなれない用語が出てくるようになった
• 奇妙な JSON も知っておく必要もありそうだ
• よし、ちょっと勉強してみよう
ゴール
• API リファレンスを読んで REST API を使えるようになる
• いろんなところで出てくる JSON を読み書きできるようになる
• Microsoft Flow などから REST API を使えるようになる
• ドヤ顔しながら他の人に教えてあげられるようになる
諸注意
Office 365 パワーユーザー向け REST API マスターへの道 p. 6
正しく理解することを目指していません
“使える” までを最短で解説します。
REST API とは?
Office 365 パワーユーザー向け REST API マスターへの道 p. 7
• クラウド・サービスや Web システムを HTTP で操作する仕組み
• HTTP はこのご時世いろんなアプリから呼べるし、Web サーバーな
ら当たり前に使えるんだから便利だよねー。という感じ。
https://idea.tostring.jp
奇跡の一致
HTTP とは?
Office 365 パワーユーザー向け REST API マスターへの道 p. 8
• ユーザーからの要求(リクエスト)に対してサーバーが何らかの
応答(レスポンス)をする決まり事
アレを
ちょうだい
ンモー
要求
応答
親しき中にも礼儀あり
Office 365 パワーユーザー向け REST API マスターへの道 p. 9
• お願いをするときはちゃんとルールを守りましょう
方法
(メソッド)
お願いする相手
(エンドポイント)
欲しいもの
(リソース)
https://idea.tostring.jp/image.pngGET
翻訳すると…
「idea.tostring.jp」さん、僕は「image.png」を「GET」したいです。
Office 365 パワーユーザー向け REST API マスターへの道 p. 10
は?
💢
サーバーさんを怒らせないために
Office 365 パワーユーザー向け REST API マスターへの道 p. 11
• しっかりと “ルール” を覚えておきましょう
メソッド
リクエストヘッダー
リクエストボディー
宛先 リソース https://idea.tostring.jp/image.png
GET
User-agent: Mozilla/5.0
Accept: */*
いろいろ
メソッド
Office 365 パワーユーザー向け REST API マスターへの道 p. 12
• メソッドは次のあたりを知っておけば良いです。
メソッド 意味
GET サーバー上のデータやファイルが欲しい
POST サーバーにデータやファイルを送りたい
PUT サーバーのデータやファイルを置き換えたい
DELETE サーバーのデータやファイルを削除したい
リクエストヘッダー
Office 365 パワーユーザー向け REST API マスターへの道 p. 13
• リクエストヘッダーは次のあたりを知っておけば良いです。
ヘッダー 意味
User-Agent こっちのブラウザの種類など
Accept どんな種類のデータが欲しいか
Authorization 認可を受けるための情報とか
Content-Type こっちからデータを送る場合のデータの種類
覚える必要はありません
Office 365 パワーユーザー向け REST API マスターへの道 p. 14
• まず確実にリファレンスに書いてありマス。
• kintone API のリファレンスを見てみます(わかりやすい)
https://developer.cybozu.io/hc/ja/categories/200147600-kintone-API
– Kintone REST API の共通仕様
– レコードの取得
– レコードの登録
– レコードの更新
– レコードの削除
kintone REST API の共通仕様
Office 365 パワーユーザー向け REST API マスターへの道 p. 15
• どんなリクエストヘッダーが必要か
– 認証まわり
– 要求に応じて変わるあたり
レコードの登録
Office 365 パワーユーザー向け REST API マスターへの道 p. 16
• どんな要求をする必要があるか
– メソッド
– エンドポイント/リソース
– リクエスト ボディ
ほらでたよ…
JSON
Let’s Practice
Office 365 パワーユーザー向け REST API マスターへの道 p. 17
• 興味のあるサービスの REST API リファレンスを探してみよう
• REST API リファレンスから次の項目を読み取ってみよう
– メソッド
– エンドポイント
– リソース
– リクエスト ヘッダー
– リクエスト ボディ
JSON
Office 365 パワーユーザー向け REST API マスターへの道 p. 18
• プログラムのコードのようにも見えますが、なにかしらの特別な
ものすごい処理を実行するものではありません
• データやその構造を表しているものです
• CSV や XML と役割は同じです
• ルールさえ覚えておけば簡単に読み書きできます
JSON – 基本形
Office 365 パワーユーザー向け REST API マスターへの道 p. 19
{
“firstName” : “Hirofumi”,
“lastName” : ”Ota”,
“sex” : “Male”
}
データの
まとまり
項目名 値
項目の区切り
※最後はカンマなし
JSON – 入れ子(ネスト)
Office 365 パワーユーザー向け REST API マスターへの道 p. 20
{
“name” : {
“firstName” : “Hirofumi”,
“lastName” : ”Ota”,
“displayName” : “Hirofumi Ota”
},
“sex” : “Male”
}
データの
まとまり
name を構成する
項目と値
JSON – 配列(複数のデータ)
Office 365 パワーユーザー向け REST API マスターへの道 p. 21
{
“persons” : [
{
“firstName” : “Hirofumi”,
“lastName” : ”Ota”,
“sex” : “Male”
},
{
“firstName” : “Taro”,
“lastName” : ”Yamada”,
“sex” : “Male”
}
]
}
配列のしるし
かっこの形が違う
ひとつめのデータ
ふたつめのデータ
データの型
Office 365 パワーユーザー向け REST API マスターへの道 p. 22
データの型(種類) JSON での表し方
文字列 “name” : “Hirofumi”
数字 “age” : 18
True or False (Boolean) “Cool” : true
実際に読んでみましょう
Office 365 パワーユーザー向け REST API マスターへの道 p. 23
• JSON のサンプルが記述されてあるリファレンスを探しましょう
• livedoor お天気 Web サービス仕様を見てみます
http://weather.livedoor.com/weather_hacks/webservice
• データの項目は何か?
• データの値は何か?
• 入れ子の項目は何か?
• 配列の項目は何か?
• 文字列型の項目、数字型の項目は何か?
Let’s Practice
Office 365 パワーユーザー向け REST API マスターへの道 p. 24
• 興味のあるサービスの REST API リファレンスを探してみよう
• サンプルの JSON があったら次の項目を読み取ってみよう
– データの項目
– データの値
– 入れ子の項目
– 配列の項目
– 文字列型の項目、数字型の項目
Microsoft Flow + REST API + JSON
Office 365 パワーユーザー向け REST API マスターへの道 p. 25
• ボタンを押したら livedoor お天気 Web サービスから東京の天気を
取得して通知を受け取る
なにを設定するのか?
ヒント
東京の ID は 130010
まずは REST API を呼ぶところまで…
ヒント
Office 365 パワーユーザー向け REST API マスターへの道 p. 26
方法は GET
ヒント
Office 365 パワーユーザー向け REST API マスターへの道 p. 27
URI は
http://weather.livedoor.com/forecast/
webservice/json/v1?city=130010
ヒント
Office 365 パワーユーザー向け REST API マスターへの道 p. 28
ヘッダーは
なし!
ヒント
Office 365 パワーユーザー向け REST API マスターへの道 p. 29
本文は
なし!
実行結果
Office 365 パワーユーザー向け REST API マスターへの道 p. 30
• どんな結果が返ってきたか見てみよう
– さっき読み取った JSON と比べてみよう
– 今日の天気は何かな?
– 今日の最高気温は何度かな?
– 明日の天気は何かな?
– 明日の最高気温は何度かな?
Microsoft Flow の JSON の解析アクション
Office 365 パワーユーザー向け REST API マスターへの道 p. 31
• REST API から返ってきた値を「サンプルのペイロードを使用して
スキーマを生成する」機能を利用してスキーマに変換
便利だけど上手く解析できない場合もある
Null が返ってくる時など(今回のパターン)
Microsoft Flow の Notifications アクション
Office 365 パワーユーザー向け REST API マスターへの道 p. 32
• 解析された JSON の結果を Notifications アクションに渡す
Microsoft Flow + JSON
Office 365 パワーユーザー向け REST API マスターへの道 p. 33
• 式で JSON の値にアクセスする
• JSON を読めるようになったあなたなら出来る
actionBody('HTTP').forecasts[0].temperature.max.celsius
HTTP という名前のアクションから
出力された本文(つまり JSON)
forecasts という配列の
一番最初のデータ
0 から始まるのはルール
データ構造に従って
. で繋いでいくだけ
今日の最高気温(摂氏)
Re: Microsoft Flow の Notifications アクション
Office 365 パワーユーザー向け REST API マスターへの道 p. 34
• 式を使って取り出した値を Notifications アクションに渡す
Let’s Practice
Office 365 パワーユーザー向け REST API マスターへの道 p. 35
• 他のデータを使って通知を受けてみよう
• 次のような項目を組合わせて好きな通知を作成しよう
– 今日の天気
– 明日の天気
– 明日の気温
– お天気概況文
Office 365 パワーユーザー向け REST API マスターへの道
終製作・著作
@hrfmjp
idea.tostring.jp
Fin.

More Related Content

What's hot

マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!mosa siru
 
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)NTT DATA Technology & Innovation
 
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52Yahoo!デベロッパーネットワーク
 
Snowflake Architecture and Performance(db tech showcase Tokyo 2018)
Snowflake Architecture and Performance(db tech showcase Tokyo 2018)Snowflake Architecture and Performance(db tech showcase Tokyo 2018)
Snowflake Architecture and Performance(db tech showcase Tokyo 2018)Mineaki Motohashi
 
App013 ここはあえて紙と
App013 ここはあえて紙とApp013 ここはあえて紙と
App013 ここはあえて紙とTech Summit 2016
 
Spring Boot × Vue.jsでSPAを作る
Spring Boot × Vue.jsでSPAを作るSpring Boot × Vue.jsでSPAを作る
Spring Boot × Vue.jsでSPAを作るGo Miyasaka
 
PostgreSQLによるデータ分析ことはじめ
PostgreSQLによるデータ分析ことはじめPostgreSQLによるデータ分析ことはじめ
PostgreSQLによるデータ分析ことはじめOhyama Masanori
 
AWS Glueを使った Serverless ETL の実装パターン
AWS Glueを使った Serverless ETL の実装パターンAWS Glueを使った Serverless ETL の実装パターン
AWS Glueを使った Serverless ETL の実装パターンseiichi arai
 
SharePointリストのフォームのカスタマイズを利用したときにハマること
SharePointリストのフォームのカスタマイズを利用したときにハマることSharePointリストのフォームのカスタマイズを利用したときにハマること
SharePointリストのフォームのカスタマイズを利用したときにハマることた な
 
Swaggerでのapi開発よもやま話
Swaggerでのapi開発よもやま話Swaggerでのapi開発よもやま話
Swaggerでのapi開発よもやま話KEISUKE KONISHI
 
アジャイル開発を支えるアーキテクチャ設計とは
アジャイル開発を支えるアーキテクチャ設計とはアジャイル開発を支えるアーキテクチャ設計とは
アジャイル開発を支えるアーキテクチャ設計とはYusuke Suzuki
 
Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版貴志 上坂
 
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことマルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことAmazon Web Services Japan
 
PowerApps 初心者の館?
PowerApps 初心者の館?PowerApps 初心者の館?
PowerApps 初心者の館?Teruchika Yamada
 
FormsとPower AutomateとTeamsを使った問合せ管理の仕組みをつくる
FormsとPower AutomateとTeamsを使った問合せ管理の仕組みをつくるFormsとPower AutomateとTeamsを使った問合せ管理の仕組みをつくる
FormsとPower AutomateとTeamsを使った問合せ管理の仕組みをつくる新一 河村
 
RESTful Web アプリの設計レビューの話
RESTful Web アプリの設計レビューの話RESTful Web アプリの設計レビューの話
RESTful Web アプリの設計レビューの話Takuto Wada
 
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)Yoshitaka Kawashima
 
CyberAgent における OSS の CI/CD 基盤開発 myshoes #CICD2021
CyberAgent における OSS の CI/CD 基盤開発 myshoes #CICD2021CyberAgent における OSS の CI/CD 基盤開発 myshoes #CICD2021
CyberAgent における OSS の CI/CD 基盤開発 myshoes #CICD2021whywaita
 

What's hot (20)

マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
 
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
 
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
 
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
 
Snowflake Architecture and Performance(db tech showcase Tokyo 2018)
Snowflake Architecture and Performance(db tech showcase Tokyo 2018)Snowflake Architecture and Performance(db tech showcase Tokyo 2018)
Snowflake Architecture and Performance(db tech showcase Tokyo 2018)
 
App013 ここはあえて紙と
App013 ここはあえて紙とApp013 ここはあえて紙と
App013 ここはあえて紙と
 
Spring Boot × Vue.jsでSPAを作る
Spring Boot × Vue.jsでSPAを作るSpring Boot × Vue.jsでSPAを作る
Spring Boot × Vue.jsでSPAを作る
 
WayOfNoTrouble.pptx
WayOfNoTrouble.pptxWayOfNoTrouble.pptx
WayOfNoTrouble.pptx
 
PostgreSQLによるデータ分析ことはじめ
PostgreSQLによるデータ分析ことはじめPostgreSQLによるデータ分析ことはじめ
PostgreSQLによるデータ分析ことはじめ
 
AWS Glueを使った Serverless ETL の実装パターン
AWS Glueを使った Serverless ETL の実装パターンAWS Glueを使った Serverless ETL の実装パターン
AWS Glueを使った Serverless ETL の実装パターン
 
SharePointリストのフォームのカスタマイズを利用したときにハマること
SharePointリストのフォームのカスタマイズを利用したときにハマることSharePointリストのフォームのカスタマイズを利用したときにハマること
SharePointリストのフォームのカスタマイズを利用したときにハマること
 
Swaggerでのapi開発よもやま話
Swaggerでのapi開発よもやま話Swaggerでのapi開発よもやま話
Swaggerでのapi開発よもやま話
 
アジャイル開発を支えるアーキテクチャ設計とは
アジャイル開発を支えるアーキテクチャ設計とはアジャイル開発を支えるアーキテクチャ設計とは
アジャイル開発を支えるアーキテクチャ設計とは
 
Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版
 
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことマルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのこと
 
PowerApps 初心者の館?
PowerApps 初心者の館?PowerApps 初心者の館?
PowerApps 初心者の館?
 
FormsとPower AutomateとTeamsを使った問合せ管理の仕組みをつくる
FormsとPower AutomateとTeamsを使った問合せ管理の仕組みをつくるFormsとPower AutomateとTeamsを使った問合せ管理の仕組みをつくる
FormsとPower AutomateとTeamsを使った問合せ管理の仕組みをつくる
 
RESTful Web アプリの設計レビューの話
RESTful Web アプリの設計レビューの話RESTful Web アプリの設計レビューの話
RESTful Web アプリの設計レビューの話
 
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
 
CyberAgent における OSS の CI/CD 基盤開発 myshoes #CICD2021
CyberAgent における OSS の CI/CD 基盤開発 myshoes #CICD2021CyberAgent における OSS の CI/CD 基盤開発 myshoes #CICD2021
CyberAgent における OSS の CI/CD 基盤開発 myshoes #CICD2021
 

Similar to REST API マスターへの道 - Office 365 パワーユーザー向け

WebAuthnのRP実装を簡単にしたい話
WebAuthnのRP実装を簡単にしたい話WebAuthnのRP実装を簡単にしたい話
WebAuthnのRP実装を簡単にしたい話5 6
 
Microsoft Search - Microsoft Graph connector と Search Federation の概要
Microsoft Search - Microsoft Graph connector と Search Federation の概要Microsoft Search - Microsoft Graph connector と Search Federation の概要
Microsoft Search - Microsoft Graph connector と Search Federation の概要Ai Hirano
 
Share point 365 - 概要とアプリ開発
Share point 365 - 概要とアプリ開発Share point 365 - 概要とアプリ開発
Share point 365 - 概要とアプリ開発JamesLRishe
 
LINE API 紹介&LINE API Use Case(Azure編)
LINE API 紹介&LINE API Use Case(Azure編)LINE API 紹介&LINE API Use Case(Azure編)
LINE API 紹介&LINE API Use Case(Azure編)拓将 平林
 
新しい SharePoint アプリを試してみよう
新しい SharePoint アプリを試してみよう新しい SharePoint アプリを試してみよう
新しい SharePoint アプリを試してみようHirofumi Ota
 
10分で分かるr言語入門ver2.14 15 0905
10分で分かるr言語入門ver2.14 15 090510分で分かるr言語入門ver2.14 15 0905
10分で分かるr言語入門ver2.14 15 0905Nobuaki Oshiro
 
RESTful Web API Design
RESTful Web API DesignRESTful Web API Design
RESTful Web API DesignAkinari Tsugo
 
sitTokyo2023_App&Dev_01_ariyama.pptx
sitTokyo2023_App&Dev_01_ariyama.pptxsitTokyo2023_App&Dev_01_ariyama.pptx
sitTokyo2023_App&Dev_01_ariyama.pptxyuichiariyama
 
Microsoft Flow は SharePoint Designer ワークフローの代わりになり得るか!?
Microsoft Flow は SharePoint Designer ワークフローの代わりになり得るか!?Microsoft Flow は SharePoint Designer ワークフローの代わりになり得るか!?
Microsoft Flow は SharePoint Designer ワークフローの代わりになり得るか!?Hiroaki Oikawa
 
クロスドメインアクセスを理解してWeb APIを楽しく使おう
クロスドメインアクセスを理解してWeb APIを楽しく使おうクロスドメインアクセスを理解してWeb APIを楽しく使おう
クロスドメインアクセスを理解してWeb APIを楽しく使おうkitfactory
 
10分で分かるr言語入門ver2.15 15 1010
10分で分かるr言語入門ver2.15 15 101010分で分かるr言語入門ver2.15 15 1010
10分で分かるr言語入門ver2.15 15 1010Nobuaki Oshiro
 
AWS Black Belt Techシリーズ AWS Data Pipeline
AWS Black Belt Techシリーズ  AWS Data PipelineAWS Black Belt Techシリーズ  AWS Data Pipeline
AWS Black Belt Techシリーズ AWS Data PipelineAmazon Web Services Japan
 
【第5回jduc】【勉強会】dynamics 365 web apiとの接し方
【第5回jduc】【勉強会】dynamics 365 web apiとの接し方【第5回jduc】【勉強会】dynamics 365 web apiとの接し方
【第5回jduc】【勉強会】dynamics 365 web apiとの接し方Kazuya Sugimoto
 
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (増補日本語版)
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (増補日本語版)Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (増補日本語版)
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (増補日本語版)Toru Kawamura
 
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチKazuya Sugimoto
 
開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~
開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~
開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~Yugo Shimizu
 
Tokyowebmining5 yokkuns
Tokyowebmining5 yokkunsTokyowebmining5 yokkuns
Tokyowebmining5 yokkunsYohei Sato
 

Similar to REST API マスターへの道 - Office 365 パワーユーザー向け (20)

Rest ful api設計入門
Rest ful api設計入門Rest ful api設計入門
Rest ful api設計入門
 
WebAuthnのRP実装を簡単にしたい話
WebAuthnのRP実装を簡単にしたい話WebAuthnのRP実装を簡単にしたい話
WebAuthnのRP実装を簡単にしたい話
 
Microsoft Search - Microsoft Graph connector と Search Federation の概要
Microsoft Search - Microsoft Graph connector と Search Federation の概要Microsoft Search - Microsoft Graph connector と Search Federation の概要
Microsoft Search - Microsoft Graph connector と Search Federation の概要
 
SQLWorld★大阪#8
SQLWorld★大阪#8SQLWorld★大阪#8
SQLWorld★大阪#8
 
Share point 365 - 概要とアプリ開発
Share point 365 - 概要とアプリ開発Share point 365 - 概要とアプリ開発
Share point 365 - 概要とアプリ開発
 
LINE API 紹介&LINE API Use Case(Azure編)
LINE API 紹介&LINE API Use Case(Azure編)LINE API 紹介&LINE API Use Case(Azure編)
LINE API 紹介&LINE API Use Case(Azure編)
 
新しい SharePoint アプリを試してみよう
新しい SharePoint アプリを試してみよう新しい SharePoint アプリを試してみよう
新しい SharePoint アプリを試してみよう
 
10分で分かるr言語入門ver2.14 15 0905
10分で分かるr言語入門ver2.14 15 090510分で分かるr言語入門ver2.14 15 0905
10分で分かるr言語入門ver2.14 15 0905
 
RESTful Web API Design
RESTful Web API DesignRESTful Web API Design
RESTful Web API Design
 
sitTokyo2023_App&Dev_01_ariyama.pptx
sitTokyo2023_App&Dev_01_ariyama.pptxsitTokyo2023_App&Dev_01_ariyama.pptx
sitTokyo2023_App&Dev_01_ariyama.pptx
 
Microsoft Flow は SharePoint Designer ワークフローの代わりになり得るか!?
Microsoft Flow は SharePoint Designer ワークフローの代わりになり得るか!?Microsoft Flow は SharePoint Designer ワークフローの代わりになり得るか!?
Microsoft Flow は SharePoint Designer ワークフローの代わりになり得るか!?
 
クロスドメインアクセスを理解してWeb APIを楽しく使おう
クロスドメインアクセスを理解してWeb APIを楽しく使おうクロスドメインアクセスを理解してWeb APIを楽しく使おう
クロスドメインアクセスを理解してWeb APIを楽しく使おう
 
10分で分かるr言語入門ver2.15 15 1010
10分で分かるr言語入門ver2.15 15 101010分で分かるr言語入門ver2.15 15 1010
10分で分かるr言語入門ver2.15 15 1010
 
AWS Black Belt Techシリーズ AWS Data Pipeline
AWS Black Belt Techシリーズ  AWS Data PipelineAWS Black Belt Techシリーズ  AWS Data Pipeline
AWS Black Belt Techシリーズ AWS Data Pipeline
 
【第5回jduc】【勉強会】dynamics 365 web apiとの接し方
【第5回jduc】【勉強会】dynamics 365 web apiとの接し方【第5回jduc】【勉強会】dynamics 365 web apiとの接し方
【第5回jduc】【勉強会】dynamics 365 web apiとの接し方
 
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (増補日本語版)
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (増補日本語版)Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (増補日本語版)
Hypermedia: The Missing Element to Building Adaptable Web APIs in Rails (増補日本語版)
 
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
 
REST 入門
REST 入門REST 入門
REST 入門
 
開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~
開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~
開発者におくる Power BI を使う時に考えるべきアーキテクチャ ~ データを溜めるのは誰だ? ~
 
Tokyowebmining5 yokkuns
Tokyowebmining5 yokkunsTokyowebmining5 yokkuns
Tokyowebmining5 yokkuns
 

More from Hirofumi Ota

にぎやか 3 人組が選ぶ Microsoft 365 注目アップデート 7 選
にぎやか 3 人組が選ぶ Microsoft 365 注目アップデート 7 選にぎやか 3 人組が選ぶ Microsoft 365 注目アップデート 7 選
にぎやか 3 人組が選ぶ Microsoft 365 注目アップデート 7 選Hirofumi Ota
 
カッコいい SharePoint モダンサイトを作ろう
カッコいい SharePoint モダンサイトを作ろうカッコいい SharePoint モダンサイトを作ろう
カッコいい SharePoint モダンサイトを作ろうHirofumi Ota
 
ハイブリッドワークプレイスってなんだ? ずっと Microsoft 365 を見てきた 4 人が振り返る Microsoft Ignite 2021
ハイブリッドワークプレイスってなんだ? ずっと Microsoft 365 を見てきた 4 人が振り返る Microsoft Ignite 2021ハイブリッドワークプレイスってなんだ? ずっと Microsoft 365 を見てきた 4 人が振り返る Microsoft Ignite 2021
ハイブリッドワークプレイスってなんだ? ずっと Microsoft 365 を見てきた 4 人が振り返る Microsoft Ignite 2021Hirofumi Ota
 
Microsoft Teams で行う失敗できない Web 会議やセミナー配信で使える快適な環境を極力お金をかけずに手に入れよう
Microsoft Teams で行う失敗できない Web 会議やセミナー配信で使える快適な環境を極力お金をかけずに手に入れようMicrosoft Teams で行う失敗できない Web 会議やセミナー配信で使える快適な環境を極力お金をかけずに手に入れよう
Microsoft Teams で行う失敗できない Web 会議やセミナー配信で使える快適な環境を極力お金をかけずに手に入れようHirofumi Ota
 
Microsoft Teams を利用した Web 会議の実践テクニックと注目の機能アップデート
Microsoft Teams を利用した Web 会議の実践テクニックと注目の機能アップデートMicrosoft Teams を利用した Web 会議の実践テクニックと注目の機能アップデート
Microsoft Teams を利用した Web 会議の実践テクニックと注目の機能アップデートHirofumi Ota
 
免許皆伝!Microsoft Teams ライブイベント実践的超絶技巧!
免許皆伝!Microsoft Teams ライブイベント実践的超絶技巧!免許皆伝!Microsoft Teams ライブイベント実践的超絶技巧!
免許皆伝!Microsoft Teams ライブイベント実践的超絶技巧!Hirofumi Ota
 
パソコンとスマホを利用した Microsoft Teams の Web 会議
パソコンとスマホを利用した Microsoft Teams の Web 会議パソコンとスマホを利用した Microsoft Teams の Web 会議
パソコンとスマホを利用した Microsoft Teams の Web 会議Hirofumi Ota
 
今日から使える SharePointer のための Power Platform
今日から使える SharePointer のための Power Platform今日から使える SharePointer のための Power Platform
今日から使える SharePointer のための Power PlatformHirofumi Ota
 
SharePoint モダンサイト ライブ ビルディング
SharePoint モダンサイト ライブ ビルディングSharePoint モダンサイト ライブ ビルディング
SharePoint モダンサイト ライブ ビルディングHirofumi Ota
 
SharePoint Online へのアクセスを制限しよう
SharePoint Online へのアクセスを制限しようSharePoint Online へのアクセスを制限しよう
SharePoint Online へのアクセスを制限しようHirofumi Ota
 
SharePoint Online モダンサイトの設計 - SharePoint の利用計画 - #‎MSInteract19‬ #PR05
SharePoint Online モダンサイトの設計 - SharePoint の利用計画 - #‎MSInteract19‬ #PR05SharePoint Online モダンサイトの設計 - SharePoint の利用計画 - #‎MSInteract19‬ #PR05
SharePoint Online モダンサイトの設計 - SharePoint の利用計画 - #‎MSInteract19‬ #PR05Hirofumi Ota
 
Microsoft Flow で作る承認ワークフロー
Microsoft Flow で作る承認ワークフローMicrosoft Flow で作る承認ワークフロー
Microsoft Flow で作る承認ワークフローHirofumi Ota
 
Office 365 とか Microsoft Teams とか
Office 365 とか Microsoft Teams とかOffice 365 とか Microsoft Teams とか
Office 365 とか Microsoft Teams とかHirofumi Ota
 
Microsoft Teams で Web ミーティング
Microsoft Teams で Web ミーティングMicrosoft Teams で Web ミーティング
Microsoft Teams で Web ミーティングHirofumi Ota
 
Microsoft Flow みんな大好き承認ワークフロー
Microsoft Flow みんな大好き承認ワークフローMicrosoft Flow みんな大好き承認ワークフロー
Microsoft Flow みんな大好き承認ワークフローHirofumi Ota
 
Microsoft Ignite 2017 に行ってきました
Microsoft Ignite 2017 に行ってきましたMicrosoft Ignite 2017 に行ってきました
Microsoft Ignite 2017 に行ってきましたHirofumi Ota
 
SharePoint Online Communication Sites お手軽サイト作成
SharePoint Online Communication Sites お手軽サイト作成SharePoint Online Communication Sites お手軽サイト作成
SharePoint Online Communication Sites お手軽サイト作成Hirofumi Ota
 
激闘! Office 365 Groups vs. Teams vs. Skype vs. Yammer
激闘! Office 365 Groups vs. Teams  vs. Skype vs. Yammer激闘! Office 365 Groups vs. Teams  vs. Skype vs. Yammer
激闘! Office 365 Groups vs. Teams vs. Skype vs. YammerHirofumi Ota
 
いまの Office 365 ってこんな感じ?
いまの Office 365 ってこんな感じ?いまの Office 365 ってこんな感じ?
いまの Office 365 ってこんな感じ?Hirofumi Ota
 
スグにできる!Microsoft Flow でこんな連携あんな連携
スグにできる!Microsoft Flow でこんな連携あんな連携スグにできる!Microsoft Flow でこんな連携あんな連携
スグにできる!Microsoft Flow でこんな連携あんな連携Hirofumi Ota
 

More from Hirofumi Ota (20)

にぎやか 3 人組が選ぶ Microsoft 365 注目アップデート 7 選
にぎやか 3 人組が選ぶ Microsoft 365 注目アップデート 7 選にぎやか 3 人組が選ぶ Microsoft 365 注目アップデート 7 選
にぎやか 3 人組が選ぶ Microsoft 365 注目アップデート 7 選
 
カッコいい SharePoint モダンサイトを作ろう
カッコいい SharePoint モダンサイトを作ろうカッコいい SharePoint モダンサイトを作ろう
カッコいい SharePoint モダンサイトを作ろう
 
ハイブリッドワークプレイスってなんだ? ずっと Microsoft 365 を見てきた 4 人が振り返る Microsoft Ignite 2021
ハイブリッドワークプレイスってなんだ? ずっと Microsoft 365 を見てきた 4 人が振り返る Microsoft Ignite 2021ハイブリッドワークプレイスってなんだ? ずっと Microsoft 365 を見てきた 4 人が振り返る Microsoft Ignite 2021
ハイブリッドワークプレイスってなんだ? ずっと Microsoft 365 を見てきた 4 人が振り返る Microsoft Ignite 2021
 
Microsoft Teams で行う失敗できない Web 会議やセミナー配信で使える快適な環境を極力お金をかけずに手に入れよう
Microsoft Teams で行う失敗できない Web 会議やセミナー配信で使える快適な環境を極力お金をかけずに手に入れようMicrosoft Teams で行う失敗できない Web 会議やセミナー配信で使える快適な環境を極力お金をかけずに手に入れよう
Microsoft Teams で行う失敗できない Web 会議やセミナー配信で使える快適な環境を極力お金をかけずに手に入れよう
 
Microsoft Teams を利用した Web 会議の実践テクニックと注目の機能アップデート
Microsoft Teams を利用した Web 会議の実践テクニックと注目の機能アップデートMicrosoft Teams を利用した Web 会議の実践テクニックと注目の機能アップデート
Microsoft Teams を利用した Web 会議の実践テクニックと注目の機能アップデート
 
免許皆伝!Microsoft Teams ライブイベント実践的超絶技巧!
免許皆伝!Microsoft Teams ライブイベント実践的超絶技巧!免許皆伝!Microsoft Teams ライブイベント実践的超絶技巧!
免許皆伝!Microsoft Teams ライブイベント実践的超絶技巧!
 
パソコンとスマホを利用した Microsoft Teams の Web 会議
パソコンとスマホを利用した Microsoft Teams の Web 会議パソコンとスマホを利用した Microsoft Teams の Web 会議
パソコンとスマホを利用した Microsoft Teams の Web 会議
 
今日から使える SharePointer のための Power Platform
今日から使える SharePointer のための Power Platform今日から使える SharePointer のための Power Platform
今日から使える SharePointer のための Power Platform
 
SharePoint モダンサイト ライブ ビルディング
SharePoint モダンサイト ライブ ビルディングSharePoint モダンサイト ライブ ビルディング
SharePoint モダンサイト ライブ ビルディング
 
SharePoint Online へのアクセスを制限しよう
SharePoint Online へのアクセスを制限しようSharePoint Online へのアクセスを制限しよう
SharePoint Online へのアクセスを制限しよう
 
SharePoint Online モダンサイトの設計 - SharePoint の利用計画 - #‎MSInteract19‬ #PR05
SharePoint Online モダンサイトの設計 - SharePoint の利用計画 - #‎MSInteract19‬ #PR05SharePoint Online モダンサイトの設計 - SharePoint の利用計画 - #‎MSInteract19‬ #PR05
SharePoint Online モダンサイトの設計 - SharePoint の利用計画 - #‎MSInteract19‬ #PR05
 
Microsoft Flow で作る承認ワークフロー
Microsoft Flow で作る承認ワークフローMicrosoft Flow で作る承認ワークフロー
Microsoft Flow で作る承認ワークフロー
 
Office 365 とか Microsoft Teams とか
Office 365 とか Microsoft Teams とかOffice 365 とか Microsoft Teams とか
Office 365 とか Microsoft Teams とか
 
Microsoft Teams で Web ミーティング
Microsoft Teams で Web ミーティングMicrosoft Teams で Web ミーティング
Microsoft Teams で Web ミーティング
 
Microsoft Flow みんな大好き承認ワークフロー
Microsoft Flow みんな大好き承認ワークフローMicrosoft Flow みんな大好き承認ワークフロー
Microsoft Flow みんな大好き承認ワークフロー
 
Microsoft Ignite 2017 に行ってきました
Microsoft Ignite 2017 に行ってきましたMicrosoft Ignite 2017 に行ってきました
Microsoft Ignite 2017 に行ってきました
 
SharePoint Online Communication Sites お手軽サイト作成
SharePoint Online Communication Sites お手軽サイト作成SharePoint Online Communication Sites お手軽サイト作成
SharePoint Online Communication Sites お手軽サイト作成
 
激闘! Office 365 Groups vs. Teams vs. Skype vs. Yammer
激闘! Office 365 Groups vs. Teams  vs. Skype vs. Yammer激闘! Office 365 Groups vs. Teams  vs. Skype vs. Yammer
激闘! Office 365 Groups vs. Teams vs. Skype vs. Yammer
 
いまの Office 365 ってこんな感じ?
いまの Office 365 ってこんな感じ?いまの Office 365 ってこんな感じ?
いまの Office 365 ってこんな感じ?
 
スグにできる!Microsoft Flow でこんな連携あんな連携
スグにできる!Microsoft Flow でこんな連携あんな連携スグにできる!Microsoft Flow でこんな連携あんな連携
スグにできる!Microsoft Flow でこんな連携あんな連携
 

Recently uploaded

CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成Hiroshi Tomioka
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 

Recently uploaded (9)

CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 

REST API マスターへの道 - Office 365 パワーユーザー向け

  • 1. Office 365 パワーユーザー向け REST API マスターへの道 Road to the REST API NINJA 太田 浩史 Office Apps and Services – Microsoft MVP Office 365 パワーユーザー向け REST API マスターへの道 p. 1
  • 2. 自己紹介 太田 浩史 (おおた ひろふみ) • 2008 年ごろから、SharePoint を中心に活動しています。 • 自社やお客様の Office 365 活用のご支援もしています。 • ちょっとした工夫や役立ちそうな小ネタが好きです。 Office 365 パワーユーザー向け REST API マスターへの道 p. 2 Microsoft MVP 2013 - 2014 SharePoint Server 2015 - 2018 Office Servers and Services 2018 – 2019 Office Apps & Services www.slideshare.net/hirofumi_ota idea.tostring.jp ブログとか資料とかソーシャルとか twitter.com/hrfmjp www.facebook.com/idea.tostring.jp
  • 3. ああ… Office 365 パワーユーザー向け REST API マスターへの道 p. 3 Microsoft Flow とか PowerApps とか 楽しそうだけど REST API とか JSON とか言うじゃない?
  • 4. ああ… Office 365 パワーユーザー向け REST API マスターへの道 p. 4 そんなん知らねーよ! ではなく 覚えましょう
  • 5. 目的とゴール Office 365 パワーユーザー向け REST API マスターへの道 p. 5 目的 • Microsoft Flow / PowerApps / Power BI と「REST API」という 聞きなれない用語が出てくるようになった • 奇妙な JSON も知っておく必要もありそうだ • よし、ちょっと勉強してみよう ゴール • API リファレンスを読んで REST API を使えるようになる • いろんなところで出てくる JSON を読み書きできるようになる • Microsoft Flow などから REST API を使えるようになる • ドヤ顔しながら他の人に教えてあげられるようになる
  • 6. 諸注意 Office 365 パワーユーザー向け REST API マスターへの道 p. 6 正しく理解することを目指していません “使える” までを最短で解説します。
  • 7. REST API とは? Office 365 パワーユーザー向け REST API マスターへの道 p. 7 • クラウド・サービスや Web システムを HTTP で操作する仕組み • HTTP はこのご時世いろんなアプリから呼べるし、Web サーバーな ら当たり前に使えるんだから便利だよねー。という感じ。 https://idea.tostring.jp 奇跡の一致
  • 8. HTTP とは? Office 365 パワーユーザー向け REST API マスターへの道 p. 8 • ユーザーからの要求(リクエスト)に対してサーバーが何らかの 応答(レスポンス)をする決まり事 アレを ちょうだい ンモー 要求 応答
  • 9. 親しき中にも礼儀あり Office 365 パワーユーザー向け REST API マスターへの道 p. 9 • お願いをするときはちゃんとルールを守りましょう 方法 (メソッド) お願いする相手 (エンドポイント) 欲しいもの (リソース) https://idea.tostring.jp/image.pngGET 翻訳すると… 「idea.tostring.jp」さん、僕は「image.png」を「GET」したいです。
  • 10. Office 365 パワーユーザー向け REST API マスターへの道 p. 10 は? 💢
  • 11. サーバーさんを怒らせないために Office 365 パワーユーザー向け REST API マスターへの道 p. 11 • しっかりと “ルール” を覚えておきましょう メソッド リクエストヘッダー リクエストボディー 宛先 リソース https://idea.tostring.jp/image.png GET User-agent: Mozilla/5.0 Accept: */* いろいろ
  • 12. メソッド Office 365 パワーユーザー向け REST API マスターへの道 p. 12 • メソッドは次のあたりを知っておけば良いです。 メソッド 意味 GET サーバー上のデータやファイルが欲しい POST サーバーにデータやファイルを送りたい PUT サーバーのデータやファイルを置き換えたい DELETE サーバーのデータやファイルを削除したい
  • 13. リクエストヘッダー Office 365 パワーユーザー向け REST API マスターへの道 p. 13 • リクエストヘッダーは次のあたりを知っておけば良いです。 ヘッダー 意味 User-Agent こっちのブラウザの種類など Accept どんな種類のデータが欲しいか Authorization 認可を受けるための情報とか Content-Type こっちからデータを送る場合のデータの種類
  • 14. 覚える必要はありません Office 365 パワーユーザー向け REST API マスターへの道 p. 14 • まず確実にリファレンスに書いてありマス。 • kintone API のリファレンスを見てみます(わかりやすい) https://developer.cybozu.io/hc/ja/categories/200147600-kintone-API – Kintone REST API の共通仕様 – レコードの取得 – レコードの登録 – レコードの更新 – レコードの削除
  • 15. kintone REST API の共通仕様 Office 365 パワーユーザー向け REST API マスターへの道 p. 15 • どんなリクエストヘッダーが必要か – 認証まわり – 要求に応じて変わるあたり
  • 16. レコードの登録 Office 365 パワーユーザー向け REST API マスターへの道 p. 16 • どんな要求をする必要があるか – メソッド – エンドポイント/リソース – リクエスト ボディ ほらでたよ… JSON
  • 17. Let’s Practice Office 365 パワーユーザー向け REST API マスターへの道 p. 17 • 興味のあるサービスの REST API リファレンスを探してみよう • REST API リファレンスから次の項目を読み取ってみよう – メソッド – エンドポイント – リソース – リクエスト ヘッダー – リクエスト ボディ
  • 18. JSON Office 365 パワーユーザー向け REST API マスターへの道 p. 18 • プログラムのコードのようにも見えますが、なにかしらの特別な ものすごい処理を実行するものではありません • データやその構造を表しているものです • CSV や XML と役割は同じです • ルールさえ覚えておけば簡単に読み書きできます
  • 19. JSON – 基本形 Office 365 パワーユーザー向け REST API マスターへの道 p. 19 { “firstName” : “Hirofumi”, “lastName” : ”Ota”, “sex” : “Male” } データの まとまり 項目名 値 項目の区切り ※最後はカンマなし
  • 20. JSON – 入れ子(ネスト) Office 365 パワーユーザー向け REST API マスターへの道 p. 20 { “name” : { “firstName” : “Hirofumi”, “lastName” : ”Ota”, “displayName” : “Hirofumi Ota” }, “sex” : “Male” } データの まとまり name を構成する 項目と値
  • 21. JSON – 配列(複数のデータ) Office 365 パワーユーザー向け REST API マスターへの道 p. 21 { “persons” : [ { “firstName” : “Hirofumi”, “lastName” : ”Ota”, “sex” : “Male” }, { “firstName” : “Taro”, “lastName” : ”Yamada”, “sex” : “Male” } ] } 配列のしるし かっこの形が違う ひとつめのデータ ふたつめのデータ
  • 22. データの型 Office 365 パワーユーザー向け REST API マスターへの道 p. 22 データの型(種類) JSON での表し方 文字列 “name” : “Hirofumi” 数字 “age” : 18 True or False (Boolean) “Cool” : true
  • 23. 実際に読んでみましょう Office 365 パワーユーザー向け REST API マスターへの道 p. 23 • JSON のサンプルが記述されてあるリファレンスを探しましょう • livedoor お天気 Web サービス仕様を見てみます http://weather.livedoor.com/weather_hacks/webservice • データの項目は何か? • データの値は何か? • 入れ子の項目は何か? • 配列の項目は何か? • 文字列型の項目、数字型の項目は何か?
  • 24. Let’s Practice Office 365 パワーユーザー向け REST API マスターへの道 p. 24 • 興味のあるサービスの REST API リファレンスを探してみよう • サンプルの JSON があったら次の項目を読み取ってみよう – データの項目 – データの値 – 入れ子の項目 – 配列の項目 – 文字列型の項目、数字型の項目
  • 25. Microsoft Flow + REST API + JSON Office 365 パワーユーザー向け REST API マスターへの道 p. 25 • ボタンを押したら livedoor お天気 Web サービスから東京の天気を 取得して通知を受け取る なにを設定するのか? ヒント 東京の ID は 130010 まずは REST API を呼ぶところまで…
  • 26. ヒント Office 365 パワーユーザー向け REST API マスターへの道 p. 26 方法は GET
  • 27. ヒント Office 365 パワーユーザー向け REST API マスターへの道 p. 27 URI は http://weather.livedoor.com/forecast/ webservice/json/v1?city=130010
  • 28. ヒント Office 365 パワーユーザー向け REST API マスターへの道 p. 28 ヘッダーは なし!
  • 29. ヒント Office 365 パワーユーザー向け REST API マスターへの道 p. 29 本文は なし!
  • 30. 実行結果 Office 365 パワーユーザー向け REST API マスターへの道 p. 30 • どんな結果が返ってきたか見てみよう – さっき読み取った JSON と比べてみよう – 今日の天気は何かな? – 今日の最高気温は何度かな? – 明日の天気は何かな? – 明日の最高気温は何度かな?
  • 31. Microsoft Flow の JSON の解析アクション Office 365 パワーユーザー向け REST API マスターへの道 p. 31 • REST API から返ってきた値を「サンプルのペイロードを使用して スキーマを生成する」機能を利用してスキーマに変換 便利だけど上手く解析できない場合もある Null が返ってくる時など(今回のパターン)
  • 32. Microsoft Flow の Notifications アクション Office 365 パワーユーザー向け REST API マスターへの道 p. 32 • 解析された JSON の結果を Notifications アクションに渡す
  • 33. Microsoft Flow + JSON Office 365 パワーユーザー向け REST API マスターへの道 p. 33 • 式で JSON の値にアクセスする • JSON を読めるようになったあなたなら出来る actionBody('HTTP').forecasts[0].temperature.max.celsius HTTP という名前のアクションから 出力された本文(つまり JSON) forecasts という配列の 一番最初のデータ 0 から始まるのはルール データ構造に従って . で繋いでいくだけ 今日の最高気温(摂氏)
  • 34. Re: Microsoft Flow の Notifications アクション Office 365 パワーユーザー向け REST API マスターへの道 p. 34 • 式を使って取り出した値を Notifications アクションに渡す
  • 35. Let’s Practice Office 365 パワーユーザー向け REST API マスターへの道 p. 35 • 他のデータを使って通知を受けてみよう • 次のような項目を組合わせて好きな通知を作成しよう – 今日の天気 – 明日の天気 – 明日の気温 – お天気概況文
  • 36. Office 365 パワーユーザー向け REST API マスターへの道 終製作・著作 @hrfmjp idea.tostring.jp Fin.