Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
【第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
43
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
第1回Japan MCP Business Community(JMBC)開催レポート
sugimomoto
0
49
Aida(あいだ)— 離婚後の子育てを、AIが「あいだ」に立って支える|AI HACK 2026
sugimomoto
0
170
kintone の AI コワーカーを、 Anthropic にエージェントを"ホストさせて"作った話 #devkinmeetup
sugimomoto
0
170
Amazon Bedrock 経由の Claude Cowork を試してみよう・MCP にも繋いでみよう
sugimomoto
0
990
最近話題のMCP って何? HCL Dominoと組み合わせるとどうなるの? CData MCP Serversで連携してみよう
sugimomoto
0
54
社長の無茶振りをAI でさばく! CData Connect AI & Tableau で試みる新しいデータ分析アプローチ
sugimomoto
0
27
社長の無茶振りをAIで捌く! Databricks & AI & MCP・CData Connect AIで試みる新しいデータ分析アプローチ
sugimomoto
0
39
電気自動車 Tesla の公式API をPostman から実行し、車両データを取得・分析してみよう!
sugimomoto
0
34
kintone とRemote MCP Server で実現する次世代BI? “AI Agent”による営業活動の圧倒的効率化
sugimomoto
0
34
Other Decks in Technology
See All in Technology
宣言型部分更新は何を解決しどこへ向かうのか
shuta13
1
450
コンテナ運用におけるネットワーク・コンテナコストの削減方法/How to Reduce Network and Container Costs in Container Operations
masakiokuda
1
150
Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
1
580
Classmethod Company Deck
satoshi7
1
680
その Valkey 使いこなしていますか?
onk
PRO
5
1.5k
Webの常識が通じないHTMLメールのダークモード
teamlab
PRO
0
120
Refining Active Record
shugo
0
150
ストレスなくAIと付き合いたい!こんなときどうしてる?
namiki64
3
490
子育てエンジニアの可処分時間が減っても成長を諦めない戦い方
sudoakiy
6
4.6k
Code for Security プロジェクト紹介 2026年10月
yu23ki14
0
110
会社説明資料
persolserverworks
0
9.8k
1つのリクエストを追って理解する - llm-dのP/D分離
akhino
1
160
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
Optimising Largest Contentful Paint
csswizardry
37
4k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
2
360
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
330
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
280
Making the Leap to Tech Lead
cromwellryan
135
10k
Are puppies a ranking factor?
jonoalderson
2
4.1k
HDC tutorial
michielstock
2
960
エンジニアに許された特別な時間の終わり
watany
109
250k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
820
Producing Creativity
orderedlist
PRO
348
41k
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)も抑えよう!