mongolyyのブログ

開発(Javascript, Typescript, React, Next.js)や開発手法(スクラム, アジャイル)、勉強したことについて色々書ければと。

Web API: The Good Parts を読んだ

はじめに

最近の業務で、SaaSと連携したシステム構築によりWeb APIにふれる機会が多くなったり、Next.jsでシステムを構築する中で、自身でAPIを作成することも出てきたので知識の整理をしたいと思い、「Web API: The Good Part」を読んでみました。

 感想

API設計の具体的なベストプラクティスをまとめて知ることができた

本書を読むまでは、なんとなくググったり、先輩社員に聞いて設計していることが多かったので、まとまった知識がなかったように思います。
近いうちに新しく開発チームを作り、APIの開発業務が発生しそうだったので、今回得た知識でガイドラインが作成できそうだなーと感じました。
特に、私は以下のような内容が勉強になりました。

  • エンドポイントで使う単語について
    • 複数形の名詞を利用
    • 単語を繋げる場合はハイフンを使用
  • クリパラメータ
    • ページング発生時
    • 絞り込み時
  • レスポンスデータのフォーマット
  • APIのバージョン番号
  • セキュリティ関係のHTTPヘッダ

API設計について標準として決まっていないものが多いのですが、国内外の有名なAPIを例に比較し、作者の見解が記載されているというスタイルにより、理解が進みました。

API周りの関連情報を知ることができた

特に印象深かったのは HATEOAS です。
APIがどういうレスポンスを返すべきかの1つの解だなーと感じました。

あと、REST API = HTTP/HTTPS通信でJSON形式でデータを返すAPIだと理解していましたが、その理解は間違っていることもわかりました。今後は言葉に気をつけようと思います。

まとめ

マイクロサービス化、マイクロフロントエンド化、SaaS利用、連携が増えていく中でAPI設計知識の重要性は今後更に上がってくると思います。
本書を読むことで、API設計のスキルも上がると思いますし、APIを使う側だとしても、サービス選定時に「良い設計のAPIを提供しているか?」という評価ができるようになると感じました。
チームメンバーにも本書を紹介したいと思います。