API 一覧
RESTful インタラクション
- インタラクション例の [type] にはリソースを指定します。表中のインタラクション例は Patient リソースを使用して記載しています。
特定のインタラクションと関係しないエラー
No | Interaction | Remarks | summary | operation | expectation HTTP status | expectation Response Body |
---|---|---|---|---|---|---|
1 | - (対応されていないインタラクション) | リクエストが不正である | 対応されていないインタラクションを実行する | 400 Bad Request | - | |
2 | - (インタラクションは無関係) | サーバエラー | ※500 Internal Server Error を起こす場合 AP サーバの異常時にインタラクションを実行する | 5XX | - |
read
GET [base]/[type]/[id] {?_format=[mime-type]}
※ 取得されるのは最新バージョンのリソース
No | Interaction | Remarks | summary | operation | expectation HTTP status | expectation Response Body |
---|---|---|---|---|---|---|
1 | GET [base]/Patient/[id] | 基本形 オプションパラメータ無し | [id]に存在するリソースの id を指定する | 200 OK | 指定した id のリソース | |
2 | GET [base]/Patient/[id]?_format=application/fhir+json | _format 指定 | [id]に存在するリソースの id を指定する | 200 OK | 指定した id のリソース | |
3 | GET [base]/Patient/[id]?_format=application/json | _format 指定 一般的な mime type | [id]に存在するリソースの id を指定する | 200 OK | 指定した id のリソース | |
4 | GET [base]/Patient/[id]?_pretty=true | _pretty 指定 プリティプリント形式による応答 | [id]に存在するリソースの id を指定する | 200 OK | 指定した id のリソース | |
5 | GET [base]/Patient/[id]?_pretty=false | _pretty 指定 プリティプリント形式による応答 | [id]に存在するリソースの id を指定する | 200 OK | 指定した id のリソース | |
6 | GET [base]/Patient/[id]?name=value ※検索パラメータは例 | リクエスト不正 | [id]と検索パラメータを共に指定する | 400 Bad Request | OperationOutcome | |
7 | GET [base]/Patient/[id] | 未検出 | [id]に存在しないリソースの id を指定する または、HTTP ヘッダー Accept にサーバでサポートされていない FHIR バージョンを指定する | 404 Not Found | OperationOutcome | |
8 | GET [base]/Patient/[id] | 受理できない | HTTP ヘッダー Accept にサーバでサポートされていないフォーマット(MIME タイプ)を指定する | 406 Not Acceptable | なし | |
9 | GET [base]/Patient/[id] | 消滅した | [id]に DELETE インタラクションで削除したリソースの id を指定する | 410 Gone | OperationOutcome | |
10 | GET [base]/Patient/[id]Http request HEADER ETag= | Conditional read ※未確認 | ||||
11 | GET [base]/Patient/[id]Http request HEADER If-Modified-Since=date-time | Conditional read | id と date-time を指定し、id で指定したリソースが date-time より未来に更新された(=対象リソースの lastUpdated より古い)場合のみ当該リソースを取得する | 200 OK or 304 Not Modified | 指定した id のリソース or なし | |
12 | GET [base]/Patient/[id]Http request HEADER If-None-Match=ETag | Conditional read | id と ETag を指定し、 ETag が対象リソースの versionId と異なる場合のみ当該リソースを取得する | 200 OK or 304 Not Modified | 指定した id のリソース or なし |
vread
GET [base]/[type]/[id]/_history/[vid] {?_format=[mime-type]}
No | Interaction | Remarks | summary | operation | expectation HTTP status | expectation Response Body |
---|---|---|---|---|---|---|
1 | GET [base]/Patient/[id]/_history/[vid] | 基本形 オプションパラメータ無し | [id]に存在するリソースの id を、[vid]に存在するバージョンの vid を指定する | 200 OK | 指定した id、vid のリソース | |
2 | GET [base]/Patient/[id]/_history/[vid]?_format=application/fhir+json | _format 指定 | [id]に存在するリソースの id を、[vid]に存在するバージョンの vid を指定する | 200 OK | 指定した id、vid のリソース | |
3 | GET [base]/Patient/[id]/_history/[vid]?_format=application/json | _format 指定 一般的な mime type | [id]に存在するリソースの id、[vid]に存在するバージョンの vid を指定する | 200 OK | 指定した id、vid のリソース | |
4 | GET [base]/Patient/[id]/_history/[vid]?_pretty=true | _pretty 指定 プリティプリント形式による応答 | [id]に存在するリソースの id を、[vid]に存在するバージョンの vid を指定する | 200 OK | 指定した id、vid のリソース | |
5 | GET [base]/Patient/[id]/_history/[vid]?_pretty=false | _pretty 指定 プリティプリント形式による応答 | [id]に存在するリソースの id を、[vid]に存在するバージョンの vid を指定する | 200 OK | 指定した id、vid のリソース | |
6 | GET [base]/Patient/[id]/_history/[vid] | 未検出 | [id]に存在 しないリソースの id を指定する または、[vid]に存在しないバージョンの vid を指定する または、HTTP ヘッダー Accept にサーバでサポートされていない FHIR バージョンを指定する | 404 Not Found | OperationOutcome | |
7 | GET [base]/Patient/[id]/_history/[vid] | 受理できない | HTTP ヘッダー Accept にサーバでサポートされていないフォーマット(MIME タイプ)を指定する | 406 Not Acceptable | なし | |
8 | GET [base]/Patient/[id]/_history/[vid] | 消滅した | [id]に DELETE インタラクションで削除したリソースの id を指定する | 410 Gone | OperationOutcome |
update
PUT [base]/[type]/[id] {?_format=[mime-type]}
No | Interaction | Remarks | summary | operation | expectation HTTP status | expectation Response Body |
---|---|---|---|---|---|---|
1 | PUT [base]/Patient/[id]Http request Body id=[id] | 基本形 オプションパラメータ無し | [id]に存在するリソースの id を指定する request body の id に[id]と同じ値をセットする meta.versionId、meta.lastUpdated は指定しても無視される | 200 OK | 指定した id の更新後のリソース | |
2 | PUT [base]/Patient/[id]?_format=application/fhir+jsonHttp request Body id=[id] | _format 指定 | [id]に存在するリソースの id を指定する request body の id に[id]と同じ値をセットする meta.versionId、meta.lastUpdated は指定しても無視される | 200 OK | 指定した id の更新後のリソース | |
3 | PUT [base]/Patient/[id]?_format=application/jsonHttp request Body id=[id] | _format 指定 一般的な mime type | [id]に存在するリソースの id を指定する request body の id に[id]と同じ値をセットする meta.versionId、meta.lastUpdated は指定しても無視される | 200 OK | 指定した id の更新後のリソース | |
4 | PUT [base]/Patient/[id]?_pretty=trueHttp request Body id=[id] | _pretty 指定 プリティプリント形式による応答 | [id]に存在するリソースの id を指定する request body の id に[id]と同じ値をセットする meta.versionId、meta.lastUpdated は指定しても無視される | 200 OK | 指定した id の更新後のリソース | |
5 | PUT [base]/Patient/[id]?_pretty=falseHttp request Body id=[id] | _pretty 指定 プリティプリント形式による応答 | [id]に存在するリソースの id を指定する request body の id に[id]と同じ値をセットする meta.versionId、meta.lastUpdated は指定しても無視される | 200 OK | 指定した id の更新後のリソース | |
6 | PUT [base]/Patient/[id]Http request HEADER Prefer: return=minimal Http request Body id=[id] | HTTP return preference 指定 | [id]に存在するリソースの id を指定する request body の id に[id]と同じ値をセットする meta.versionId、meta.lastUpdated は指定しても無視される | 200 OK | なし | |
7 | PUT [base]/Patient/[id]Http request HEADER Prefer: return=representation Http request Body id=[id] | HTTP return preference 指定 | [id]に存在するリソースの id を指定する request body の id に[id]と同じ値をセットする meta.versionId、meta.lastUpdated は指定しても無視される | 200 OK | 指定した id の更新後のリソース | |
8 | PUT [base]/Patient/[id]Http request HEADER Prefer: return=OperationOutcome Http request Body id=[id] | HTTP return preference 指定 | [id]に存在するリソースの id を指定する request body の id に[id]と同じ値をセットする meta.versionId、meta.lastUpdated は指定しても無視される | 200 OK | OperationOutcome ※ValueSetで未実装のfilter.opを指定した場合、filter.opが無視された旨のOperationOutcome | |
9−1 | PUT [base]/Patient/[id]Http request Body id=[id] | FHIR サーバで Update as Create が許可されている場合 | update での作成 | [id]に存在しないリソースの id を指定する request body の id に[id]と同じ値をセットする meta.versionId、meta.lastUpdated は指定しても無視される | 201 Created | 指定した id の新規のリソース |
9−2 | PUT [base]/Patient/[id]Http request Body id=[id] | FHIR サーバで Update as Create が許可されていない場合 | update での作成 | [id]に存在しないリソースの id を指定する request body の id に[id]と同じ値をセットする meta.versionId、meta.lastUpdated は指定しても無視される | 404 Not Found | OperationOutcome |
10 | PUT [base]/Patient/[id]Http request HEADER If-Match: ETag Http request Body id=[id] | Managing Resource Contention | [id]に存在するリソースのidを指定する ETag の値が対象リソースの versionId と同じなら正常。異なれば前提条件で失敗。 request bodyのidに[id]と同じ値をセットする request bodyに更新内容をセットする meta.versionId、meta.lastUpdated は指定しても無視される | 200 OK or 412 Precondition Failed error | 指定したidの更新後のリソース or OperationOutcome | |
11 | PUT [base]/Patient/[id]Http request Body id=[id] | 未検出 | HTTP ヘッダー Accept にサーバでサポートされていない FHIR バージョンを指定する | 404 Not Found | OperationOutcome | |
12 | PUT [base]/Patient/[id]Http request Body id=[id] | 未実装 | 許可されていないメソッド | update 対象のリソースが存在せず、サーバがクライアントの id 定義を許可しない場合 | 405 Method Not Allowed | OperationOutcome |
13 | PUT [base]/Patient/[id]Http request Body id=[id] | 受理できない | HTTP ヘッダー Accept にサーバでサポートされていないフォーマット(MIME タイプ)を指定する | 406 Not Acceptable | なし | |
14 | PUT [base]/Patient/[id]Http request Body id=[id] | サ ポートしていないメディアタイプ | HTTP ヘッダー Content-Type に text/html を指定する | 415 Unsupported Media Type | OperationOutcome | |
15 | PUT [base]/Patient/[id]Http request Body id=[id] | 未実装 (ビジネスルール未定) | 処理できないエンティティ | FHIR プロファイルまたはサーバーのビジネスルールに違反した場合 rejecting-updates | 422 Unprocessable Entity | OperationOutcome |
16 | PUT [base]/Patient/[id]Http request Body id=? | リクエストが不正である | id要素が提供されていない場合、またはIDがURLのIDと一致しない場合 | 400 Bad Request | OperationOutcome | |
17 | PUT [base]/Patient?[search parameters]Http request Body | Conditional update | search 条件に一致しない、id が指定されていない | 201 Created | 新規のリソース | |
18 | PUT [base]/Patient?[search parameters]Http request Body id=? | Conditional update | search 条件に一致しない、id が指定されている ※Update as Create として扱われる | 201 Created or 404 Not Found | 指定した id の新規のリソース or OperationOutcome | |
19 | PUT [base]/Patient?[search parameters]Http request Body | Conditional update | search 条件に一件一致し、id が指定されていない(または、リソース id が提供され、見つかったリソースと一致する) | 200 OK | 一致した id の更新後のリソース | |
20 | PUT [base]/Patient?[search parameters]Http request Body id=? | Conditional update | search 条件に一件一致し、提供されたリソース ID が見つかったリソースと一致しない | 400 Bad Request | OperationOutcome | |
21 | PUT [base]/Patient?[search parameters]Http request Body | Conditional update | search 条件に複数一致する concurrency | 412 Precondition Failed error | OperationOutcome | |
22 | PUT [base]/PatientHttp request HEADER If-Match: ETag Http request Body id=? | Conditional update | 検索パラメータが無く、If-Matchヘッダーを指定している | 400 Bad Request | OperationOutcome | |
23 | PUT [base]/PatientHttp request HEADER Http request Body id=? | Conditional update | idと検索パラメータのいずれも指定されていない | 400 Bad Request | OperationOutcome | |
24 | PUT [base]/Patient/[id]?[search parameters]Http request HEADER Http request Body id=? | Conditional update | idと検索パラメータが共に指定されている | 400 Bad Request | OperationOutcome |
patch
PATCH [base]/[type]/[id] {?_format=[mime-type]}
No | Interaction | Remarks | summary | operation | expectation HTTP status | expectation Response Body |
---|---|---|---|---|---|---|
1 | PATCH [base]/Patient/[id]Http request Body | 基本形 オプションパラメータ無し | [id]に存在するリソースの id を指定する request body に更新内容をセットする JSON Patch と FHIRPath Patch の形式が指定可能 | 200 OK | 指定した id の更新後のリソース | |
2 | PATCH [base]/Patient/[id]?_format=application/fhir+jsonHttp request Body | _format 指定 | [id]に存在するリソースの id を指定する request body に更新内容をセットする JSON Patch と FHIRPath Patch の形式が指定可能 | 200 OK | 指定した id の更新後のリソース | |
3 | PATCH [base]/Patient/[id]?_format=application/jsonHttp request Body | _format 指定 一般的な mime type | [id]に存在するリソースの id を指定する request body に更新内容をセットする JSON Patch と FHIRPath Patch の形式が指定可能 | 200 OK | 指定した id の更新後のリソース | |
4 | PATCH [base]/Patient/[id]?_pretty=trueHttp request Body | _pretty 指定 プリティプリント形式による応答 | [id]に存在するリソースの id を指定する request body に更新内容をセットする JSON Patch と FHIRPath Patch の形式が指定可能 | 200 OK | 指定した id の更新後のリソース | |
5 | PATCH [base]/Patient/[id]?_pretty=falseHttp request Body | _pretty 指定 | [id]に存在するリソースの id を指定する request body に更新内容をセットす る JSON Patch と FHIRPath Patch の形式が指定可能 | 200 OK | 指定した id の更新後のリソース | |
6 | PATCH [base]/Patient/[id]Http request HEADER Prefer: return=minimal Http request Body | HTTP return preference 指定 | [id]に存在するリソースの id を指定する request body に更新内容をセットする JSON Patch と FHIRPath Patch の形式が指定可能 | 200 OK | なし | |
7 | PATCH [base]/Patient/[id]Http request HEADER Prefer: return=representation Http request Body | HTTP return preference 指定 | [id]に存在するリソースの id を指定する request body に更新内容をセットする JSON Patch と FHIRPath Patch の形式が指定可能 | 200 OK | 指定した id の更新後のリソース | |
8 | PATCH [base]/Patient/[id]Http request HEADER Prefer: return=OperationOutcome Http request Body | HTTP return preference 指定 | [id]に存在するリソースの id を指定する request body に更新内容をセットする JSON Patch と FHIRPath Patch の形式が指定可能 | 200 OK | OperationOutcome | |
9 | PATCH [base]/Patient/[id]Http request HEADER If-Match: ETag Http request Body | Managing Resource Contention | [id]に存在するリソースのidを指定する ETag の値が対象リソースの versionId と同じなら正常。異なれば前提条件で失敗。 request body に更新内容をセットする JSON Patch と FHIRPath Patch の形式が指定可能 | 200 OK or 412 Precondition Failed error | 指定したidの更新後のリソース or OperationOutcome | |
10 | PATCH [base]/Patient/[id]Http request Body | リクエストが不正である | request Body に存在しない要素をセットする JSON Patch と FHIRPath Patch の形式が指定可能 | 400 Bad Request | OperationOutcome | |
11 | PATCH [base]/Patient/[id]Http request Body | 未検出 | [id]に存在しないリソースの id を指定する または、HTTP ヘッダー Accept にサーバでサポートされていない FHIR バージョンを指定する | 404 Not Found | OperationOutcome | |
12 | PATCH [base]/Patient/[id]Http request Body | 未実装 | 許可されていないメソッド | 405 Method Not Allowed | OperationOutcome | |
13 | PATCH [base]/Patient/[id]Http request Body | 受理できない | HTTP ヘッダー Accept にサーバでサポートされていないフォーマット(MIME タイプ)を指定する | 406 Not Acceptable | なし | |
14 | PATCH [base]/Patient/[id]Http request Body | サポートしていないメディアタイプ | HTTP ヘッダー Content-Type に text/html を指定する | 415 Unsupported Media Type | OperationOutcome | |
15 | PATCH [base]/Patient/[id]Http request Body | 未実装 (ビジネスルール未定) | 処理できないエンティティ | FHIR プロファイルまたはサーバーのビジネスルールに違反した場合 | 422 Unprocessable Entity | OperationOutcome |
16 | PATCH [base]/Patient?[search parameters]Http request Body | Conditional patch | search 条件に一致しない | 404 Not Found | OperationOutcome | |
17 | PATCH [base]/Patient?[search parameters]Http request Body | Conditional patch | search 条件に一件一致する request body に更新内容をセットする JSON Patch と FHIRPath Patch の形式が指定可能 | 200 OK | 条件に一致した更新後のリソース | |
18 | PATCH [base]/Patient?[search parameters]Http request Body | Conditional patch | search 条件に複数一致する | 412 Precondition Failed error | OperationOutcome | |
19 | PATCH [base]/PatientHttp request HEADER If-Match: ETag Http request Body | Conditional patch | 検索パラメータが無く、If-Match ヘッダーを指定している | 400 Bad Request | OperationOutcome | |
20 | PATCH [base]/PatientHttp request HEADER Http request Body | Conditional patch | idと検索パラメータのいずれも指定されていない | 400 Bad Request | OperationOutcome | |
21 | PATCH [base]/Patient/[id]?[search parameters]Http request HEADER Http request Body | Conditional patch | idと検索パラメータが共に指定されている | 400 Bad Request | OperationOutcome |
delete
DELETE [base]/[type]/[id]
No | Interaction | Remarks | summary | operation | expectation HTTP status | expectation Response Body |
---|---|---|---|---|---|---|
1 | DELETE [base]/Patient/[id] | openfhir.config 設定ファイルに contains.payload=false の設定がされていると、正常時の HTTP status は 204 No Content になる。その場合 Response Body に値は設定されない。 | 基本形 オプションパラメータ無し | [id]に存在するリソースの id を指定する | 200 OK | OperationOutcome |
2 | DELETE [base]/Patient/[id]?_format=application/fhir+json | _format 指定 | [id]に存在するリソースの id を指定する | 200 OK | OperationOutcome | |
3 | DELETE [base]/Patient/[id]?_format=application/json | _format 指定 一般的な mime type | [id]に存在するリソースの id を指定する | 200 OK | OperationOutcome | |
4 | DELETE [base]/Patient/[id]?_pretty=true | _pretty 指定 プリティプリント形式による応答 | [id]に存在するリソースの id を指定する | 200 OK | OperationOutcome | |
5 | DELETE [base]/Patient/[id]?_pretty=false | _pretty 指定 プリティプリント形式による応答 | [id]に存在するリソースの id を指定する | 200 OK | OperationOutcome | |
6 | DELETE [base]/Patient/[id] | 未検出 | [id]に存在しないリソースの id を指定する または、HTTP ヘッダー Accept にサーバでサポートされていない FHIR バージョンを指定する | 404 Not Found | OperationOutcome | |
7 | DELETE [base]/Patient/[id] | 未実装 (使用する想定が無い) | 許可されていないメソッド | 405 Method Not Allowed | OperationOutcome | |
8 | DELETE [base]/Patient/[id] | 受理できない | HTTP ヘッダー Accept にサーバでサポートされていないフォーマット(MIME タイプ)を指定する | 406 Not Acceptable | なし | |
9 | DELETE [base]/Patient/[id] | 未検出 | [id]に削除したリソースの id を指定する | 404 Not Found | OperationOutcome | |
10 | DELETE [base]/Patient?[search parameters] | Conditional delete | search 条件に一件一致する | 200 OK | OperationOutcome | |
11 | DELETE [base]/Patient?[search parameters] | Conditional delete | search 条件に一致しない | 404 Not Found | OperationOutcome | |
12 | DELETE [base]/Patient?[search parameters] | Conditional delete | search 条件に複数一致する ※FHIR サーバの複数削除許可の設定による | 200 OK or 412 Precondition Failed error | OperationOutcome | |
13 | DELETE [base]/Patient | Conditional delete | idと検索パラメータのいずれも指定されていない | 400 Bad Request | OperationOutcome | |
14 | DELETE [base]/Patient/[id]?[search parameters] | Conditional delete | idと検索パラメータが共に指定されている | 400 Bad Request | OperationOutcome |
create
POST [base]/[type] {?_format=[mime-type]}
No | Interaction | Remarks | summary | operation | expectation HTTP status | expectation Response Body |
---|---|---|---|---|---|---|
1 | POST [base]/Patient/Http request Body | 基本形 オプションパラメータ無し | request body に作成するリソースをセットする id 、 meta.versionId と meta.lastUpdated は指定しても無視される | 201 Created | 作成されたリソース | |
2 | POST [base]/Patient?_format=application/fhir+jsonHttp request Body | _format 指定 | request body に作成するリソースをセットする id 、 meta.versionId と meta.lastUpdated は指定しても無視される | 201 Created | 作成されたリソース | |
3 | POST [base]/Patient?_format=application/jsonHttp request Body | _format 指定 一般的な mime type | request body に作成するリソースをセットする id 、 meta.versionId と meta.lastUpdated は指定しても無視される | 201 Created | 作成されたリソース | |
4 | POST [base]/Patient?_pretty=trueHttp request Body | _pretty 指定 | request body に作成するリソースをセットする id 、 meta.versionId と meta.lastUpdated は指定しても無視される | 201 Created | 作成されたリソース | |
5 | POST [base]/Patient?_pretty=falseHttp request Body | _pretty 指定 | request body に作成するリソースをセットする id 、 meta.versionId と meta.lastUpdated は指定しても無視される | 201 Created | 作成されたリソース | |
6 | POST [base]/PatientHttp request HEADER Prefer: return=minimal Http request Body | HTTP return preference 指定 | request body に作成するリソースをセットする id 、 meta.versionId と meta.lastUpdated は指定しても無視される | 201 Created | なし | |
7 | POST [base]/PatientHttp request HEADER Prefer: return=representation Http request Body | HTTP return preference 指定 | request body に作成するリソースをセットする id 、 meta.versionId と meta.lastUpdated は指定しても無視される | 201 Created | 作成されたリソース | |
8 | POST [base]/PatientHttp request HEADER Prefer: return=OperationOutcome Http request Body | HTTP return preference 指定 | request body に作成するリソースをセットする id 、 meta.versionId と meta.lastUpdated は指定しても無視される | 201 Created | OperationOutcome ※ValueSetで未実装のfilter.opを指定した場合、filter.opが無視された旨のOperationOutcome | |
9 | POST [base]/PatientHttp request Body | リクエストが不正である | バリデーションルールに違反するリソースを request body にセットする | 400 Bad Request | OperationOutcome | |
10 | POST [base]/PatientHttp request Body | 未検出 | HTTP ヘッダー Accept にサーバでサポートされていない FHIR バージョンを指定する | 404 Not Found | OperationOutcome | |
11 | POST [base]/PatientHttp request Body | 未実装 (未使用) | 許可されていないメソッド | 405 Method Not Allowed | OperationOutcome | |
12 | POST [base]/PatientHttp request Body | 受理できない | HTTP ヘッダー Accept にサーバでサポートされていないフォーマット(MIME タイプ)を指定する | 406 Not Acceptable | なし | |
13 | POST [base]/PatientHttp request Body | サポートしていないメディアタイプ | HTTP ヘッダー Content-Type に text/html を指定する | 415 Unsupported Media Type | OperationOutcome | |
14 | POST [base]/PatientHttp request Body | 未実装 (ビジネスルール未定) | 処理できないエンティティ | FHIR プロファイルまたはサーバーのビジネスルールに違反した場合 | 422 Unprocessable Entity | OperationOutcome |
15 | POST [base]/PatientHttp request HEADER If-None-Exist: [search parameters] Http request Body | Conditional create | search 条件に一致しない | 201 Created | 作成されたリソース | |
16 | POST [base]/PatientHttp request HEADER If-None-Exist: [search parameters] Http request Body | Conditional create | search 条件に一件一致する | 200 OK | 一致したリソース ※POST リクエストは無視される | |
17 | POST [base]/PatientHttp request HEADER If-None-Exist: [search parameters] Http request Body | Conditional create | search 条件に複数一致する | 412 Precondition Failed error | OperationOutcome |
search
Search handling mechanism
GET [base]/[type]{?[parameters]{&_format=[mime-type]}}
GET [base]?[parameters]{&_format=[mime-type]}
No | Interaction | Remarks | summary | operation | expectation HTTP status | expectation Response Body |
---|---|---|---|---|---|---|
1 | GET [base]/Patient | 対象となるリソースが存在しない場合は Response Body の Bundle.total に 0 が設定される。HTTP Status は 200 OK になる。 | 基本形 オプションパラメータ無し | 指定した type(Patient)のリソースが存在する状態で実施する | 200 OK | Bundle |
2 | GET [base]/Patient?_format=application/fhir+json | _format 指定 | 指定した type(Patient)のリソースが存在する状態で実施する | 200 OK | Bundle | |
3 | GET [base]/Patient?_format=application/json | _format 指定 一般的な mime type | 指定した type(Patient)のリソースが存在する状態で実施する | 200 OK | Bundle | |
4 | GET [base]/Patient?_pretty=true | _pretty 指定 プリティプリント形式による応答 | 指定した type(Patient)のリソースが存在する状態で実施する | 200 OK | Bundle | |
5 | GET [base]/Patient?_pretty=false | _pretty 指定 プリティプリント形式による応答 | 指定した type(Patient)のリソースが存在する状態で実施する | 200 OK | Bundle | |
6 | GET [base]/Patient?_id=[id] | _id 指定 | [id]に存在するリソースの id を指定する | 200 OK | Bundle | |
7 | GET [base]/Patient?_lastUpdated=gt2010-10-01 ※パラメータは例 | _lastUpdated 指定 | lastUpdated が指定された date より新しいリソースを用意する | 200 OK | Bundle | |
8 | GET [base]/Patient?_tag=chol-mmol ※パラメータは例 | _tag 指定 | 指定の meta.tag を持つ Patient を用意する | 200 OK | Bundle | |
9 | GET [base]/Patient?_profile=http://hl7fhir.jp/fhir/StructureDefinition/JP_Patient ※パラメータは例 | _profile 指定 | 指定の meta.profile を持つ Patient を用意する | 200 OK | Bundle | |
10 | GET [base]/Patient?_security=HMARKT ※パラメータは例 | _security 指定 | 指定の meta.security を持つ Patient を用意する | 200 OK | Bundle | |
11 | GET [base]/Patient?gender:missing=true ※パラメータは例 | 指定できるモディファイアは検索パラメータのデータ型によって異る | モディファイア 指定 | 指定の検索パラメータを持つ Patient を用意する | 200 OK | Bundle |
12 | GET [base]/Patient?birthdate=eq2010-10-01 ※パラメータは例 | 指定できるプレフィックスは検索パラメータのデータ型によって異る | プレフィックス 指定 | 指定の検索パラメータを持つ Patient を用意する | 200 OK | Bundle |
13 | GET [base]/Patient?general-practitioner._id=10 または GET [base]//Patient?general-practitioner:Organization._id=10 ※パラメータは例 | Chained 検索 | reference 型の検索パラメータを持つ Patient を用意する | 200 OK | Bundle | |
14 | GET [base]/Patient?_has:Observation:patient:code=1234-5 ※パラメータは例 | _has 指定 | Patient とその Patient への参照と指定の code を持つ Observation を用意する | 200 OK | Bundle | |
15 | GET [base]/Observation?combo-code-value-quantity=http://loinc.org|15074-8$6.30|http://unitsofmeasure.org|mmol/L ※ Composite 検索パラメータは Patient ではサポートされていないため、Observation で例示 パラメータは例 | Composite 検索 | 指定の Composite(値のペア)を持つ Observation を用意する | 200 OK | Bundle | |
16 | GET [base]/Patient?_list=[id] | _list 指定 | [id]に Patient を保持する List の id を指定する | 200 OK | Bundle | |
17 | GET [base]/Patient?_filter=_id eq 10 and birthdate eq 1980-12-17 ※パラメータは例 | 独自の構文があり、固有のオペレータが使用可能 指定できるオペレータは検索パラメータのデ ータ型によって異る | _filter 指定 | 指定 filter の値を持つ Patient を用意する | 200 OK | Bundle |
18 | GET [base]/?_type=Patient | _type 指定 | 指定した type(Patient)のリソースが存在する状態で実施する | 200 OK | Bundle | |
19 | GET [base]/Patient?_sort=-birthdate,family ※パラメータは例 | _sort 指定 | 指定した type(Patient)のリソースが存在する状態で実施する | 200 OK | Bundle | |
20 | GET [base]/Patient?_count=10 ※パラメータは例 | _count=0 の場合は _summary=count と同じ出力になる | _count 指定 | 指定したリソース(Patient)が存在する状態で実施する | 200 OK | Bundle |
21 | GET [base]/Observation?_include=Observation:patient ※パラメータは例 | 検索対象のリソースから参照されるリソースを返却 | _include 指定 | Observation とそのリソース内で参照している Patient を用意する | 200 OK | Bundle |
22 | GET [base]/Patient?_revinclude=Account:subject ※パラメータは例 | 検索対象のリソースを参照するリソースを返却 | _revinclude 指定 | Patient とその Patient への参照を持つ Account を用意する | 200 OK | Bundle |
23 | GET [base]/Patient?_summary=true | _summary 指定 summary Patient リソースの基本定義で「 summary 」としてマークされている要素のみを返す | 指定した type(Patient)のリソース、summary の対象要素が存在する状態で実施する | 200 OK | Bundle | |
24 | GET [base]/Patient?_summary=text | _summary 指定 「 text 」要素、「 id 」要素、「 meta 」要素、および最上位の必須要素のみを返す | 指定した type(Patient)のリソース、summary の対象要素が存在する状態で実施する | 200 OK | Bundle | |
25 | GET [base]/Patient?_summary=data | _summary 指定 テキスト要素を削除して返す | 指定した type(Patient)のリソース、summary の対象要素が存在する状態で実施する | 200 OK | Bundle | |
26 | GET [base]/Patient?_summary=false | _summary 指定 リソースの全てを返す | 指定した type(Patient)のリソース、summary の対象要素が存在する状態で実施する | 200 OK | Bundle | |
27 | GET [base]/Patient?_summary=count | _summary 指定 リソースの数を返す | 指定した type(Patient)のリソース、summary の対象要素が存在する状態で実施する | 200 OK | Bundle | |
28 | GET [base]/Patient?_elements=identifier,active,link ※パラメータは例 | _elements 指定 | 指定した type(Patient)のリソースが存在する状態で実施する リソースに存在する elements を指定する | 200 OK | Bundle | |
29 | GET [base]/Patient?_contained=false&general-practitioner.family=Careful ※パラメータは例 _contained の設定値 ・false(default): 他のリソースに包含されるリソースは返却しない ・true : 他のリソースに包含されるリソースのみを返却 ・both : 他のリソースに包含されるリソースと包含されない(通常の)リソースの両方を返却 | 他のリソースに包含されるリソースを返却するかどうかを制御 | _contained 指定 | Practitioner とその Practitioner の contained 要素を持つ Patient を用意する | 200 OK | Bundle |
30 | GET [base]/Patient?_containedType=container&general-practitioner.family=Careful ※パラメータは例 _containedType の設定値 ・container(default): コンテナリソースを返却 ・contained : 他のリソースに包含されるリソースのみを返却 | 他のリソースに包含されるリソースを返却する場合、包含されるリソースのみを返却するのか、コンテナリ ソースを含み返却するかを制御 | _containedType 指定 | Practitioner とその Practitioner の contained 要素を持つ Patient を用意する | 200 OK | Bundle |
31-1 | GET [base]/Patient?birthDate=1974-12-25 ※パラメータは例 | 検索パラメータ不正 | 所定の検索パラメータ以外の name が指定された場合 | 400 Bad Request | OperationOutcome | |
31-2 | GET [base]/?_type=Patient&_elements=active ※パラメータは例 | 検索パラメータ 不正 | _type と _elements が同時に指定された場合 | 400 Bad Request | OperationOutcome | |
32 | GET [base]/Patient | 未実装 | 認証が必要である | 401 Unauthorized | OperationOutcome | |
33 | GET [base]/Patient | 未検出 | HTTP ヘッダー Accept にサーバでサポートされていない FHIR バージョンを指定する | 404 Not Found | OperationOutcome | |
34 | GET [base]/Patient | 受理できない | HTTP ヘッダー Accept にサーバでサポートされていないフォーマット(MIME タイプ)を指定する | 406 Not Acceptable | なし |