REST API

REST API

REST APIとは

REST API(Representational State Transfer API)とは、RESTアーキテクチャスタイルに基づいて設計されたWeb APIです。HTTPメソッド(GET、POST、PUT、DELETEなど)を使用してリソースを操作し、JSONやXML形式でデータを交換します。現在最も広く普及しているAPI設計スタイルです。

表:REST APIの要点まとめ
ひとことで言うとHTTPの仕組みに沿って設計された、最も一般的なAPIの形式。
何がうれしいかどの言語からも簡単に呼べて、ブラウザでも確認できる。
注意点大量・高頻度の通信ではやや非効率。その場合はgRPCも検討。

RESTの原則

RESTには6つの基本原則があります。クライアント・サーバー分離、ステートレス性(各リクエストが独立)、キャッシュ可能性、統一インターフェース、階層化システム、そしてオプションのコードオンデマンドです。これらの原則に従うことで、スケーラブルで保守性の高いAPIを設計できます。

図:REST APIの基本
1URLで対象を指定/users/123
▶
2メソッドで操作GET/POST/PUT/DELETE
▶
3JSONでやりとり人が読める形式
▶
4状態コードで結果200成功、404なし

AI推論APIとREST

多くのAI推論サービスはREST APIとして提供されています。クライアントがHTTP POSTリクエストでテキストや画像データを送信し、サーバーが推論結果をJSONで返却するのが一般的なパターンです。OpenAIのChat Completions API、Google CloudのPrediction APIなどがこの形式を採用しています。

REST APIの設計パターン

良いREST API設計では、リソース指向のURL設計、適切なHTTPステータスコードの使用、ページネーション、フィルタリング、認証(OAuth 2.0やAPIキー)などが重要です。OpenAPI(Swagger)仕様でAPIを定義することで、ドキュメントの自動生成やクライアントコードの自動生成が可能になります。