Skip to content

Instantly share code, notes, and snippets.

@sugimomoto
Last active June 21, 2019 08:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save sugimomoto/930d33ee469e7e8afdb1925fd854261a to your computer and use it in GitHub Desktop.
Save sugimomoto/930d33ee469e7e8afdb1925fd854261a to your computer and use it in GitHub Desktop.
de:code 2019 Session Information MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しい API エコシステム活用アプローチ

Session Information

セッションID:MW04

セッションタイトル:誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しい API エコシステム活用アプローチ

日時:DAY2 ( 5 月 30 日 ) 16:10 - 17:00

部屋:Room G

URL:https://www.microsoft.com/ja-jp/events/decode/2019session/detail.aspx?sid=MW04&kw=API

皆さん、Web API 使っていますか? 世界の API 管理市場は 2022 年までに現在の 2 倍 (3,000 億円) の市場規模になると予想されていて、今まで以上に API を使ったマッシュ アップは重要性を増すようです。

しかしながら、一口に API と言っても、GraphQL や OpenAPI (Swagger) といった各 API スタイルが成熟してきて、単純に REST という切り口だけでは収まらなくなってきました。また、その API のユースケースも、単純に開発者がマッシュ アップするだけでなく、Power BI や Azure Logic Apps といったサービスからエンド ユーザーが使ったりと、多様化が進んでいます。

そんな多様化され、今後ますます重要性が増す Web API は何を意識して開発するべきなのか? 昨今のメジャーな API スタイル (REST・GraphQL・OpenAPI・OData) と認証・認可 (OAuth) の仕組みに焦点を当てながら、Azure デベロッパーにとってもエンド ユーザーにとっても嬉しい「API エコシステムのあり方」についてお伝えします。

Profile

