SlideShare a Scribd company logo
Web API: The Good Parts 落穂ひろい
水野貴明
@mizuno_takaaki
本日のお話
• APIリクエストの回数を減らす
• 非同期API
• SSKDs向けAPIとAPIバレ
• クライアントサイドとサーバサイドの役割分担
まずはじめに一言
まずはじめに一言
誤字脱字が多くて大変申し訳ありません
なぜ表紙は蛇なのか
Python関係のホント間違える人多数
息子が有毒性物を調べるのにハマっており、有
毒性物をリクエストしたらこうなった
本書を書くにあたって
• コードを載せない
– コードを載せると分厚くなるし、特定の言語に寄って
しまう
– コードを載せるとAPIそのものの設計とは違うところに
目が言ってしまう危険性がある
• 言葉の細かい定義よりも使いやすさを
– RESTとはなにか、など
• 決定的な選択肢がない場合でも、自分なりの意
見を述べる
– The Good Partsシリーズを名乗る上での挟持
本書で一番お伝えしたいこと
使いやすいAPIを
設計しよう
使いやすいとは
• 意味がわかりやすい
• 一貫性がある
• 標準(デファクト・スタンダード含む)にそって
いる(ので類推がきく)
• クライアントが処理しやすい
• テストがしやすい
• ドキュメントがわかりやすい
使いやすいとは
• RESUfulであることではない
• 自由度が高いことではない
APIリクエストの回数を減らす
APIはDBのインターフェイスではない
• users、items、photos、players … それぞれの
データを別々のエンドポイントに取得しに行く
のは大変
• モバイル・アプリ向けAPIは「1スクリーン、1
APIコール、1 セーブ、1 APIコール」
– http://wazanova.jp/items/1283
• クライアントが使いやすい、コール数が少なく
てすむデータ形式にすべき
チャンクでのAPI呼び出し
• 複数の処理をまとめて1回で呼び出す
• 結果もまとめて1回で返る
クライアント サーバ
リクエス
トC
リクエス
トB
リクエス
トA
レスポ
ンスC
レスポ
ンスB
レスポ
ンスA
複数のIDを一度に取得
• https://api.example.com/v1/users/100,101
• https://api.example.com/v1/users?id=100,101
• https://api.example.com/v1/users?id[]=100&i
d[]=101
非同期なAPI
非同期なAPIとは
• リクエスト時に直ぐに結果が返らず、クライア
ントのリクエストした処理が完了するのにはそ
の後しばらく時間がかかる
• Job Queueシステムへのインターフェイス
• コールされてから結果を返すまでの処理が重
いケースに用いられる
– 課金処理
– データ集計処理
非同期APIならではの設計ポイント
• どうやって処理の完了を知り、結果を取得す
るか
• クライアントからのリクエストと処理の結果を
どうやってひもづけるか
Push型
• 例: PayPalのAPI ( Mass Payなど )
• リクエストの際にはパラメータのチェックなど
最低限なもののみを行い、支払いができたか
どうかにかかわらずOKを返す ( OK = 受付完
了 )
• 予めクライアントが登録しておいたURIに
IPN(Instant Payment Notification)なるPOSTリ
クエストが飛んでくる
• そこで初めて成功失敗がわかる
Pull型
• FacebookのAds APIのレポート
• アクセスするとIDが取れる
• そのIDを使って結果取得用のエンドポイント
を叩く
• 処理が完了していたら結果が返る
PushとPull
• Pull型のほうがシンプルで実装が容易
– Pushだとアクセスに失敗した時のリトライ処理を
サーバサイドでも用意しなくてはならない
– Push型だとクライアントサイドのテストがやりづら
い
• PayPalはテストIPN送信ページを用意
– ところがすべてのIPNタイプに対応していない…
APIは隠してもバレる
APIは隠してもバレる
• 自分たちのウェブサイト/アプリのためにAPIを
作りたい
• 一般には公開しない
• でもサービスがメジャーになると、簡単にバレ
て解析される
例.1 Vine
例2. AirBnB
APIは隠してもバレる
• したがって一般公開しないAPI ( いわゆる
SSKDs 向け API) でもネット上に公開している
場合はセキュリティなどの問題はきちんと気
をつける
ちょっと違った事例
Twitter公式クライアントのコンシューマキー
• Twitterの公式クライアント(iPhoneやAndroid
など)のコンシューマーキーを解析して公開し
た人がいた
• このコンシューマーキーでアクセスすると、
Rate Limitが若干ゆるかった
• フリーミアムやユーザーの支払額に寄ってリ
ミットの量を変更している場合はこうしたリス
クもありうることを念頭に置く
WEB APIと SDK
あるいは担当をどこで分けるか問題
Web APIとSDK
あるいは担当をどこで分けるか問題
サーバ クライアントネット
ワーク
Web APIとSDK
あるいは担当をどこで分けるか問題
• 最もよくある形
サーバ クライアントネット
ワーク
開発者A 開発者B
Web APIとSDK
あるいは担当をどこで分けるか問題
• SDK
サーバ クライアントネット
ワーク
開発者A 開発者B
SDK
Web APIとSDK
あるいは担当をどこで分けるか問題
• オーケストレーション層
サーバ クライアントネット
ワーク
開発者A 開発者B
オーケス
トレー
ション層
内部ネットワーク
Web APIとSDK
あるいは担当をどこで分けるか問題
• APIアクセスを最適化する上でAPIのコール回
数を減らすのは重要
• ネットワークを境界にするとコールを減らす最
適化が行われづらい気がする
• Web APIをこう叩いて欲しい、こう叩きたいと
いう思想を一致させるためにはネットワーク
の両側を同じ開発者が担当するのもひとつの
解

