普通のAPIとどう違うの?
APIは「プログラム同士の接続口」という広い概念。Web APIはその中でもHTTP/HTTPSを使ってネットワーク越しにアクセスできるもの。ライブラリのAPIは同じプログラム内で呼び出すけど、Web APIはインターネット越しに別のサーバの機能を呼び出せるんだよ
身近な例は?
たくさんあるよ。Googleマップの地図表示、Twitterのツイート取得、Stripeの決済処理、OpenAIのChatGPT API、天気予報データの取得、Slackへのメッセージ送信…ほとんどのWebサービスはWeb APIを公開していて、自分のアプリから機能を呼び出せるんだ
RESTとGraphQLはどう違うの?
REST APIはリソースごとにURLを設計して(/users/123)、HTTPメソッド(GET/POST/PUT/DELETE)で操作する。GraphQLは1つのエンドポイントに対してクエリで「欲しいデータだけ」を指定する。RESTは「メニューから注文」、GraphQLは「バイキングで好きなものを選ぶ」イメージだね
セキュリティは大丈夫?
APIキーの管理(公開リポジトリに漏洩させない)、OAuth2.0による適切な認可、レート制限(大量アクセスの防止)、HTTPS通信の必須化が基本だよ。APIゲートウェイを使えばこれらのセキュリティ機能を一元管理できる。APIのセキュリティは侮れない重要テーマだね