Skip to content

Commit 9a9b4ea

Browse files
authored
Merge pull request #485 from NHSDigital/release/2025-01-31
Release/2025 01 31
2 parents d986db0 + 2cd804c commit 9a9b4ea

File tree

172 files changed

+2720
-1283
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

172 files changed

+2720
-1283
lines changed

CHANGELOG.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
# Changelog
22

3+
## 2025-01-31
4+
- [PI-745] Create Product and Generate ID
5+
36
## 2025-01-29
4-
- [PI-714] Update Swagger for readibility
7+
- [PI-714] Update Swagger for readability
58
- [PI-759] Integration test timeout
69

710
## 2025-01-24

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2025.01.29
1+
2025.01.31

changelog/2025-01-29.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
- [PI-714] Update Swagger for readibility
1+
- [PI-714] Update Swagger for readability
22
- [PI-759] Integration test timeout

changelog/2025-01-31.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
- [PI-745] Create Product and Generate ID

infrastructure/swagger/05_paths.yaml

Lines changed: 122 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,7 @@ tags:
2020
description: Core EPR API read endpoints
2121
- name: Core EPR Deletion Endpoints
2222
description: Core EPR API deletion endpoints
23-
- name: EPR
24-
description: EPR API endpoints
25-
- name: SDS
23+
- name: SDS Search Endpoints
2624
description: Search Results provided for the SDS FHIR API
2725

2826
paths:
@@ -107,6 +105,8 @@ paths:
107105
post:
108106
operationId: createproductteamepr
109107
summary: Create a Product Team (Epr) resource (POST)
108+
description: |
109+
- Create an EPR Product Team using a product team ID.
110110
tags:
111111
- Core EPR Creation Endpoints
112112
requestBody:
@@ -133,6 +133,8 @@ paths:
133133
get:
134134
operationId: readproductteamepr
135135
summary: Read a Product Team (Epr) resource (GET)
136+
description: |
137+
- Read an EPR Product Team using a product team ID.
136138
tags:
137139
- Core EPR Read Endpoints
138140
parameters:
@@ -152,16 +154,16 @@ paths:
152154
- ${authoriser_name}: []
153155
- app-level0: []
154156

155-
/ProductTeamEpr/{product_team_id}/Product:
157+
/ProductTeam/{product_team_id}/Product:
156158
post:
157159
operationId: createproductendpoint
158160
summary: Create a Product resource (POST)
159-
tags:
160-
- Core EPR Creation Endpoints
161161
description: |
162162
This endpoint creates a new Product resource for the specified Product Team.
163163
**Requirements:**
164164
- A valid Product Team must exist
165+
tags:
166+
- Core Product ID Endpoints
165167
parameters:
166168
- $ref: "#/components/parameters/ProductTeamId"
167169
- $ref: "#/components/parameters/HeaderVersion"
@@ -182,112 +184,177 @@ paths:
182184
security:
183185
- ${authoriser_name}: []
184186
- app-level0: []
187+
# get:
188+
# operationId: searchCpmProduct
189+
# summary: Retrieve all Products associated with a Product Team (GET)
190+
# parameters:
191+
# - $ref: "#/components/parameters/ProductTeamId"
192+
# - $ref: "#/components/parameters/HeaderVersion"
193+
# - $ref: "#/components/parameters/HeaderRequestId"
194+
# - $ref: "#/components/parameters/HeaderCorrelationId"
195+
# responses:
196+
# "200":
197+
# $ref: "#/components/responses/ProductSearch"
198+
# "404":
199+
# $ref: "#/components/responses/NotFound"
200+
# x-amazon-apigateway-integration:
201+
# <<: *ApiGatewayIntegration
202+
# uri: ${method_searchCpmProduct}
203+
# security:
204+
# - ${authoriser_name}: []
205+
# - app-level0: []
206+
207+
/ProductTeam/{product_team_id}/Product/{product_id}:
185208
get:
186-
operationId: searchCpmProduct
187-
summary: Retrieve all Products associated with a Product Team (GET)
209+
operationId: readproductendpoint
210+
summary: Read a Product resource (GET)
188211
description: |
189-
- Retrieve all products for a Product Team using a product team ID.
212+
- Retrieve a product using a product team ID and product ID.
190213
tags:
191-
- Core EPR Read Endpoints
214+
- Core Product ID Endpoints
192215
parameters:
193216
- $ref: "#/components/parameters/ProductTeamId"
217+
- $ref: "#/components/parameters/ProductId"
194218
- $ref: "#/components/parameters/HeaderVersion"
195219
- $ref: "#/components/parameters/HeaderRequestId"
196220
- $ref: "#/components/parameters/HeaderCorrelationId"
197221
responses:
198222
"200":
199-
$ref: "#/components/responses/ProductSearch"
223+
$ref: "#/components/responses/ProductRead"
200224
"404":
201225
$ref: "#/components/responses/NotFound"
202226
x-amazon-apigateway-integration:
203227
<<: *ApiGatewayIntegration
204-
uri: ${method_searchCpmProduct}
228+
uri: ${method_readCpmProduct}
205229
security:
206230
- ${authoriser_name}: []
207231
- app-level0: []
232+
# delete:
233+
# operationId: deleteproductendpoint
234+
# summary: Delete a Product resource (DELETE)
235+
# parameters:
236+
# - $ref: "#/components/parameters/ProductTeamId"
237+
# - $ref: "#/components/parameters/ProductId"
238+
# - $ref: "#/components/parameters/HeaderVersion"
239+
# - $ref: "#/components/parameters/HeaderRequestId"
240+
# - $ref: "#/components/parameters/HeaderCorrelationId"
241+
# responses:
242+
# "204":
243+
# description: Delete Product operation successful
244+
# "404":
245+
# $ref: "#/components/responses/NotFound"
246+
# x-amazon-apigateway-integration:
247+
# <<: *ApiGatewayIntegration
248+
# uri: ${method_deleteCpmProduct}
249+
# security:
250+
# - ${authoriser_name}: []
251+
# - app-level0: []
208252