More Related Content

What's hot

メタプログラミングって何だろう
メタプログラミングって何だろうメタプログラミングって何だろう
メタプログラミングって何だろうKota Mizushima
 
さくっと理解するSpring bootの仕組み
さくっと理解するSpring bootの仕組みさくっと理解するSpring bootの仕組み
さくっと理解するSpring bootの仕組み
Takeshi Ogawa
 
これからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきことこれからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきこと
土岐 孝平
 
JSON:APIについてざっくり入門
JSON:APIについてざっくり入門JSON:APIについてざっくり入門
JSON:APIについてざっくり入門
iPride Co., Ltd.
 
GraphQLのsubscriptionで出来ること
GraphQLのsubscriptionで出来ることGraphQLのsubscriptionで出来ること
GraphQLのsubscriptionで出来ること
Shingo Fukui
 
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
Yoshitaka Kawashima
 
Springを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイントSpringを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイント
土岐 孝平
 
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
日本マイクロソフト株式会社
 
テストコードの DRY と DAMP
テストコードの DRY と DAMPテストコードの DRY と DAMP
テストコードの DRY と DAMP
Yusuke Kagata
 
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
 
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツオブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ増田 亨
 
入社1年目のプログラミング初心者がSpringを学ぶための手引き
入社1年目のプログラミング初心者がSpringを学ぶための手引き入社1年目のプログラミング初心者がSpringを学ぶための手引き
入社1年目のプログラミング初心者がSpringを学ぶための手引き
土岐 孝平
 
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
Mikiya Okuno
 
Web API(Dynamics 365 )勉強会
Web API(Dynamics 365 )勉強会Web API(Dynamics 365 )勉強会
Web API(Dynamics 365 )勉強会
Kazuya Sugimoto
 
今さら聞けないDiとspring
今さら聞けないDiとspring今さら聞けないDiとspring
今さら聞けないDiとspring
土岐 孝平
 
SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?
SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?
SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?
kwatch
 
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
Y Watanabe
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
 
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。 【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
日本マイクロソフト株式会社
 
ジェネリクスの基礎と クラス設計への応用
ジェネリクスの基礎とクラス設計への応用ジェネリクスの基礎とクラス設計への応用
ジェネリクスの基礎と クラス設計への応用
nagise
 

What's hot (20)

メタプログラミングって何だろう
メタプログラミングって何だろうメタプログラミングって何だろう
メタプログラミングって何だろう
 
さくっと理解するSpring bootの仕組み
さくっと理解するSpring bootの仕組みさくっと理解するSpring bootの仕組み
さくっと理解するSpring bootの仕組み
 
これからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきことこれからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきこと
 
JSON:APIについてざっくり入門
JSON:APIについてざっくり入門JSON:APIについてざっくり入門
JSON:APIについてざっくり入門
 
GraphQLのsubscriptionで出来ること
GraphQLのsubscriptionで出来ることGraphQLのsubscriptionで出来ること
GraphQLのsubscriptionで出来ること
 
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
 
