GoogleはHTTPもしくはRPC APIを作成するためのAPIデザインガイドを公開した。これらの設計原則は特にGoogle Cloud Endpointsに接続するgRPC APIを作成する開発者に向けて推奨されている。
Googleはこのデザインガイドをクラウドや他のサービスAPIを構築した2014年から内部的に使用している。このガイドはHTTPもしくはRPCの設計について考察している。(REST APIとも呼ばれている)HTTP APIの利点を認める一方で、GoogleがRPC及び特にその一種であるgRPCを好む場合が何度も存在したことに言及している。Googleによれば、インターネット上のAPIの大部分がHTTPであるのに対し、彼らのクラウドやサービスプロバイダーの内部で使用されているのは通常RPCであり、HTTP APIより非常に多い。
GoogleはRPC API設計の際にREST風のアプローチを行うことを推奨しており、これは基礎にメソッド上で操作される1つ以上のリソースを据えるということである。リソースはドメインのエンティティとしても知られ、ネットワークパス形式に従ったURIもしくは固有の名称(ID)により識別される。同種のリソースはコレクションとしてグルーピングされることもある。
使用される標準のメソッドはCreate
、Delete
、Get
、List
、そしてUpdate
である。必要であれば、データベースのトランザクションのような、標準のメソッドにマッピングできない操作のためのカスタムメソッドを作成することができる。必要なだけのリソースと、可能な限り少数のメソッドを使用することが推奨されている。
リソースを作成する際の手順として提案されているものは以下である。
- APIが提供するリソースの種類を特定する
- リソース間の関連を特定する
- 上記の種類と関連からリソース名称の体系を決定する
- リソースの体系を決定する
- 各リソースに対し最小セットのメソッドを付与する
バージョニングのために、Googleはセマンティックバージョンニングを用いており、これはMAJOR.MINOR.PATCH
の3つの数字により表現される。正式リリース前のバージョンは1.0.0-alpha
のような接尾辞により示される。
このガイドはリソース、標準及びカスタムのメソッド・標準フィールド・エラーやproto3によるAPIの作成や他の事項に関する、より詳細な事項や例を含んでいる。
Rate this Article
- Editor Review
- Chief Editor Action