209-
/ProductTeamEpr/{product_team_id}/Product/{product_id}:
253+
/ProductTeamEpr/{product_team_id}/ProductEpr:
254+
post:
255+
operationId: createproductendpointepr
256+
summary: Create an EPR Product resource (POST)
257+
description: |
258+
This endpoint creates a new EPR Product resource for the specified Product Team.
259+
**Requirements:**
260+
- A valid Product Team must exist
261+
tags:
262+
- Core EPR Creation Endpoints
263+
parameters:
264+
- $ref: "#/components/parameters/ProductTeamId"
265+
- $ref: "#/components/parameters/HeaderVersion"
266+
- $ref: "#/components/parameters/HeaderRequestId"
267+
- $ref: "#/components/parameters/HeaderCorrelationId"
268+
requestBody:
269+
$ref: "#/components/requestBodies/ProductCreateRequestBody"
270+
responses:
271+
"201":
272+
$ref: "#/components/responses/EprProductCreate"
273+
"400":
274+
$ref: "#/components/responses/BadRequest"
275+
"404":
276+
$ref: "#/components/responses/NotFound"
277+
x-amazon-apigateway-integration:
278+
<<: *ApiGatewayIntegration
279+
uri: ${method_createEprProduct}
280+
security:
281+
- ${authoriser_name}: []
282+
- app-level0: []
210283
get:
211-
operationId: readproductendpoint
212-
summary: Read a Product resource (GET)
284+
operationId: searchEprProduct
285+
summary: Retrieve all EPR Products associated with a Product Team (GET)
213286
description: |
214-
- Retrieve a product using a product team ID and product ID.
287+
- Retrieve all EPR products for an EPR Product Team using a product team ID.
215288
tags:
216289
- Core EPR Read Endpoints
217290
parameters:
218291
- $ref: "#/components/parameters/ProductTeamId"
219-
- $ref: "#/components/parameters/ProductId"
220292
- $ref: "#/components/parameters/HeaderVersion"
221293
- $ref: "#/components/parameters/HeaderRequestId"
222294
- $ref: "#/components/parameters/HeaderCorrelationId"
223295
responses:
224296
"200":
225-
$ref: "#/components/responses/ProductRead"
297+
$ref: "#/components/responses/ProductSearch"
226298
"404":
227299
$ref: "#/components/responses/NotFound"
228300
x-amazon-apigateway-integration:
229301
<<: *ApiGatewayIntegration
230-
uri: ${method_readCpmProduct}
302+
uri: ${method_searchEprProduct}
231303
security:
232304
- ${authoriser_name}: []
233305
- app-level0: []
234-
delete:
235-
operationId: deleteproductendpoint
236-
summary: Delete a Product resource (DELETE)
306+
307+
/ProductTeamEpr/{product_team_id}/ProductEpr/{product_id}:
308+
get:
309+
operationId: readproductendpointepr
310+
summary: Read an EPR Product resource (GET)
237311
description: |
238-
- Delete a product using a product team ID and product ID.
312+
- Retrieve an EPR product using an EPR product team ID and product ID.
239313
tags:
240-
- Core EPR Deletion Endpoints
314+
- Core EPR Read Endpoints
241315
parameters:
242316
- $ref: "#/components/parameters/ProductTeamId"
243317
- $ref: "#/components/parameters/ProductId"
244318
- $ref: "#/components/parameters/HeaderVersion"
245319
- $ref: "#/components/parameters/HeaderRequestId"
246320
- $ref: "#/components/parameters/HeaderCorrelationId"
247321
responses:
248-
"204":
249-
description: Delete Product operation successful
322+
"200":
323+
$ref: "#/components/responses/ProductRead"
250324
"404":
251325
$ref: "#/components/responses/NotFound"
252326
x-amazon-apigateway-integration:
253327
<<: *ApiGatewayIntegration
254-
uri: ${method_deleteCpmProduct}
328+
uri: ${method_readEprProduct}
255329
security:
256330
- ${authoriser_name}: []
257331
- app-level0: []
258-
259-
/ProductTeamEpr/{product_team_id}/Product/Epr:
260-
post:
261-
operationId: createproductforeprendpoint
262-
summary: Create an EPR Product resource (POST)
263-
tags:
264-
- EPR
332+
delete:
333+
operationId: deleteeprproductendpoint
334+
summary: Delete an EPR Product resource (DELETE)
265335
description: |
266-
This endpoint creates a new EPR Product resource for the specified Product Team.
267-
**Requirements:**
268-
- A valid Product Team must exist
336+
- Delete an EPR product using an EPR product team ID and product ID.
337+
tags:
338+
- Core EPR Deletion Endpoints
269339
parameters:
270340
- $ref: "#/components/parameters/ProductTeamId"
341+
- $ref: "#/components/parameters/ProductId"
271342
- $ref: "#/components/parameters/HeaderVersion"
272343
- $ref: "#/components/parameters/HeaderRequestId"
273344
- $ref: "#/components/parameters/HeaderCorrelationId"
274-
requestBody:
275-
$ref: "#/components/requestBodies/ProductCreateRequestBody"
276345
responses:
277-
"201":
278-
$ref: "#/components/responses/EprProductCreate"
279-
"400":
280-
$ref: "#/components/responses/BadRequest"
346+
"204":
347+
description: Delete Product operation successful
281348
"404":
282349
$ref: "#/components/responses/NotFound"
283350
x-amazon-apigateway-integration:
284351
<<: *ApiGatewayIntegration
285-
uri: ${method_createCpmProductForEpr}
352+
uri: ${method_deleteEprProduct}
286353
security:
287354
- ${authoriser_name}: []
288355
- app-level0: []
289356