Springを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイントSpringを何となく使ってる人が抑えるべきポイント
Springを何となく使ってる人が抑えるべきポイント
 
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
 
テストコードの DRY と DAMP
テストコードの DRY と DAMPテストコードの DRY と DAMP
テストコードの DRY と DAMP
 
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
 
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツオブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
 
入社1年目のプログラミング初心者がSpringを学ぶための手引き
入社1年目のプログラミング初心者がSpringを学ぶための手引き入社1年目のプログラミング初心者がSpringを学ぶための手引き
入社1年目のプログラミング初心者がSpringを学ぶための手引き
 
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
なぜ、いま リレーショナルモデルなのか(理論から学ぶデータベース実践入門読書会スペシャル)
 
Web API(Dynamics 365 )勉強会
Web API(Dynamics 365 )勉強会Web API(Dynamics 365 )勉強会
Web API(Dynamics 365 )勉強会
 
今さら聞けないDiとspring
今さら聞けないDiとspring今さら聞けないDiとspring
今さら聞けないDiとspring
 
SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?
SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?
SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?
 
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
 
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。 【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
 
ジェネリクスの基礎と クラス設計への応用
ジェネリクスの基礎とクラス設計への応用ジェネリクスの基礎とクラス設計への応用
ジェネリクスの基礎と クラス設計への応用
 

Similar to Web API: The Good Parts 落穂ひろい

RustでWebSocketな自社APIを使う
RustでWebSocketな自社APIを使うRustでWebSocketな自社APIを使う
RustでWebSocketな自社APIを使う
Satoshi Yoshikawa
 
Rubyの会社でPythonistaが三ヶ月生き延びた話
Rubyの会社でPythonistaが三ヶ月生き延びた話Rubyの会社でPythonistaが三ヶ月生き延びた話
Rubyの会社でPythonistaが三ヶ月生き延びた話
Drecom Co., Ltd.
 
Rubyの会社でPythonistaが3ヶ月生き延びた話
Rubyの会社でPythonistaが3ヶ月生き延びた話Rubyの会社でPythonistaが3ヶ月生き延びた話
Rubyの会社でPythonistaが3ヶ月生き延びた話
Tokoroten Nakayama
 
金沢アプリ塾 アプリ・オープンデータとライセンス
金沢アプリ塾 アプリ・オープンデータとライセンス金沢アプリ塾 アプリ・オープンデータとライセンス
金沢アプリ塾 アプリ・オープンデータとライセンス
Masayuki KaToH
 
Yahoo!ニュースにおけるBFFパフォーマンスチューニング事例
Yahoo!ニュースにおけるBFFパフォーマンスチューニング事例Yahoo!ニュースにおけるBFFパフォーマンスチューニング事例
Yahoo!ニュースにおけるBFFパフォーマンスチューニング事例
Yahoo!デベロッパーネットワーク
 
Api meetup LT
Api meetup LTApi meetup LT
Api meetup LT
Daisuke Kasuya
 
マイクロサービスにおけるクエリー言語について
マイクロサービスにおけるクエリー言語についてマイクロサービスにおけるクエリー言語について
マイクロサービスにおけるクエリー言語について
sz yudppp
 
COOKPAD tab 勉強会 2014.04.24
COOKPAD tab 勉強会 2014.04.24COOKPAD tab 勉強会 2014.04.24
COOKPAD tab 勉強会 2014.04.24
akahira
 
トイレ使用中APIへの道
トイレ使用中APIへの道トイレ使用中APIへの道
トイレ使用中APIへの道
Masayuki KaToH
 
RESTful API (JAX-RS) 書くだけで仕様書も 自動で作られていく話 with MicroProfile Open API
RESTful API (JAX-RS) 書くだけで仕様書も自動で作られていく話 with MicroProfile Open APIRESTful API (JAX-RS) 書くだけで仕様書も自動で作られていく話 with MicroProfile Open API
RESTful API (JAX-RS) 書くだけで仕様書も 自動で作られていく話 with MicroProfile Open API
Kohei Saito
 
モバイルOSとWeb標準とそれらへのアプローチ
モバイルOSとWeb標準とそれらへのアプローチモバイルOSとWeb標準とそれらへのアプローチ
モバイルOSとWeb標準とそれらへのアプローチKisato
 
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
Hajime Fujimoto
 
愛せよ、さもなくば捨てよ。
愛せよ、さもなくば捨てよ。愛せよ、さもなくば捨てよ。
愛せよ、さもなくば捨てよ。
Sho Yoshida
 
