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
API、HTTP、Webhookの初学者向け完全ガイド
Search
MIKIO KUBO
July 25, 2025
Education
0
6
API、HTTP、Webhookの初学者向け完全ガイド
デジタル世界の「通訳」と「連絡係」
## API、HTTP、Webhookの初学者向け完全ガイド
MIKIO KUBO
July 25, 2025
Tweet
Share
More Decks by MIKIO KUBO
See All by MIKIO KUBO
Connecting Theory and Practice V
mickey_kubo
0
9
データベースの世界 SQL vs NoSQL
mickey_kubo
0
97
PyMongo入門
mickey_kubo
0
22
Pythonで学ぶSQL入門
mickey_kubo
0
58
AutoGluon 時系列予測モデルの解説
mickey_kubo
1
46
AutoGluon Tabularモデル入門
mickey_kubo
1
22
AutoGluon: State-of-the-Art Automated Machine Learning
mickey_kubo
0
61
AutoGluon: State-of-the-Art Automated Machine Learning (English)
mickey_kubo
1
22
Python型ヒント完全ガイド 初心者でも分かる、現代的で実践的な使い方
mickey_kubo
1
250
Other Decks in Education
See All in Education
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
signer
PRO
1
2.1k
サンキッズゾーン 春日井駅前 ご案内
sanyohomes
0
540
2025年度春学期 統計学 第4回 データを「分布」で見る (2025. 5. 1)
akiraasano
PRO
0
150
予習動画
takenawa
0
9.9k
技術勉強会 〜 OAuth & OIDC 入門編 / 20250528 OAuth and OIDC
oidfj
5
1.4k
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019538FNR)
signer
PRO
1
2k
AIの時代こそ、考える知的学習術
yum3
2
180
仮説の取扱説明書/User_Guide_to_a_Hypothesis
florets1
4
330
検索/ディスプレイ/SNS
takenawa
0
9.3k
AWSと共に英語を学ぼう
amarelo_n24
0
110
日本の教育の未来 を考える テクノロジーは教育をどのように変えるのか
kzkmaeda
1
220
『会社を知ってもらう』から『安心して活躍してもらう』までの プロセスとフロー
sasakendayo
0
240
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
524
40k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Docker and Python
trallard
45
3.5k
Building Applications with DynamoDB
mza
95
6.5k
The Invisible Side of Design
smashingmag
301
51k
It's Worth the Effort
3n
185
28k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Transcript
デジタル世界の「通訳」と「連絡係」 API 、HTTP 、Webhook の初学者向け完全ガイド 1
序章:つながりあうソフトウェアの世界 私たちが使うアプリやWebサイトは、その裏側で多くのソフトウェアが「会話」し、連携すること で便利な機能を実現しています。 天気予報アプリ → 気象サービスのデータと連携 Web サイトへのログイン → GoogleやFacebookの認証サービスと連携
現代のデジタルサービスは、専門的なサービスが結びついた エコシステムなのです。 2
このガイドで学ぶ3 つの主役 このソフトウェア同士の連携を可能にする、3つの重要な技術を解説します。 API: ソフトウェア間の**「万能な窓口」**。レストランの「ウェイター」役。 HTTP: APIでの会話で使われる**「言語」**や「手紙の作法」。 Webhook: 情報発生を自動で知らせる**「プッシュ通知」**や「配達サービス」。 3
第1 部 API ― ソフトウェアたちの「万能な窓口」 4
1.1. API とは何か? Application Programming Interfaceの略です。 Application: 天気予報アプリやSNSなど Programming: コンピュータへの指示
Interface: 2つのシステムが情報をやり取りする「接点」 簡単に言うと、**「プログラム同士が会話するための共通言語」 や「ソフトウェア同士をつなぐ窓 口」**です。 5
API の基本概念:レストランのウェイター APIの役割は、レストランのウェイターに例えると非常に分かりやすいです。 あなた(利用者): レストランの「お客さん」 厨房(機能・データ提供側): レストランの「キッチン」 ウェイター(API ): お客さんと厨房をつなぐ**「仲介役」**
API(ウェイター)のおかげで、私たちは厨房の複雑な仕組みを知らなくても、安全・効率的に目的 の料理(データや機能)を手に入れることができます。 6
1.2. API がもたらす4 つの恩恵 1. 開発の効率化とコスト削減 決済機能などをゼロから作る必要がなくなります。 開発者はコア機能に集中できます。 2. セキュリティの向上
クレジットカード情報などを自社で保持せず、情報漏洩リスクを低減できます。 3. ユーザー体験の向上 「Googleでログイン」などのソーシャルログインで、登録の手間を省けます。 4. 機能の拡張とイノベーション 複数のAPIを組み合わせ、新しいサービスを生み出せます(例:旅行アプリ)。 7
1.3. 身の回りにあるAPI の活用事例 APIは、私たちの生活の様々な場面で利用されています。 地図サービス 不動産サイトの物件地図や、店舗サイトのアクセスマップ オンライン決済 ECサイトでの安全なクレジットカード決済 SNS 連携
記事の「Xで共有」ボタンや、アプリからInstagramへの直接投稿 天気予報アプリ 気象情報会社から最新の天気データを取得 8
第2 部 HTTP ― API が会話するための「手紙の作法」 9
2.1. HTTP リクエストとレスポンス Web上の通信は、2つの役割と決まった流れで行われます。 クライアント (Client): 情報を 要求する側(Webブラウザ、アプリ) サーバー (Server):
要求に 応答する側(Webサーバー、APIサーバー) 対話の流れ(手紙のやり取りのイメージ) 1. クライアントがサーバーに HTTP リクエスト (お願いの手紙) を送る 2. サーバーがクライアントに HTTP レスポンス (結果の返信) を返す ※サーバーから自発的に話しかけることはありません。 10
2.2. HTTP リクエストメソッド:「何をしてほしいか」を伝える動詞 リクエストには「何をしてほしいか」を伝える 動詞の役割を持つメソッドが含まれます。 メソッド 主な目的 簡単な例え GET データの
取得 ページを読む POST 新規データの 作成 フォームを送信する PUT データの 全体更新 プロフィールを丸ごと書き換える PATCH データの 部分更新 名前だけ変更する DELETE データの 削除 投稿を削除する 11
2.3. HTTP ステータスコード:サーバーからの「結果報告」 リクエスト処理の結果を伝える3 桁の数字です。最初の1桁で意味が分かります。 2xx ( 成功): リクエスト成功! 200
OK 201 Created 3xx ( リダイレクション): お探しのものは別の場所にあります。 301 Moved Permanently 4xx ( クライアントエラー): あなたのリクエストに問題があります。 404 Not Found 5xx ( サーバーエラー): 申し訳ありません、こちら側の問題です。 500 Internal Server Error 12
よく見るステータスコード一覧 コード 分類 意味 解説 200 成功 OK 「成功しました!」 403
クライアントエラー Forbidden 「あなたに見る権限がありません」 404 クライアントエラー Not Found 「お探しのページは見つかりません」 500 サーバーエラー Internal Server Error 「サーバー側で問題が発生しました」 503 サーバーエラー Service Unavailable 「サーバーが一時的に利用できません」 エラーが出ても、コードを見れば 原因の切り分けができます! 13
第3 部 Webhook ― 「何か起きたら教えて」とお願いする仕組み 14
3.1. Webhook とAPI の決定的な違い 通信の 起点が逆です。 API = プル型 (Pull)
クライアントが能動的に情報を**「取りに行く」**。 定期的な確認(ポーリング)は非効率な場合も。 Webhook = プッシュ型 (Push) サーバー側でイベントが発生したら、自動で情報を**「送ってくれる」**。 「リバースAPI」とも呼ばれます。 郵便受けを何度も**見に行く(プル) か、配達員が届けてくれる(プッシュ)**かの違いです。 15
3.2. Webhook が輝く瞬間 Webhookは特にリアルタイム性と効率性が求められる場面で活躍します。 リアルタイムな情報更新 イベント発生の瞬間にデータが反映されます。 システムリソースの効率化 「何かありますか?」という無駄な通信がなくなります。 「A が起きたら、B
を実行する」 というイベント駆動型のワークフローを自動化するのに最適です。 16
3.3. Webhook の具体的な活用事例 チャット通知 Slack等でメンションされたら、即座にスマホに通知が届く。 EC サイトの注文処理 注文完了と同時に、在庫管理システムや会計システムに自動で連携。 決済完了通知 決済成功の通知を受け、顧客に「注文確定メール」を自動送信。
CI/CD パイプライン ( ソフトウェア開発) GitHubにコードが登録されたら、自動でテストプログラムを実行。 17
結論:つながりあうサービスが創る未来 API ( ウェイター) 複雑な内部を隠し、機能やデータを安全・簡単に利用させてくれる**「窓口」**。 HTTP ( 手紙の作法) 世界中のソフトウェアが誤解なく会話するための共通**「言語」**。 Webhook
( 宅配便) サーバーからのイベントをリアルタイムに受け取る**「プッシュ型」**の仕組み。 18
まとめ これら3つの技術は三位一体となり、サービス同士が柔軟に連携しあう**「APIエコノミー」**を形 成しています。 この仕組みを理解することで、普段使うサービスの裏側が見え、デジタル世界への理解がより一層 深まるはずです。 ご清聴ありがとうございました。 19