290-
? /ProductTeamEpr/{product_team_id}/Product/{product_id}/{environment}/DeviceReferenceData
357+
? /ProductTeamEpr/{product_team_id}/ProductEpr/{product_id}/{environment}/DeviceReferenceData
291358
: get:
292359
operationId: searchDeviceReferenceData
293360
summary: Retrieve all Data Reference Data resources associated with a Product (GET)
@@ -343,7 +410,7 @@ paths:
343410
- ${authoriser_name}: []
344411
- app-level0: []
345412

346-
? /ProductTeamEpr/{product_team_id}/Product/{product_id}/{environment}/DeviceReferenceData/MhsMessageSet
413+
? /ProductTeamEpr/{product_team_id}/ProductEpr/{product_id}/{environment}/DeviceReferenceData/MhsMessageSet
347414
: post:
348415
operationId: createDeviceReferenceDataMessageSet
349416
summary: Create a Device Reference Data Message Set resource (POST)
@@ -380,7 +447,7 @@ paths:
380447
- ${authoriser_name}: []
381448
- app-level0: []
382449

383-
? /ProductTeamEpr/{product_team_id}/Product/{product_id}/{environment}/DeviceReferenceData/AccreditedSystemsAdditionalInteractions
450+
? /ProductTeamEpr/{product_team_id}/ProductEpr/{product_id}/{environment}/DeviceReferenceData/AccreditedSystemsAdditionalInteractions
384451
: post:
385452
operationId: createDeviceReferenceDataAdditionalInteractions
386453
summary: Create a Device Reference Data Additional Interactions resource (POST)
@@ -417,7 +484,7 @@ paths:
417484
- ${authoriser_name}: []
418485
- app-level0: []
419486