東京Node学園 今できる通信高速化にトライしてみた
東京Node学園 今できる通信高速化にトライしてみた東京Node学園 今できる通信高速化にトライしてみた
東京Node学園 今できる通信高速化にトライしてみた
Yoshiki Shibukawa
 
エンジニアのための勉強会 #3 『RESTful API』
エンジニアのための勉強会 #3 『RESTful API』エンジニアのための勉強会 #3 『RESTful API』
エンジニアのための勉強会 #3 『RESTful API』
Naoki Yoshitake
 
SORACOM Conference Discovery 2017 ナイトイベント | Discovery ラップアップ
SORACOM Conference Discovery 2017 ナイトイベント | Discovery ラップアップSORACOM Conference Discovery 2017 ナイトイベント | Discovery ラップアップ
SORACOM Conference Discovery 2017 ナイトイベント | Discovery ラップアップ
SORACOM,INC
 
CRDF2011(20110225)
CRDF2011(20110225)CRDF2011(20110225)
CRDF2011(20110225)真 岡本
 
Rustで DDD を実践しながら API サーバーを実装・構築した(つもり)
Rustで DDD を実践しながら API サーバーを実装・構築した(つもり)Rustで DDD を実践しながら API サーバーを実装・構築した(つもり)
Rustで DDD を実践しながら API サーバーを実装・構築した(つもり)
ShogoOkazaki
 
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
Masayuki KaToH
 
剣と魔法のログレスーMmoの継続的な改善と運用
剣と魔法のログレスーMmoの継続的な改善と運用剣と魔法のログレスーMmoの継続的な改善と運用
剣と魔法のログレスーMmoの継続的な改善と運用
Satoshi Yamafuji
 

Similar to Web API: The Good Parts 落穂ひろい (20)

RustでWebSocketな自社APIを使う
RustでWebSocketな自社APIを使うRustでWebSocketな自社APIを使う
RustでWebSocketな自社APIを使う
 
Rubyの会社でPythonistaが三ヶ月生き延びた話
Rubyの会社でPythonistaが三ヶ月生き延びた話Rubyの会社でPythonistaが三ヶ月生き延びた話
Rubyの会社でPythonistaが三ヶ月生き延びた話
 
Rubyの会社でPythonistaが3ヶ月生き延びた話
Rubyの会社でPythonistaが3ヶ月生き延びた話Rubyの会社でPythonistaが3ヶ月生き延びた話
Rubyの会社でPythonistaが3ヶ月生き延びた話
 
金沢アプリ塾 アプリ・オープンデータとライセンス
金沢アプリ塾 アプリ・オープンデータとライセンス金沢アプリ塾 アプリ・オープンデータとライセンス
金沢アプリ塾 アプリ・オープンデータとライセンス
 
Yahoo!ニュースにおけるBFFパフォーマンスチューニング事例
Yahoo!ニュースにおけるBFFパフォーマンスチューニング事例Yahoo!ニュースにおけるBFFパフォーマンスチューニング事例
Yahoo!ニュースにおけるBFFパフォーマンスチューニング事例
 
Api meetup LT
Api meetup LTApi meetup LT
Api meetup LT
 
マイクロサービスにおけるクエリー言語について
マイクロサービスにおけるクエリー言語についてマイクロサービスにおけるクエリー言語について
マイクロサービスにおけるクエリー言語について
 
COOKPAD tab 勉強会 2014.04.24
COOKPAD tab 勉強会 2014.04.24COOKPAD tab 勉強会 2014.04.24
COOKPAD tab 勉強会 2014.04.24
 
トイレ使用中APIへの道
トイレ使用中APIへの道トイレ使用中APIへの道
トイレ使用中APIへの道
 
RESTful API (JAX-RS) 書くだけで仕様書も 自動で作られていく話 with MicroProfile Open API
RESTful API (JAX-RS) 書くだけで仕様書も自動で作られていく話 with MicroProfile Open APIRESTful API (JAX-RS) 書くだけで仕様書も自動で作られていく話 with MicroProfile Open API
RESTful API (JAX-RS) 書くだけで仕様書も 自動で作られていく話 with MicroProfile Open API
 
モバイルOSとWeb標準とそれらへのアプローチ
モバイルOSとWeb標準とそれらへのアプローチモバイルOSとWeb標準とそれらへのアプローチ
モバイルOSとWeb標準とそれらへのアプローチ
 
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
 
