API

JSONはお弁当、APIは配達員?RESTの仕組みを日常で例えるとこうなる

「REST APIって、なんだか取っつきにくい」と感じるあなたへ。専門用語の山に押し潰されそうになっていないか。あなたが悪いんじゃない。言葉が難しすぎただけだ。もしもAPIの世界が、お弁当の注文や配達で説明できたら?今回はそんな話。

REST APIの基本をやさしく言いかえる

RESTは「Representational State Transfer」の略。リソースと呼ばれるデータにアクセスして、やりとりするための仕組み。スマホアプリやWebサービスの通信の裏側で日々使われている。

APIは「Application Programming Interface」の略。他のソフトウェアやサービスとつながるための“接続口”。REST APIは、そのうち最も広く使われる形式。

RESTの考え方では、データを直接触るのではなく、その時点の状態をわかる形で届ける。そのときに重要になるのが**Notation(記法)Representation(表現)**という2つの概念。

IT起業家の言葉から見るREST APIの本質

Amazon創業者のジェフ・ベゾスは2002年、すべての社内システムをAPI経由で公開するように命じた。この「ベゾス命令」は、情報の流れを閉じたものから開かれたものへ変えるきっかけとなった。

この方針が生んだのが、現在のAWSやAmazon Marketplaceといった柔軟で再利用可能なサービス群。リソースを分かりやすい形式で公開し、誰でもアクセス可能にする思想がREST APIにそのまま現れている。

RESTはただの通信方式ではない。情報を誰にでも届けられる形で表すという設計思想そのものであり、その実現に欠かせないのが「どう書くか」と「どう見せるか」の考え方である。

JSONというNotationがRESTを支えている

RESTで最もよく使われるデータ形式がJSON(JavaScript Object Notation)

JSONは、リソースの状態をシンプルでわかりやすい記法で表現するための形式。人間が見ても理解でき、プログラムでも処理しやすい。まるで“お弁当の中身ラベル”のようなもの。たとえば、「からあげ」「卵焼き」「ごはん」といった中身を、項目として整理して書くスタイル。

この**JSONの「書き方」そのものがNotation(記法)**にあたる。

Notationとは、RESTにおける情報の書き方・記述ルール。伝える内容は同じでも、書き方がバラバラなら相手には伝わらない。Notationがあることで、サーバーとクライアントが共通の文法でやりとりできる。

たとえば、英語で「apple」と書けば誰でもリンゴだとわかるが、違う言語でバラバラに書かれたら通じない。RESTでも同じ。JSONというNotationを使うことで、全員が同じ言語で話せるようになる

JSONのNotationはシンプルな構造でありながら、入れ子やリストなど複雑なデータも表現できる柔軟さを持つ。これにより、REST APIはさまざまなリソースを正確に記述・伝達できるようになっている。

Notationは、情報を「どう書くか」を決めるものであり、REST APIが成り立つ基礎の部分。JSONはその中でも特に重要な役割を担っている。

表現(Representation)は“どう伝えるか”のスタイル

Representationとは、リソースの中身をクライアントが理解できる形に整えて届けること

Notationが「注文票の書き方」なら、Representationは「届いたお弁当の中身とパッケージそのもの」。同じ内容でも、おにぎり弁当を和紙に包んで渡すのか、プラスチック容器に詰めるのかで、受け取った印象や使い方が変わる。

RESTでは、リソースの実体は直接触れず、必ずその“表現された形”だけがやりとりされる。クライアントは、この表現(Representation)を読み取り、「今、どんな状態なのか」「次に何ができるのか」を判断する。

ここでポイントになるのは、表現の形式が固定ではないということ。JSON形式でも返せるし、HTMLやXMLでもよい。モバイルアプリにはJSON、ブラウザにはHTMLというように、同じリソースでもクライアントに合わせて見せ方を変えることができる。

Representationの役目は、意味ある形で情報を見せ、次の操作への道筋を示すこと。ただデータを届けるだけではなく、「どう使えるか」を明確にする設計が求められる。

RESTではNotationとRepresentationが両輪となる

NotationとRepresentationは、REST APIを理解するうえで不可欠な2つの車輪。

  • Notation:どう書くか(文法)
  • Representation:どう見せるか(意味と見せ方)

Notationがあるから、情報が機械に読める形で記述される
Representationがあるから、その情報を人やシステムが活用できる形で受け取れる

たとえばレストランで、Notationは厨房の伝票。Representationはその注文に応じて完成した料理。伝票が間違っていれば料理は作れないし、料理が正しく盛り付けられていなければ客は混乱する

REST APIでも同じ。リソースの正しい状態を、正しい記法で書き、適切に表現することで、ようやく「意味のあるデータのやりとり」が成立する。

Technology Mediaが示すREST APIの現在地

TechCrunchは「REST APIはモダンアプリケーションの心臓部」と表現した。これは単なる比喩ではない。Webサービス、スマホアプリ、IoT、あらゆる分野でRESTが“つなぎ役”として使われている現実を示している。

Spotifyでは、音楽情報、プレイリスト、アーティストデータが個別のサービスとして存在している。それらが連携して動くためには、REST APIによる統一されたNotationと、受け取り側に適したRepresentationが必要となる。

どんな相手にも、正しい文法で、わかりやすい形式で情報を渡す。RESTがこの構造を支えている。

まとめ

REST APIを理解するうえで鍵になるのが、Notation(記法)とRepresentation(表現)という2つの柱

Notationは「情報をどう書くか」というルール。RESTではJSONがその中心を担っている。
Representationは「情報をどう見せるか」という設計。相手に合わせて柔軟に変えられる。

RESTは、リソースをただ届けるのではなく、“どう届けるか”をコントロールする仕組み。Notationで正しく記述し、Representationでわかりやすく伝える。この組み合わせが、REST APIの核となっている。

仕組みを理解すれば、REST APIはもう難しくない。ただのやりとりではなく、「伝わる工夫」に満ちた設計だ。APIの世界は、あなたの理解を待っている。