0

私が構築しているグリーンフィールド アプリケーションの最初の RESTful API 設計に取り組んでおり、API の URI に関するいくつかのポインターを使用できます。

背景として、システムは臨床医が患者に関するアラートを取得するために使用されるため、臨床医に割り当てられたすべての患者に属するアラートのリストを表示する画面を作成します。

臨床医は、患者名またはアラート タイプ別にアラートを表示できます。

私が最初に考えたのは、次のように URI を使用して非常にシンプルにすることでした。

/api/alerts - アラートの完全なリストを取得する -
/api/alerts/123指定されたアラートの詳細を取得する-
/api/alerts?user=mikeユーザーごとにアラート
/api/alerts?user=mike&groupby=patientsのリストを取得する - ユーザーごとおよび患者ごとにグループ化したアラートのリストを取得する

しかし、私は再考し始め、ユーザーの視点からそれについて考え始め、関係をより良く示す方法を考え始めました。

/api/users- ユーザーの完全なリストを取得します-
/api/users/mike指定されたユーザーの詳細を取得します - 指定
/api/users/mike/patientsされたすべてのユーザーの患者の詳細を取得します -
/api/users/mike/patients/alertsユーザーの患者のすべてのアラートを取得します -
/api/users/mike/patients/123/alerts指定されたユーザーの患者の
/api/users/mike/patients/alerts?groupby=typeすべてのアラートを取得します - ユーザーの患者のすべてのアラートを取得し、アラートの種類別にグループ化します。

ですから、私が正しい方向に進んでいるのであれば、どんなアイデアや意見でも構いません。

どちらか一方のアプローチを使用する必要がありますか、それとも両方を使用する必要がありますか?

乾杯、マイク

4

1 に答える 1