愛せよ、さもなくば捨てよ。
愛せよ、さもなくば捨てよ。愛せよ、さもなくば捨てよ。
愛せよ、さもなくば捨てよ。
 
東京Node学園 今できる通信高速化にトライしてみた
東京Node学園 今できる通信高速化にトライしてみた東京Node学園 今できる通信高速化にトライしてみた
東京Node学園 今できる通信高速化にトライしてみた
 
エンジニアのための勉強会 #3 『RESTful API』
エンジニアのための勉強会 #3 『RESTful API』エンジニアのための勉強会 #3 『RESTful API』
エンジニアのための勉強会 #3 『RESTful API』
 
SORACOM Conference Discovery 2017 ナイトイベント | Discovery ラップアップ
SORACOM Conference Discovery 2017 ナイトイベント | Discovery ラップアップSORACOM Conference Discovery 2017 ナイトイベント | Discovery ラップアップ
SORACOM Conference Discovery 2017 ナイトイベント | Discovery ラップアップ
 
CRDF2011(20110225)
CRDF2011(20110225)CRDF2011(20110225)
CRDF2011(20110225)
 
Rustで DDD を実践しながら API サーバーを実装・構築した(つもり)
Rustで DDD を実践しながら API サーバーを実装・構築した(つもり)Rustで DDD を実践しながら API サーバーを実装・構築した(つもり)
Rustで DDD を実践しながら API サーバーを実装・構築した(つもり)
 
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
俺とサーバレスアーキテクチャ Aws cognito + aws api gateway 編
 
剣と魔法のログレスーMmoの継続的な改善と運用
剣と魔法のログレスーMmoの継続的な改善と運用剣と魔法のログレスーMmoの継続的な改善と運用
剣と魔法のログレスーMmoの継続的な改善と運用
 

More from API Meetup

煩雑な本人確認(eKYC)/当人認証を銀行子会社に実施させるAPI!
煩雑な本人確認(eKYC)/当人認証を銀行子会社に実施させるAPI!煩雑な本人確認(eKYC)/当人認証を銀行子会社に実施させるAPI!
煩雑な本人確認(eKYC)/当人認証を銀行子会社に実施させるAPI!
API Meetup
 
次世代バンキングシステムを活用した「みんなのBaaS」
次世代バンキングシステムを活用した「みんなのBaaS」次世代バンキングシステムを活用した「みんなのBaaS」
次世代バンキングシステムを活用した「みんなのBaaS」
API Meetup
 
保険業界DXに明るい兆しを 〜 課題から考察する保険API 〜
保険業界DXに明るい兆しを 〜 課題から考察する保険API 〜保険業界DXに明るい兆しを 〜 課題から考察する保険API 〜
保険業界DXに明るい兆しを 〜 課題から考察する保険API 〜
API Meetup
 
Ai inside api meetup 20200929
Ai inside api meetup 20200929Ai inside api meetup 20200929
Ai inside api meetup 20200929
API Meetup
 
TOEIC960点レベルのニューラル機械翻訳サービス Mirai Translatorとは!?
TOEIC960点レベルのニューラル機械翻訳サービス Mirai Translatorとは!?TOEIC960点レベルのニューラル機械翻訳サービス Mirai Translatorとは!?
TOEIC960点レベルのニューラル機械翻訳サービス Mirai Translatorとは!?
API Meetup
 
〜天気予報 API を活かしてビジネスを成功へ〜 ウェザーテック(WxTech)サービスの紹介
〜天気予報 API を活かしてビジネスを成功へ〜 ウェザーテック(WxTech)サービスの紹介〜天気予報 API を活かしてビジネスを成功へ〜 ウェザーテック(WxTech)サービスの紹介
〜天気予報 API を活かしてビジネスを成功へ〜 ウェザーテック(WxTech)サービスの紹介
API Meetup
 
Google Cloud API を活用して簡単に機能追加する
Google Cloud API を活用して簡単に機能追加するGoogle Cloud API を活用して簡単に機能追加する
Google Cloud API を活用して簡単に機能追加する
API Meetup
 
「駅すぱあとWebサービス」ビジネスの変遷 〜変わるものと変わらないもの〜
「駅すぱあとWebサービス」ビジネスの変遷 〜変わるものと変わらないもの〜「駅すぱあとWebサービス」ビジネスの変遷 〜変わるものと変わらないもの〜
「駅すぱあとWebサービス」ビジネスの変遷 〜変わるものと変わらないもの〜
API Meetup
 
