Upgrade to Pro — share decks privately, control downloads, hide ads and more …

API、HTTP、Webhookの初学者向け完全ガイド

 API、HTTP、Webhookの初学者向け完全ガイド

デジタル世界の「通訳」と「連絡係」

## API、HTTP、Webhookの初学者向け完全ガイド

Avatar for MIKIO KUBO

MIKIO KUBO

July 25, 2025
Tweet

More Decks by MIKIO KUBO

Other Decks in Education

Transcript

  1. 1.1. API とは何か? Application Programming Interfaceの略です。 Application: 天気予報アプリやSNSなど Programming: コンピュータへの指示

    Interface: 2つのシステムが情報をやり取りする「接点」 簡単に言うと、**「プログラム同士が会話するための共通言語」 や「ソフトウェア同士をつなぐ窓 口」**です。 5
  2. 1.2. API がもたらす4 つの恩恵 1. 開発の効率化とコスト削減 決済機能などをゼロから作る必要がなくなります。 開発者はコア機能に集中できます。 2. セキュリティの向上

    クレジットカード情報などを自社で保持せず、情報漏洩リスクを低減できます。 3. ユーザー体験の向上 「Googleでログイン」などのソーシャルログインで、登録の手間を省けます。 4. 機能の拡張とイノベーション 複数のAPIを組み合わせ、新しいサービスを生み出せます(例:旅行アプリ)。 7
  3. 2.1. HTTP リクエストとレスポンス Web上の通信は、2つの役割と決まった流れで行われます。 クライアント (Client): 情報を 要求する側(Webブラウザ、アプリ) サーバー (Server):

    要求に 応答する側(Webサーバー、APIサーバー) 対話の流れ(手紙のやり取りのイメージ) 1. クライアントがサーバーに HTTP リクエスト (お願いの手紙) を送る 2. サーバーがクライアントに HTTP レスポンス (結果の返信) を返す ※サーバーから自発的に話しかけることはありません。 10
  4. 2.2. HTTP リクエストメソッド:「何をしてほしいか」を伝える動詞 リクエストには「何をしてほしいか」を伝える 動詞の役割を持つメソッドが含まれます。 メソッド 主な目的 簡単な例え GET データの

    取得 ページを読む POST 新規データの 作成 フォームを送信する PUT データの 全体更新 プロフィールを丸ごと書き換える PATCH データの 部分更新 名前だけ変更する DELETE データの 削除 投稿を削除する 11
  5. 2.3. HTTP ステータスコード:サーバーからの「結果報告」 リクエスト処理の結果を伝える3 桁の数字です。最初の1桁で意味が分かります。 2xx ( 成功): リクエスト成功! 200

    OK 201 Created 3xx ( リダイレクション): お探しのものは別の場所にあります。 301 Moved Permanently 4xx ( クライアントエラー): あなたのリクエストに問題があります。 404 Not Found 5xx ( サーバーエラー): 申し訳ありません、こちら側の問題です。 500 Internal Server Error 12
  6. よく見るステータスコード一覧 コード 分類 意味 解説 200 成功 OK 「成功しました!」 403

    クライアントエラー Forbidden 「あなたに見る権限がありません」 404 クライアントエラー Not Found 「お探しのページは見つかりません」 500 サーバーエラー Internal Server Error 「サーバー側で問題が発生しました」 503 サーバーエラー Service Unavailable 「サーバーが一時的に利用できません」 エラーが出ても、コードを見れば 原因の切り分けができます! 13
  7. 3.1. Webhook とAPI の決定的な違い 通信の 起点が逆です。 API = プル型 (Pull)

    クライアントが能動的に情報を**「取りに行く」**。 定期的な確認(ポーリング)は非効率な場合も。 Webhook = プッシュ型 (Push) サーバー側でイベントが発生したら、自動で情報を**「送ってくれる」**。 「リバースAPI」とも呼ばれます。 郵便受けを何度も**見に行く(プル) か、配達員が届けてくれる(プッシュ)**かの違いです。 15