420-
? /ProductTeamEpr/{product_team_id}/Product/{product_id}/{environment}/DeviceReferenceData/{device_reference_data_id}
487+
? /ProductTeamEpr/{product_team_id}/ProductEpr/{product_id}/{environment}/DeviceReferenceData/{device_reference_data_id}
421488
: get:
422489
operationId: readDeviceReferenceData
423490
summary: Read a Device Reference Data resource (GET)
@@ -445,8 +512,8 @@ paths:
445512
- ${authoriser_name}: []
446513
- app-level0: []
447514

448-
/ProductTeamEpr/{product_team_id}/Product/{product_id}/{environment}/Device:
449-
post:
515+
? /ProductTeamEpr/{product_team_id}/ProductEpr/{product_id}/{environment}/Device
516+
: post:
450517
operationId: createDevice
451518
summary: Create a Device resource (POST)
452519
tags:
@@ -476,7 +543,7 @@ paths:
476543
- ${authoriser_name}: []
477544
- app-level0: []
478545

479-
? /ProductTeamEpr/{product_team_id}/Product/{product_id}/{environment}/Device/{device_id}
546+
? /ProductTeamEpr/{product_team_id}/ProductEpr/{product_id}/{environment}/Device/{device_id}
480547
: get:
481548
operationId: readDevice
482549
summary: Read a Device resource (GET)
@@ -504,7 +571,7 @@ paths:
504571
- ${authoriser_name}: []
505572
- app-level0: []
506573

507-
? /ProductTeamEpr/{product_team_id}/Product/{product_id}/{environment}/Device/MessageHandlingSystem
574+
? /ProductTeamEpr/{product_team_id}/ProductEpr/{product_id}/{environment}/Device/MessageHandlingSystem
508575
: post:
509576
operationId: createDeviceMessageHandlingSystem
510577
summary: Create a Message Handling System Device resource (POST)
@@ -542,7 +609,7 @@ paths:
542609
- ${authoriser_name}: []
543610
- app-level0: []
544611

545-
? /ProductTeamEpr/{product_team_id}/Product/{product_id}/{environment}/Device/AccreditedSystem
612+
? /ProductTeamEpr/{product_team_id}/ProductEpr/{product_id}/{environment}/Device/AccreditedSystem
546613
: post:
547614
operationId: createDeviceAccreditedSystem
548615
summary: Create a Accredited System Device resource (POST)
@@ -587,7 +654,7 @@ paths:
587654
description: >
588655
Retrieve a list of Devices to be used primarily by the SDS FHIR API.
589656
tags:
590-
- SDS
657+
- SDS Search Endpoints
591658
parameters:
592659
- $ref: "#/components/parameters/NhsIdCode"
593660
- $ref: "#/components/parameters/NhsMhsManOrg"
@@ -614,7 +681,7 @@ paths:
614681
description: >
615682
Retrieve a list of Endpoints to be used primarily by the SDS FHIR API.
616683
tags:
617-
- SDS
684+
- SDS Search Endpoints
618685
parameters:
619686
- $ref: "#/components/parameters/NhsIdCode"
620687
- $ref: "#/components/parameters/NhsMhsInteration"

0 commit comments

Comments
 (0)