運用型広告におけるAPIの活用について 〜APIとビジネスモデル〜
運用型広告におけるAPIの活用について 〜APIとビジネスモデル〜運用型広告におけるAPIの活用について 〜APIとビジネスモデル〜
運用型広告におけるAPIの活用について 〜APIとビジネスモデル〜
API Meetup
 
AIoTプラットフォーム Web APIサービス
AIoTプラットフォーム Web APIサービスAIoTプラットフォーム Web APIサービス
AIoTプラットフォーム Web APIサービス
API Meetup
 
APIbank(メディア)からみた国産APIの現実と未来にむけて
APIbank(メディア)からみた国産APIの現実と未来にむけてAPIbank(メディア)からみた国産APIの現実と未来にむけて
APIbank(メディア)からみた国産APIの現実と未来にむけて
API Meetup
 
公共インフラはAPI化できるか
公共インフラはAPI化できるか公共インフラはAPI化できるか
公共インフラはAPI化できるか
API Meetup
 
Shopify GraphQL API
Shopify GraphQL APIShopify GraphQL API
Shopify GraphQL API
API Meetup
 
Shopify
ShopifyShopify
Shopify
API Meetup
 
APIを活用したANA版Society5.0への挑戦
APIを活用したANA版Society5.0への挑戦APIを活用したANA版Society5.0への挑戦
APIを活用したANA版Society5.0への挑戦
API Meetup
 
モビリティサービスの未来 〜 APIで目指す世界 〜
モビリティサービスの未来 〜 APIで目指す世界 〜モビリティサービスの未来 〜 APIで目指す世界 〜
モビリティサービスの未来 〜 APIで目指す世界 〜
API Meetup
 
みんなの自動翻訳@ TexTraのご紹介
みんなの自動翻訳@ TexTraのご紹介みんなの自動翻訳@ TexTraのご紹介
みんなの自動翻訳@ TexTraのご紹介
API Meetup
 
NHK Linked Data API 〜つながる番組データを目指して〜
NHK Linked Data API 〜つながる番組データを目指して〜NHK Linked Data API 〜つながる番組データを目指して〜
NHK Linked Data API 〜つながる番組データを目指して〜
API Meetup
 
APIで広がる名刺情報の2次活用 〜事例編〜
APIで広がる名刺情報の2次活用 〜事例編〜APIで広がる名刺情報の2次活用 〜事例編〜
APIで広がる名刺情報の2次活用 〜事例編〜
API Meetup
 
APIで次のFinTechサービスをつくろう! 〜freee Dev Communityのご紹介〜
APIで次のFinTechサービスをつくろう! 〜freee Dev Communityのご紹介〜APIで次のFinTechサービスをつくろう! 〜freee Dev Communityのご紹介〜
APIで次のFinTechサービスをつくろう! 〜freee Dev Communityのご紹介〜
API Meetup
 

More from API Meetup (20)

煩雑な本人確認(eKYC)/当人認証を銀行子会社に実施させるAPI!
煩雑な本人確認(eKYC)/当人認証を銀行子会社に実施させるAPI!煩雑な本人確認(eKYC)/当人認証を銀行子会社に実施させるAPI!
煩雑な本人確認(eKYC)/当人認証を銀行子会社に実施させるAPI!
 
次世代バンキングシステムを活用した「みんなのBaaS」
次世代バンキングシステムを活用した「みんなのBaaS」次世代バンキングシステムを活用した「みんなのBaaS」
次世代バンキングシステムを活用した「みんなのBaaS」
 
保険業界DXに明るい兆しを 〜 課題から考察する保険API 〜
保険業界DXに明るい兆しを 〜 課題から考察する保険API 〜保険業界DXに明るい兆しを 〜 課題から考察する保険API 〜
保険業界DXに明るい兆しを 〜 課題から考察する保険API 〜
 
Ai inside api meetup 20200929
Ai inside api meetup 20200929Ai inside api meetup 20200929
Ai inside api meetup 20200929
 
TOEIC960点レベルのニューラル機械翻訳サービス Mirai Translatorとは!?
TOEIC960点レベルのニューラル機械翻訳サービス Mirai Translatorとは!?TOEIC960点レベルのニューラル機械翻訳サービス Mirai Translatorとは!?
TOEIC960点レベルのニューラル機械翻訳サービス Mirai Translatorとは!?
 
