Skip to content

Commit 002b85b

Browse files
authored
VED-1054: Add API documentation for search by disease type (#1276)
* Modified Immunisation FHIR API documentation to include target disease search functionality - Updated the API specification to clarify the use of the new `target-disease` parameter alongside `-immunization.target` for searching vaccination records. - Improved descriptions for both parameters to ensure clear guidelines on their usage and mutual exclusivity. - Added examples and links to supported target disease codes to aid developers in implementing the search feature effectively. - Ensured consistency in error handling documentation for invalid parameter combinations. * Refine Immunisation FHIR API documentation for target disease parameter - Updated descriptions for the `target-disease` parameter to clarify its expression format as `system|code`. - Ensured consistency in language throughout the documentation to enhance clarity for developers implementing the search functionality. - Maintained links to the supported target disease list for reference.
1 parent 9e3f861 commit 002b85b

1 file changed

Lines changed: 29 additions & 16 deletions

File tree

specification/immunisation-fhir-api.yaml

Lines changed: 29 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1314,9 +1314,10 @@ paths:
13141314
## Overview
13151315
13161316
Use this interaction to search for a patient's vaccination records using
1317-
their NHS number and DiseaseType. You can request the patient's
1318-
vaccination history for one or more specified 'disease types'. You may
1319-
limit the vaccination records by specifying date criteria, for example
1317+
their NHS number and either vaccination type (-immunization.target) or
1318+
target disease (target-disease). You can request the patient's vaccination
1319+
history for one or more disease types, or by SNOMED target disease code(s).
1320+
You may limit the vaccination records by specifying date criteria, for example
13201321
if you only need to know about vaccinations administered in the last 12
13211322
months.
13221323
@@ -1358,7 +1359,7 @@ paths:
13581359
body |
13591360
13601361
| Bad Request | Didn't pass required fields
1361-
`patient.identifier` or `-immunization.target` | HTTP Status
1362+
`patient.identifier` or `-immunization.target` or `target-disease` | HTTP Status
13621363
400 Bad Request |
13631364
parameters:
13641365
- $ref: "#/components/parameters/CorrelationID"
@@ -1391,7 +1392,8 @@ paths:
13911392
A POST search allows
13921393
you to supply some or all parameters in the body of the request should
13931394
you need to do so. It offers the same search functionality as the GET
1394-
search interaction.
1395+
search interaction, including search by vaccination type
1396+
(-immunization.target) or by target disease (target-disease).
13951397
13961398
13971399
## Sandbox testing
@@ -1420,7 +1422,7 @@ paths:
14201422
body |
14211423
14221424
| Bad Request | Didn't pass required fields
1423-
`patient.identifier` or `-immunization.target` | HTTP Status
1425+
`patient.identifier` or `-immunization.target` or `target-disease` | HTTP Status
14241426
400 Bad Request |
14251427
parameters:
14261428
- $ref: "#/components/parameters/CorrelationID"
@@ -4248,7 +4250,9 @@ components:
42484250
type: string
42494251
description: >
42504252
Specific procedures, disorders, diseases, infections or
4251-
organisms (vaccination type). Cannot be used with target-disease.
4253+
organisms (vaccination type). Cannot be used with target-disease or
4254+
identifier. For patient search, one of -immunization.target or
4255+
target-disease is required.
42524256
example: FLU
42534257
enum:
42544258
- 3IN1
@@ -4265,10 +4269,14 @@ components:
42654269
target-disease:
42664270
type: string
42674271
description: >
4268-
FHIR-compliant search by target disease. Format system|code with
4269-
system http://snomed.info/sct and code a SNOMED code from the
4270-
supported target disease list. Comma-separated for multiple (OR).
4271-
Cannot be used with -immunization.target.
4272+
Search by target disease using FHIR-compliant SNOMED codes. Expressed as
4273+
`system|code` with system `http://snomed.info/sct` and code from the
4274+
[supported target disease list](https://digital.nhs.uk/developer/guides-and-documentation/building-healthcare-software/vaccinations/coding-for-vaccination-disease-types#how-this-applies-to-vaccinations-submitted-to-the-api).
4275+
Comma-separated for multiple (OR). Cannot be used with
4276+
-immunization.target or identifier. For patient search, one of
4277+
-immunization.target or target-disease is required. Returns
4278+
vaccinations that protect against the given disease(s), including
4279+
combination vaccines (e.g. MMR, MMRV for measles).
42724280
example: "http://snomed.info/sct|14189004"
42734281
"-date.from":
42744282
type: string
@@ -4381,11 +4389,16 @@ components:
43814389
in: query
43824390
name: target-disease
43834391
description: |
4384-
FHIR-compliant search by target disease. Value must be in the format system|code where
4385-
system MUST be http://snomed.info/sct and code MUST be a SNOMED code from the supported
4386-
target disease list. Multiple comma-separated values allowed (OR). Cannot be used with
4387-
-immunization.target or identifier. Returns vaccinations that protect against the given
4388-
disease(s), including combination vaccines (e.g. MMR, MMRV for measles).
4392+
Search by target disease using FHIR-compliant SNOMED codes. Use this parameter to
4393+
retrieve vaccinations that protect against specific disease(s), including combination
4394+
vaccines (e.g. MMR or MMRV when searching for measles).
4395+
4396+
Expressed as `system|code` where system MUST be `http://snomed.info/sct` and code MUST be
4397+
a SNOMED code from the [supported target disease list](https://digital.nhs.uk/developer/guides-and-documentation/building-healthcare-software/vaccinations/coding-for-vaccination-disease-types#how-this-applies-to-vaccinations-submitted-to-the-api).
4398+
Multiple comma-separated values are allowed (OR). Cannot be used with
4399+
-immunization.target or identifier. For patient search, one of -immunization.target
4400+
or target-disease is required. Invalid or unsupported codes may result in
4401+
OperationOutcome entries in the response or 400 when all values are invalid.
43894402
required: false
43904403
schema:
43914404
type: string

0 commit comments

Comments
 (0)