TSV

APIのタイプ - TSV

APIのタイプは、REST、GraphQL、SOAP、gRPC、WebSocketなど、現代のソフトウェア開発で広く使用されているWeb APIのアーキテクチャスタイルとプロトコルを分類したものです。各タイプは異なる通信パターン、データ形式、ユースケースに対応しており、システム間のデータ交換を実現するための基盤となっています。適切なAPIタイプの選択は、システムの性能、スケーラビリティ、開発効率に大きな影響を与えます。

API REST GraphQL SOAP gRPC WebSocket Webサービス 通信プロトコル
code	slug	name	description	caching	communicationPattern	dataFormat	fullName	protocol	state	useCases
01	rest	REST	HTTPプロトコルを使用したリソース指向のアーキテクチャスタイルです。	Excellent (HTTP-level)	Request-Response	["JSON","XML","YAML","Plain Text"]	Representational State Transfer	HTTP/1.1, HTTP/2	Stateless	["Webアプリケーション","モバイルアプリ","マイクロサービス","パブリックAPI"]
02	graphql	GraphQL	クライアント主導のクエリ言語による柔軟なデータ取得を実現するAPIです。	Complex (requires custom implementation)	Query-Response	["JSON"]	Graph Query Language	HTTP/1.1, HTTP/2	Stateless	["モバイルアプリ","SPA","複雑なデータ関係","APIアグリゲーション"]
03	soap	SOAP	XMLベースのメッセージングプロトコルで、厳格な標準化を特徴とするAPIです。	No built-in caching	Request-Response, One-way	["XML"]	Simple Object Access Protocol	HTTP, HTTPS, SMTP, TCP	Stateful or Stateless	["金融サービス","医療システム","エンタープライズ統合","レガシーシステム"]
04	grpc	gRPC	Googleが開発した高性能なRPCフレームワークで、Protocol Buffersを使用します。	No built-in HTTP caching	Unary, Server Streaming, Client Streaming, Bidirectional Streaming	["Protocol Buffers (binary)"]	Google Remote Procedure Call	HTTP/2	Connection-based	["マイクロサービス","内部サービス間通信","リアルタイムシステム","IoT"]
05	websocket	WebSocket	全二重通信を実現するプロトコルで、リアルタイムデータ交換に適しています。	Requires custom logic	Full-duplex, Event-driven	["JSON","Binary","Text"]	WebSocket Protocol	WS, WSS (WebSocket over TLS)	Stateful (persistent connection)	["チャットアプリ","ライブダッシュボード","オンラインゲーム","協調編集ツール"]
06	webhook	Webhook	イベント駆動型のHTTPコールバック機構で、サーバーからクライアントへのプッシュ通知を実現します。	Not applicable	Event-driven, Push	["JSON","XML","Form Data"]	Web Callback	HTTP, HTTPS	Stateless	["決済通知","CI/CD連携","通知システム","システム間連携"]