12
12
license :
13
13
name : Apache 2.0
14
14
url : https://github.com/CycloneDX/transparency-exchange-api/blob/main/LICENSE
15
- version : 0.1 .0-beta.1
15
+ version : 0.2 .0-beta.2
16
16
servers :
17
17
- url : http://localhost/tea/v1
18
18
description : Local development
@@ -52,15 +52,11 @@ paths:
52
52
description : UUID of TEA Product in the TEA server
53
53
schema :
54
54
" $ref " : " #/components/schemas/uuid"
55
+ - $ref : " #/components/parameters/page-offset"
56
+ - $ref : " #/components/parameters/page-size"
55
57
responses :
56
58
' 200 ' :
57
- description : Requested Releases of TEA Product found and returned
58
- content :
59
- application/json :
60
- schema :
61
- type : array
62
- items :
63
- " $ref " : " #/components/schemas/productRelease"
59
+ $ref : " #/components/responses/paginated-product-release"
64
60
' 400 ' :
65
61
$ref : " #/components/responses/400-invalid-request"
66
62
' 404 ' :
94
90
/productReleases :
95
91
get :
96
92
description : Returns a list of TEA product releases. Note that multiple product releases may match.
97
- operationId : getTeaProductReleaseByIdentifier
93
+ operationId : queryTeaProductReleases
98
94
parameters :
99
95
- $ref : " #/components/parameters/page-offset"
100
96
- $ref : " #/components/parameters/page-size"
@@ -111,7 +107,7 @@ paths:
111
107
get :
112
108
description : Returns a list of TEA products. Note that multiple products may
113
109
match.
114
- operationId : getTeaProductByIdentifier
110
+ operationId : queryTeaProducts
115
111
parameters :
116
112
- $ref : " #/components/parameters/page-offset"
117
113
- $ref : " #/components/parameters/page-size"
@@ -174,15 +170,39 @@ paths:
174
170
$ref : " #/components/responses/404-object-by-id-not-found"
175
171
tags :
176
172
- TEA Component
177
- /release/{uuid}/collection/latest :
173
+ /componentRelease/{uuid} :
174
+ get :
175
+ description : Get the TEA Component Release with its latest collection
176
+ operationId : getComponentReleaseById
177
+ parameters :
178
+ - name : uuid
179
+ in : path
180
+ required : true
181
+ description : UUID of TEA Component Release in the TEA server
182
+ schema :
183
+ " $ref " : " #/components/schemas/uuid"
184
+ responses :
185
+ ' 200 ' :
186
+ description : Requested TEA Component Release and its latest Collection found and returned
187
+ content :
188
+ application/json :
189
+ schema :
190
+ " $ref " : " #/components/schemas/component-release-with-collection"
191
+ ' 400 ' :
192
+ $ref : " #/components/responses/400-invalid-request"
193
+ ' 404 ' :
194
+ $ref : " #/components/responses/404-object-by-id-not-found"
195
+ tags :
196
+ - TEA Component Release
197
+ /componentRelease/{uuid}/collection/latest :
178
198
get :
179
- description : Get the latest TEA Collection belonging to the TEA Release
199
+ description : Get the latest TEA Collection belonging to the TEA Component Release
180
200
operationId : getLatestCollection
181
201
parameters :
182
202
- name : uuid
183
203
in : path
184
204
required : true
185
- description : UUID of TEA Release in the TEA server
205
+ description : UUID of TEA Component Release in the TEA server
186
206
schema :
187
207
" $ref " : " #/components/schemas/uuid"
188
208
responses :
@@ -197,7 +217,7 @@ paths:
197
217
' 404 ' :
198
218
$ref : " #/components/responses/404-object-by-id-not-found"
199
219
tags :
200
- - TEA Release
220
+ - TEA Component Release
201
221
/productRelease/{uuid}/collection/latest :
202
222
get :
203
223
description : Get the latest TEA Collection belonging to the TEA Product Release
@@ -222,15 +242,15 @@ paths:
222
242
$ref : " #/components/responses/404-object-by-id-not-found"
223
243
tags :
224
244
- TEA Product Release
225
- /release /{uuid}/collections :
245
+ /componentRelease /{uuid}/collections :
226
246
get :
227
- description : Get the TEA Collections belonging to the TEA Release
247
+ description : Get the TEA Collections belonging to the TEA Component Release
228
248
operationId : getCollectionsByReleaseId
229
249
parameters :
230
250
- name : uuid
231
251
in : path
232
252
required : true
233
- description : UUID of TEA Release in the TEA server
253
+ description : UUID of TEA Component Release in the TEA server
234
254
schema :
235
255
" $ref " : " #/components/schemas/uuid"
236
256
responses :
@@ -247,7 +267,7 @@ paths:
247
267
' 404 ' :
248
268
$ref : " #/components/responses/404-object-by-id-not-found"
249
269
tags :
250
- - TEA Release
270
+ - TEA Component Release
251
271
/productRelease/{uuid}/collections :
252
272
get :
253
273
description : Get the TEA Collections belonging to the TEA Product Release
@@ -282,7 +302,7 @@ paths:
282
302
- name : uuid
283
303
in : path
284
304
required : true
285
- description : UUID of TEA Release in the TEA server
305
+ description : UUID of TEA Product Release in the TEA server
286
306
schema :
287
307
" $ref " : " #/components/schemas/uuid"
288
308
- name : collectionVersion
@@ -304,9 +324,9 @@ paths:
304
324
$ref : " #/components/responses/404-object-by-id-not-found"
305
325
tags :
306
326
- TEA Product Release
307
- /release /{uuid}/collection/{collectionVersion} :
327
+ /componentRelease /{uuid}/collection/{collectionVersion} :
308
328
get :
309
- description : Get a specific Collection (by version) for a TEA Release by its UUID
329
+ description : Get a specific Collection (by version) for a TEA Component Release by its UUID
310
330
operationId : getCollection
311
331
parameters :
312
332
- name : uuid
@@ -333,7 +353,7 @@ paths:
333
353
' 404 ' :
334
354
$ref : " #/components/responses/404-object-by-id-not-found"
335
355
tags :
336
- - TEA Release
356
+ - TEA Component Release
337
357
/artifact/{uuid} :
338
358
get :
339
359
description : Get metadata for specific TEA artifact
@@ -436,6 +456,10 @@ components:
436
456
product :
437
457
description : UUID of the TEA Product this release belongs to
438
458
" $ref " : " #/components/schemas/uuid"
459
+ productName :
460
+ description : Name of the TEA Product this release belongs to
461
+ type : string
462
+ example : Apache Log4j 2
439
463
version :
440
464
description : Version number of the product release
441
465
type : string
@@ -542,7 +566,7 @@ components:
542
566
543
567
544
568
#
545
- # TEA Release and related objects
569
+ # TEA Component Release and related objects
546
570
#
547
571
release :
548
572
type : object
@@ -554,6 +578,10 @@ components:
554
578
component :
555
579
description : UUID of the TEA Component this release belongs to
556
580
" $ref " : " #/components/schemas/uuid"
581
+ componentName :
582
+ description : Name of the TEA Component this release belongs to
583
+ type : string
584
+ example : tomcat
557
585
version :
558
586
description : Version number
559
587
type : string
@@ -707,6 +735,57 @@ components:
707
735
url : https://dlcdn.apache.org/tomcat/tomcat-11/v11.0.7/bin/apache-tomcat-11.0.7.exe
708
736
signatureUrl : https://downloads.apache.org/tomcat/tomcat-11/v11.0.7/bin/apache-tomcat-11.0.7.exe.asc
709
737
738
+ component-release-with-collection :
739
+ type : object
740
+ description : A TEA Component Release combined with its latest collection
741
+ properties :
742
+ release :
743
+ description : The TEA Component Release information
744
+ $ref : " #/components/schemas/release"
745
+ latestCollection :
746
+ description : The latest TEA Collection for this component release
747
+ $ref : " #/components/schemas/collection"
748
+ required :
749
+ - release
750
+ - latestCollection
751
+ examples :
752
+ - release :
753
+ uuid : 605d0ecb-1057-40e4-9abf-c400b10f0345
754
+ version : " 11.0.7"
755
+ createdDate : 2025-05-07T18:08:00Z
756
+ releaseDate : 2025-05-12T18:08:00Z
757
+ identifiers :
758
+ - idType : PURL
759
+ idValue :
pkg:maven/org.apache.tomcat/[email protected]
760
+ latestCollection :
761
+ uuid : 605d0ecb-1057-40e4-9abf-c400b10f0345
762
+ version : 2
763
+ date : 2025-05-12T18:08:00Z
764
+ belongsTo : COMPONENT_RELEASE
765
+ updateReason :
766
+ type : INITIAL_RELEASE
767
+ comment : Initial collection for this release
768
+ artifacts :
769
+ - uuid : 1cb47b95-8bf8-3bad-a5a4-0d54d86e10ce
770
+ name : Build SBOM
771
+ type : BOM
772
+ formats :
773
+ - mimeType : application/vnd.cyclonedx+xml
774
+ description : CycloneDX SBOM (XML)
775
+ url : https://repo.maven.apache.org/maven2/org/apache/tomcat/tomcat/11.0.7/tomcat-11.0.7-cyclonedx.xml
776
+ checksums :
777
+ - algType : SHA-256
778
+ algValue : 9da736a1cdd27231e70187cbc67398d29ca0b714f885e7032da9f1fb247693c1
779
+ - uuid : dfa35519-9734-4259-bba1-3e825cf4be06
780
+ name : Vulnerability Disclosure Report
781
+ type : VULNERABILITIES
782
+ formats :
783
+ - mimeType : application/vnd.cyclonedx+xml
784
+ description : CycloneDX VDR (XML)
785
+ url : https://tomcat.apache.org/cyclonedx/vdr.xml
786
+ checksums :
787
+ - algType : SHA-256
788
+ algValue : 75b81020b3917cb682b1a7605ade431e062f7a4c01a412f0b87543b6e995ad2a
710
789
711
790
#
712
791
# TEA Collection and related objects
@@ -797,7 +876,7 @@ components:
797
876
type : string
798
877
description : Indicates whether a collection belongs to a component release or a product release
799
878
enum :
800
- - RELEASE
879
+ - COMPONENT_RELEASE
801
880
- PRODUCT_RELEASE
802
881
803
882
#
@@ -921,6 +1000,30 @@ components:
921
1000
- pageStartIndex
922
1001
- pageSize
923
1002
- totalResults
1003
+
1004
+ paginated-product-response :
1005
+ type : object
1006
+ description : A paginated response containing TEA Products
1007
+ allOf :
1008
+ - $ref : " #/components/schemas/pagination-details"
1009
+ - type : object
1010
+ properties :
1011
+ results :
1012
+ type : array
1013
+ items :
1014
+ $ref : " #/components/schemas/product"
1015
+
1016
+ paginated-product-release-response :
1017
+ type : object
1018
+ description : A paginated response containing TEA Product Releases
1019
+ allOf :
1020
+ - $ref : " #/components/schemas/pagination-details"
1021
+ - type : object
1022
+ properties :
1023
+ results :
1024
+ type : array
1025
+ items :
1026
+ $ref : " #/components/schemas/productRelease"
924
1027
responses :
925
1028
204-common-delete :
926
1029
description : Object deleted successfully
@@ -943,27 +1046,13 @@ components:
943
1046
content :
944
1047
application/json :
945
1048
schema :
946
- allOf :
947
- - $ref : " #/components/schemas/pagination-details"
948
- - type : object
949
- properties :
950
- results :
951
- type : array
952
- items :
953
- " $ref " : " #/components/schemas/product"
1049
+ $ref : " #/components/schemas/paginated-product-response"
954
1050
paginated-product-release :
955
1051
description : A paginated response containing TEA Product Releases
956
1052
content :
957
1053
application/json :
958
1054
schema :
959
- allOf :
960
- - $ref : " #/components/schemas/pagination-details"
961
- - type : object
962
- properties :
963
- results :
964
- type : array
965
- items :
966
- " $ref " : " #/components/schemas/productRelease"
1055
+ $ref : " #/components/schemas/paginated-product-release-response"
967
1056
parameters :
968
1057
# Pagination
969
1058
page-offset :
@@ -1037,7 +1126,7 @@ tags:
1037
1126
- name : TEA Product
1038
1127
- name : TEA Product Release
1039
1128
- name : TEA Component
1040
- - name : TEA Release
1129
+ - name : TEA Component Release
1041
1130
- name : TEA Artifact
1042
1131
externalDocs :
1043
1132
description : Transparency Exchange API specification
0 commit comments