〜天気予報 API を活かしてビジネスを成功へ〜 ウェザーテック(WxTech)サービスの紹介
〜天気予報 API を活かしてビジネスを成功へ〜 ウェザーテック(WxTech)サービスの紹介〜天気予報 API を活かしてビジネスを成功へ〜 ウェザーテック(WxTech)サービスの紹介
〜天気予報 API を活かしてビジネスを成功へ〜 ウェザーテック(WxTech)サービスの紹介
 
Google Cloud API を活用して簡単に機能追加する
Google Cloud API を活用して簡単に機能追加するGoogle Cloud API を活用して簡単に機能追加する
Google Cloud API を活用して簡単に機能追加する
 
「駅すぱあとWebサービス」ビジネスの変遷 〜変わるものと変わらないもの〜
「駅すぱあとWebサービス」ビジネスの変遷 〜変わるものと変わらないもの〜「駅すぱあとWebサービス」ビジネスの変遷 〜変わるものと変わらないもの〜
「駅すぱあとWebサービス」ビジネスの変遷 〜変わるものと変わらないもの〜
 
運用型広告におけるAPIの活用について 〜APIとビジネスモデル〜
運用型広告におけるAPIの活用について 〜APIとビジネスモデル〜運用型広告におけるAPIの活用について 〜APIとビジネスモデル〜
運用型広告におけるAPIの活用について 〜APIとビジネスモデル〜
 
AIoTプラットフォーム Web APIサービス
AIoTプラットフォーム Web APIサービスAIoTプラットフォーム Web APIサービス
AIoTプラットフォーム Web APIサービス
 
APIbank(メディア)からみた国産APIの現実と未来にむけて
APIbank(メディア)からみた国産APIの現実と未来にむけてAPIbank(メディア)からみた国産APIの現実と未来にむけて
APIbank(メディア)からみた国産APIの現実と未来にむけて
 
公共インフラはAPI化できるか
公共インフラはAPI化できるか公共インフラはAPI化できるか
公共インフラはAPI化できるか
 
Shopify GraphQL API
Shopify GraphQL APIShopify GraphQL API
Shopify GraphQL API
 
Shopify
ShopifyShopify
Shopify
 
APIを活用したANA版Society5.0への挑戦
APIを活用したANA版Society5.0への挑戦APIを活用したANA版Society5.0への挑戦
APIを活用したANA版Society5.0への挑戦
 
モビリティサービスの未来 〜 APIで目指す世界 〜
モビリティサービスの未来 〜 APIで目指す世界 〜モビリティサービスの未来 〜 APIで目指す世界 〜
モビリティサービスの未来 〜 APIで目指す世界 〜
 
みんなの自動翻訳@ TexTraのご紹介
みんなの自動翻訳@ TexTraのご紹介みんなの自動翻訳@ TexTraのご紹介
みんなの自動翻訳@ TexTraのご紹介
 
NHK Linked Data API 〜つながる番組データを目指して〜
NHK Linked Data API 〜つながる番組データを目指して〜NHK Linked Data API 〜つながる番組データを目指して〜
NHK Linked Data API 〜つながる番組データを目指して〜
 
APIで広がる名刺情報の2次活用 〜事例編〜
APIで広がる名刺情報の2次活用 〜事例編〜APIで広がる名刺情報の2次活用 〜事例編〜
APIで広がる名刺情報の2次活用 〜事例編〜
 
APIで次のFinTechサービスをつくろう! 〜freee Dev Communityのご紹介〜
APIで次のFinTechサービスをつくろう! 〜freee Dev Communityのご紹介〜APIで次のFinTechサービスをつくろう! 〜freee Dev Communityのご紹介〜
APIで次のFinTechサービスをつくろう! 〜freee Dev Communityのご紹介〜
 

Recently uploaded

【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
harmonylab
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
iPride Co., Ltd.
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
CRI Japan, Inc.
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
Fukuoka Institute of Technology
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
yassun7010
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
atsushi061452
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance
 
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
atsushi061452
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
Sony - Neural Network Libraries
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
NTT DATA Technology & Innovation
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
Matsushita Laboratory
 

Recently uploaded (15)

【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
 
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
 

Web API: The Good Parts 落穂ひろい