CData Software Japan 合同会社(https://www.cdata.com/jp/)

Lead Engineer 杉本 和也

Microsoft 関連テクノロジーのSIerを経て、現在製品開発・サポートを担当するリードエンジニアとしてCData Software Japanで活動中。

新しい Web API がリリースされるたびに検証してみる Web API Holic

最近の個人的トピックはAPIエコシステムのあり方とポストREST API の可能性がある新しいAPIプロトコルのウォッチ。面白いWeb APIがあったらTwitterで教えてください。

Microsoft MVP for Business Solutions 2017-2019

Facebook:https://www.facebook.com/sugimomoto

Twitter:https://twitter.com/sugimomoto

Blog:http://kageura.hatenadiary.jp/

Linkedin:https://www.linkedin.com/in/sugimotok/

Instagram:http://instagram.com/sugimomoto/

GitHub:https://github.com/sugimomoto

Qiita:https://qiita.com/sugimomoto

Session Slide

https://www.slideshare.net/sugimomoto/decode19-mw04-api-azure-api

Demo Movie (GIF) Azure API Management

開発者ポータル API Document:https://decodedemoswagger.blob.core.windows.net/decode19/APIPortal.gif

開発者ポータル Analytics:https://decodedemoswagger.blob.core.windows.net/decode19/APIAnalytics.gif

認証 SubscriptionKdy:https://decodedemoswagger.blob.core.windows.net/decode19/SubscriptionKey.gif

認証 OpenID Connect:https://decodedemoswagger.blob.core.windows.net/decode19/OpenIDConnect.gif

SOAP REST 変換:https://decodedemoswagger.blob.core.windows.net/decode19/SOAPExchange.gif

Demo Movie (GIF) Web API Standard

Swagger C# SDK:https://decodedemoswagger.blob.core.windows.net/decode19/SwaggerC.gif

Swagger LogicApps Normal Request:https://decodedemoswagger.blob.core.windows.net/decode19/NormalHTTPRequest.gif

Swagger LogicApps Swagger Spec:https://decodedemoswagger.blob.core.windows.net/decode19/SwaggerHTTPRequest.gif

OData Power BI:https://decodedemoswagger.blob.core.windows.net/decode19/PowerBIOData.gif

OData Azure Datafactory:https://decodedemoswagger.blob.core.windows.net/decode19/AzureDataFactory.gif

OData Dynamics 365 仮想エンティティ:https://decodedemoswagger.blob.core.windows.net/decode19/ODataEntitygif.gif

API Server Demo 環境

Base Document:https://decodeapiserverdemo.azurewebsites.net/api.rst

Swagger Spec Endpoint:https://decodeapiserverdemo.azurewebsites.net/api.rsc/@1q0E5n7v8V1k4r1U5g0e/$swagger

OpenAPI Spec Endpoint:https://decodeapiserverdemo.azurewebsites.net/api.rsc/@1q0E5n7v8V1k4r1U5g0e/$oas

Swagger Hub Site:https://app.swaggerhub.com/apis/sugimomoto/CDataDecodeSampleAPI/1.0.0

AuthToken:1q0E5n7v8V1k4r1U5g0e(Header:x-cdata-authtoken)

HTTP Request Sample:

GET /api.rsc/Customer/ HTTP/1.1
Host: decodeapiserverdemo.azurewebsites.net
x-cdata-authtoken: 1q0E5n7v8V1k4r1U5g0e

使用した製品 CData API Server Trial:https://www.cdata.com/jp/apiserver/

CData API Server 構築方法:

Azure SQL DatabaseをCData API ServerでWeb API(OData)アクセスできるように構成してみる その1 Web Apps構成編

http://kageura.hatenadiary.jp/entry/2017/11/27/Azure_SQL_Database%E3%82%92CData_API_Server%E3%81%A7Web_API%EF%BC%88OData%EF%BC%89%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%A7%E3%81%8D%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%E6%A7%8B%E6%88%90%E3%81%97

Azure SQL DatabaseをCData API ServerでWeb API(OData)アクセスできるように構成してみる その2 Azure SQL接続編

http://kageura.hatenadiary.jp/entry/2017/11/29/Azure_SQL_Database%E3%82%92CData_API_Server%E3%81%A7Web_API%EF%BC%88OData%EF%BC%89%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%A7%E3%81%8D%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%E6%A7%8B%E6%88%90%E3%81%97

Azure API Management デモ環境

開発者ポータル:https://decodedemoapi.portal.azure-api.net/

User:demo@mail.jp

Password:demouser

SubscriptionKey:13d10f34239844eab182dfff4f25e58a

Swaggerって何?

Java クライント開発における Web API の実装アプローチ:その3 Swagger(OpenAPI)Code Generate 編

http://kageura.hatenadiary.jp/entry/2019/01/23/Java_%E3%82%AF%E3%83%A9%E3%82%A4%E3%83%B3%E3%83%88%E9%96%8B%E7%99%BA%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B_Web_API_%E3%81%AE%E5%AE%9F%E8%A3%85%E3%82%A2%E3%83%97%E3%83%AD%E3%83%BC%E3%83%81%EF%BC%9A

Use Case Azure LogicApps / Swagger

LogicAppsでHTTPコネクタを使う時、SwaggerSpec(OpenAPI)を挟むと楽ができるよというお話

http://kageura.hatenadiary.jp/entry/2019/05/28/LogicApps%E3%81%A7HTTP%E3%82%B3%E3%83%8D%E3%82%AF%E3%82%BF%E3%82%92%E4%BD%BF%E3%81%86%E6%99%82%E3%80%81SwaggerSpec%EF%BC%88OpenAPI%EF%BC%89%E3%82%92%E6%8C%9F%E3%82%80%E3%81%A8%E6%A5%BD%E3%81%8C%E3%81%A7

OData って何?

Java クライント開発における Web API の実装アプローチ:その4 OData 編

http://kageura.hatenadiary.jp/entry/2019/01/23/Java_%E3%82%AF%E3%83%A9%E3%82%A4%E3%83%B3%E3%83%88%E9%96%8B%E7%99%BA%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B_Web_API_%E3%81%AE%E5%AE%9F%E8%A3%85%E3%82%A2%E3%83%97%E3%83%AD%E3%83%BC%E3%83%81%EF%BC%9A_2

Dynamics 365 9.0 新機能 仮想エンティティの使い方 その1 概要

http://kageura.hatenadiary.jp/entry/2017/11/17/Dynamics_365_9.0_%E6%96%B0%E6%A9%9F%E8%83%BD_%E4%BB%AE%E6%83%B3%E3%82%A8%E3%83%B3%E3%83%86%E3%82%A3%E3%83%86%E3%82%A3%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9_%E3%81%9D%E3%81%AE1_%E6%A6%82%E8%A6%81

Dynamics 365 v9.0 新機能 仮想エンティティにCData API Serverを経由して、Azure SQL Databaseのテーブルを表示してみる

http://kageura.hatenadiary.jp/entry/2017/12/10/Dynamics_365_v9.0_%E6%96%B0%E6%A9%9F%E8%83%BD_%E4%BB%AE%E6%83%B3%E3%82%A8%E3%83%B3%E3%83%86%E3%82%A3%E3%83%86%E3%82%A3%E3%81%ABCData_API_Server%E3%82%92%E7%B5%8C%E7%94%B1%E3%81%97%E3%81%A6%E3%80%81Azure

Official Reference

Swagger(OpenAPI):https://www.openapis.org/

OData:https://www.odata.org/

GraphQL:https://graphql.org/

Azure API Management:https://azure.microsoft.com/ja-jp/services/api-management/

OpenAPI Initiative:https://www.openapis.org/

Blog Reference

なぜポストREST APIが求められるのか? REST APIがカバーできない2つの要因とその対策

http://kageura.hatenadiary.jp/entry/2018/01/11/%E3%81%AA%E3%81%9C%E3%83%9D%E3%82%B9%E3%83%88REST_API%E3%81%8C%E6%B1%82%E3%82%81%E3%82%89%E3%82%8C%E3%82%8B%E3%81%AE%E3%81%8B%EF%BC%9F_REST_API%E3%81%8C%E3%82%AB%E3%83%90%E3%83%BC%E3%81%A7%E3%81%8D

なぜそのAPIは使われないのか? クラウドサービスのAPIエコシステムを可視化する API Eco MAP プロジェクト

http://kageura.hatenadiary.jp/entry/2018/04/16/%E3%81%AA%E3%81%9C%E3%81%9D%E3%81%AEAPI%E3%81%AF%E4%BD%BF%E3%82%8F%E3%82%8C%E3%81%AA%E3%81%84%E3%81%AE%E3%81%8B%EF%BC%9F_%E3%82%AF%E3%83%A9%E3%82%A6%E3%83%89%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E3%81%AE

APIを利用したエコシステムの構築を阻む壁は何か?

https://codezine.jp/article/detail/10938

Azure API Management 俺的マニュアル

https://www.slideshare.net/uesaka/azure-api-management-124244263

戦う情シス!全社 API で社内アプリ開発を加速させよう

https://www.slideshare.net/ssusercd7b97/api-125571277

ochacafe#6 人にもマシンにもやさしいAPIのエコシステム

https://www.slideshare.net/oracle4engineer/ochacafe6-api

PaaSのみでオープンAPI基盤をスピード開発、セブン銀行がAzure導入

https://ascii.jp/elem/000/001/607/1607230/index-2.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment