Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
【第5回jduc】【勉強会】dynamics 365 web apiとの接し方
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kazuya Sugimoto
August 27, 2017
Technology
38
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
【第5回jduc】【勉強会】dynamics 365 web apiとの接し方
Kazuya Sugimoto
August 27, 2017
More Decks by Kazuya Sugimoto
See All by Kazuya Sugimoto
Aida(あいだ)— 離婚後の子育てを、AIが「あいだ」に立って支える|AI HACK 2026
sugimomoto
0
69
kintone の AI コワーカーを、 Anthropic にエージェントを"ホストさせて"作った話 #devkinmeetup
sugimomoto
0
160
Amazon Bedrock 経由の Claude Cowork を試してみよう・MCP にも繋いでみよう
sugimomoto
0
830
最近話題のMCP って何? HCL Dominoと組み合わせるとどうなるの? CData MCP Serversで連携してみよう
sugimomoto
0
40
社長の無茶振りをAI でさばく! CData Connect AI & Tableau で試みる新しいデータ分析アプローチ
sugimomoto
0
23
社長の無茶振りをAIで捌く! Databricks & AI & MCP・CData Connect AIで試みる新しいデータ分析アプローチ
sugimomoto
0
31
電気自動車 Tesla の公式API をPostman から実行し、車両データを取得・分析してみよう!
sugimomoto
0
27
kintone とRemote MCP Server で実現する次世代BI? “AI Agent”による営業活動の圧倒的効率化
sugimomoto
0
28
MCP とは?
sugimomoto
0
33
Other Decks in Technology
See All in Technology
Webアクセシビリティ入門 2026
recruitengineers
PRO
3
670
35分でわかるEffective Platform Engineering
nwiizo
5
470
現場回帰したデータエンジニアが考える AI 時代のキャリア開発 / Career Development in the Age of AI Perspectives from a Hands-on Data Engineer
medley
0
230
Go 1.27 の標準パッケージに uuid が入った!のでいろいろ喋る / go_127_std_go_uuid
convto
2
510
Digitization部 紹介資料
sansan33
PRO
2
7.7k
Goでデータパイプラインを作ろう
sansantech
PRO
1
510
カートの信頼性を担保するWireMockを使ったe2eテスト
ykagano
0
570
Eight Engineering Unit 紹介資料
sansan33
PRO
3
8.2k
モノリス Rails でも日中に rails db:migrate を走らせたい! / Daytime rails db:migrate on Monolithic Rails!
euglena1215
4
640
My broken English still works: speaking at global OSS events
naruoga
0
120
[ChatGPT Work LT]事務作業が苦手な人のための バックオフィスの「半」自動化
chimaki_iot
0
330
AI開発に用いられるHPC技術について
gpuunite_official
0
130
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
Tell your own story through comics
letsgokoyo
1
1k
Six Lessons from altMBA
skipperchong
29
4.4k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
500
What does AI have to do with Human Rights?
axbom
PRO
1
2.3k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
67k
Mind Mapping
helmedeiros
PRO
1
320
Leo the Paperboy
mayatellez
8
2.2k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
470
Fireside Chat
paigeccino
42
4k
Docker and Python
trallard
47
4.1k
Transcript
第5回 JDUC勉強会 Dynamics 365 Web APIとの接し方 @sugimomoto
最近あったWeb APIに関する質問 認証ってOAuthでいいの? オンプレなんだけど? なんかRESTとSOAPとWeb API ってあるんだけど? Web APIって、なんでもデータが取 得できるんだよね?
しかも、最近のDynamics 365 は Web APIの変革期
今日のゴール Dynamics 365 とデータ連携したいよー それならWeb APIあるじゃん!? でも、Web APIの種類はどれを使えばいいの? でも、Web APIの認証ってどうすればいいの?
でも、Web APIでどんなことができるの?
Q1. Web APIの種類はどれを使えばいいの?
Dynamics 365 Web APIの種類 REST API SOAP API Web API
Microsoft 呼称 組織データサービス REST エンドポイント 組織サービス SOAP エンドポイント Web API OData v4 REST プロトコル OData v2 SOAP OData v4 状況 既に廃止済み Dynamics CRM 2015まで Ver 9.Xで廃止予定 http://bit.ly/2vR33C1 ★メインストリーム Dynamics CRM 2015から リファレンス https://msdn.microsoft.com /library/gg334279(v=crm.7) .aspx https://msdn.microsoft.com /ja- jp/library/mt608074.aspx https://msdn.microsoft.com /ja- jp/library/mt593051.aspx
Dynamics 365 Web APIの種類 REST API SOAP API Web API
Microsoft 呼称 組織データサービス REST エンドポイント 組織サービス SOAP エンドポイント Web API OData v4 REST プロトコル OData v2 SOAP OData v4 状況 既に廃止済み Dynamics CRM 2015まで Ver 9.Xで廃止予定 http://bit.ly/2vR33C1 ★メインストリーム Dynamics CRM 2015から リファレンス https://msdn.microsoft.com /library/gg334279(v=crm.7) .aspx https://msdn.microsoft.com /ja- jp/library/mt608074.aspx https://msdn.microsoft.com /ja- jp/library/mt593051.aspx これを使え!
Q2. Web APIの認証ってどうすればいいの?
Web APIの認証はどうなってるの? HTTP/S NTLM認証 認証不要 Dynamics 365 Online Dynamics 365
On-Premiss Dynamics 365 Internal IFD構成 なし IFD構成 あり OAuth 2.0 認証 Implicit Grant Resource Owner Password Credential Grant Client Credential Grant 認証方式 プラット フォーム アプローチ Dynamics 365 OnlineであればOAuth 2.0による認証 Implicit GrantもしくはClient Credential Grantを利用しよう!
Client Credential Grant データ連携におけるバッチ処理やインターフェースプログラム等 アクセスするユーザーのコンテキストに重要性が無い場合オススメ Client IdとClient Secretの発行およびアプリケーション登録で可能になる認証アプローチ (別名Server to
Server 認証:S2S認証) POST https://login.microsoftonline.com/{tenantId}/oauth2/token Media/type application/x-www-form-urlencoded Grant_type=client_credentials&client_id={clientId}&client_secret={clientSecret}&resour ce={https://***.crm7.dynamics.com/} 参考:【Dynamics 365】【8.2新機能】サーバ間(S2S)認証を試してみた http://bit.ly/2wfyKDf
Dynamics 365 Web APIの 認証を使用するための注意点 ・必ず一意のユーザーを指定 リソースに誰がアクセスしたのか? という情報が必ず必要 (だから最近までClient Credentialが使えなかったと思われる)
・連携プログラムの管理情報に注意 Password Credentialの場合はID・PWの管理が必要(Office365のパスワード変更の影響あり) Client Credential GrantはClient Id / Client Secretを管理(Client Secretは期限付き) ・オンプレミスの場合、認証アプローチはケースバイケース イントラネットワークの疎通可能なところにアプリケーションがいる場合は「NTLM認証」 イントラネットワーク外の場合は、ADFS/OAuth認証もしくは、VPN等で繋いでNTLM認証か
Q3. Web APIでどんなことができるの?
Dynamics 365 Web APIでできること ・レコードの作成(Create) ・レコードの更新(Update) ・レコードの取得(Retrieve) ・レコードの削除(Delete) ・レコードの作成 or
更新(Upsert) Basic Operation ・関数の実行(Function) ・アクションの実行(Action) Business Logic Operation ・バッチ操作(HTTP/Multipart) ・ユーザーの偽装 ・条件付き演算(Optimistic Concurrency) Utility ・メタデータの取得 ・エンティティの作成・更新・削除 ・フィールドの作成・更新・削除 Metadata Operation 1 2 3 4
ちなみに Dynamics 365 のWeb APIは ポイントさえ抑えれば怖くない!
参照も編集もREST Fulな形式でサポート レコードの取得 レコードの作成 レコードの更新 削除 GET https://***/api/data/v8.2/ accounts Authorization:
Bearer *token* Accept: application/json OData-MaxVersion: 4.0 OData-Version: 4.0) POST https://***/api/data/v8.2/ Accounts Authorization: Bearer *token* OData-Version: 4.0 OData-MaxVersion: 4.0 Content-Type: application/json { name:’Create Account', } PUTCH https://***/api/data/v8.2/ Accounts(guid) Authorization: Bearer *token* Odata-Version: 4.0 Odata-MaxVersion: 4.0 Content-Type: application/json { name:’Update Account', } DELETE https://***/api/data/v8.2/ Accounts(guid) Authorization: Bearer *token* OData-Version: 4.0 OData-MaxVersion: 4.0 REST Fulな形式でデータの操作をサポート わかりやすい
HTTP Request/Response デモ
まとめ でも、Web APIの種類はどれを使えばいいの? →最新のWeb API Odata v4を使おう! でも、Web APIの認証ってどうすればいいの? →OnlineでバッチとかならOAuth2.0認証を使おう!
S2S認証(Client Credential)がオススメ! でも、Web APIでどんなことができるの? →Odataプロトコルに則って、データのCRUD操作が簡単にできるよ! ただし、ビジネスロジック(Action・Function)も抑えよう!