@@ -926,8 +926,152 @@ paths:
926
926
$ref : " #/components/responses/forbidden"
927
927
" 404 " :
928
928
$ref : " #/components/responses/NotFound"
929
+ /v2/namespaces/{namespace}/repositories :
930
+ parameters :
931
+ - $ref : " #/components/parameters/namespace"
932
+ get :
933
+ operationId : listNamespaceRepositories
934
+ summary : List repositories in a namespace
935
+ description : |
936
+ Returns a list of repositories within the specified namespace (organization or user).
937
+
938
+ Public repositories are accessible to everyone, while private repositories require appropriate authentication and permissions.
939
+ tags :
940
+ - repositories
941
+ security :
942
+ - bearerAuth : [ ]
943
+ - { } # Allow anonymous access for public repositories
944
+ parameters :
945
+ - in : query
946
+ name : page
947
+ required : false
948
+ schema :
949
+ type : integer
950
+ minimum : 1
951
+ default : 1
952
+ description : Page number to get. Defaults to 1.
953
+ - in : query
954
+ name : page_size
955
+ required : false
956
+ schema :
957
+ type : integer
958
+ minimum : 1
959
+ maximum : 1000
960
+ default : 10
961
+ description : Number of repositories to get per page. Defaults to 10. Max of 1000.
962
+ - in : query
963
+ name : name
964
+ required : false
965
+ schema :
966
+ type : string
967
+ description : Filter repositories by name (partial match).
968
+ - in : query
969
+ name : ordering
970
+ required : false
971
+ schema :
972
+ type : string
973
+ enum :
974
+ - name
975
+ - -name
976
+ - last_updated
977
+ - -last_updated
978
+ - pull_count
979
+ - -pull_count
980
+ description : |
981
+ Order repositories by the specified field. Prefix with '-' for descending order.
982
+ Available options:
983
+ - `name` / `-name`: Repository name (ascending/descending)
984
+ - `last_updated` / `-last_updated`: Last update time (ascending/descending)
985
+ - `pull_count` / `-pull_count`: Number of pulls (ascending/descending)
986
+ responses :
987
+ " 200 " :
988
+ description : List of repositories
989
+ content :
990
+ application/json :
991
+ schema :
992
+ $ref : " #/components/schemas/list_repositories_response"
993
+ examples :
994
+ repositories_list :
995
+ value :
996
+ count : 287
997
+ next : " https://hub.docker.com/v2/namespaces/docker/repositories?page=2&page_size=2"
998
+ previous : null
999
+ results :
1000
+ - name : " highland_builder"
1001
+ namespace : " docker"
1002
+ repository_type : " image"
1003
+ status : 1
1004
+ status_description : " active"
1005
+ description : " Image for performing Docker build requests"
1006
+ is_private : false
1007
+ star_count : 7
1008
+ pull_count : 15722123
1009
+ last_updated : " 2023-06-20T10:44:45.459826Z"
1010
+ last_modified : " 2024-10-16T13:48:34.145251Z"
1011
+ date_registered : " 2015-05-19T21:13:35.937763Z"
1012
+ affiliation : " "
1013
+ media_types :
1014
+ - " application/octet-stream"
1015
+ - " application/vnd.docker.container.image.v1+json"
1016
+ - " application/vnd.docker.distribution.manifest.v1+prettyjws"
1017
+ content_types :
1018
+ - " unrecognized"
1019
+ - " image"
1020
+ categories :
1021
+ - name : " Languages & frameworks"
1022
+ slug : " languages-and-frameworks"
1023
+ - name : " Integration & delivery"
1024
+ slug : " integration-and-delivery"
1025
+ - name : " Operating systems"
1026
+ slug : " operating-systems"
1027
+ storage_size : 488723114800
1028
+ - name : " whalesay"
1029
+ namespace : " docker"
1030
+ repository_type : null
1031
+ status : 1
1032
+ status_description : " active"
1033
+ description : " An image for use in the Docker demo tutorial"
1034
+ is_private : false
1035
+ star_count : 757
1036
+ pull_count : 130737682
1037
+ last_updated : " 2015-06-19T19:06:27.388123Z"
1038
+ last_modified : " 2024-10-16T13:48:34.145251Z"
1039
+ date_registered : " 2015-06-09T18:16:36.527329Z"
1040
+ affiliation : " "
1041
+ media_types :
1042
+ - " application/vnd.docker.distribution.manifest.v1+prettyjws"
1043
+ content_types :
1044
+ - " image"
1045
+ categories :
1046
+ - name : " Languages & frameworks"
1047
+ slug : " languages-and-frameworks"
1048
+ - name : " Integration & delivery"
1049
+ slug : " integration-and-delivery"
1050
+ storage_size : 103666708
1051
+ " 400 " :
1052
+ description : Bad Request - Invalid request parameters
1053
+ content :
1054
+ application/json :
1055
+ schema :
1056
+ $ref : " #/components/schemas/error"
1057
+ examples :
1058
+ invalid_ordering :
1059
+ summary : Invalid ordering value
1060
+ value :
1061
+ fields :
1062
+ ordering : [ "Invalid ordering value. Must be one of: name, -name, last_updated, -last_updated, pull_count, -pull_count" ]
1063
+ text : " Invalid ordering value"
1064
+ " 401 " :
1065
+ $ref : " #/components/responses/unauthorized"
1066
+ " 403 " :
1067
+ $ref : " #/components/responses/forbidden"
1068
+ " 404 " :
1069
+ description : Page not found - occurs when requesting a page number `>1` that exceeds the available results
1070
+ content :
1071
+ application/json :
1072
+ schema :
1073
+ $ref : " #/components/schemas/error"
929
1074
930
-
931
1075
/v2/orgs/{org_name}/members :
932
1076
parameters :
933
1077
- $ref : " #/components/parameters/org_name"
@@ -2009,6 +2153,129 @@ components:
2009
2153
schema :
2010
2154
$ref : " #/components/schemas/scim_user"
2011
2155
schemas :
2156
+ repository_list_entry :
2157
+ type : object
2158
+ properties :
2159
+ name :
2160
+ type : string
2161
+ description : Name of the repository
2162
+ example : " hello-world"
2163
+ namespace :
2164
+ type : string
2165
+ description : Namespace (organization or username) that owns the repository
2166
+ example : " docker"
2167
+ repository_type :
2168
+ type : string
2169
+ description : Type of repository
2170
+ enum :
2171
+ - image
2172
+ - plugin
2173
+ - null
2174
+ example : " image"
2175
+ nullable : true
2176
+ status :
2177
+ type : integer
2178
+ description : Repository status code
2179
+ example : 1
2180
+ status_description :
2181
+ type : string
2182
+ description : Human-readable repository status
2183
+ enum :
2184
+ - active
2185
+ - inactive
2186
+ example : " active"
2187
+ description :
2188
+ type : string
2189
+ description : Repository description
2190
+ nullable : true
2191
+ example : " Hello World! (an example of minimal Dockerization)"
2192
+ is_private :
2193
+ type : boolean
2194
+ description : Whether the repository is private
2195
+ example : false
2196
+ star_count :
2197
+ type : integer
2198
+ description : Number of users who starred this repository
2199
+ minimum : 0
2200
+ example : 1234
2201
+ pull_count :
2202
+ type : integer
2203
+ description : Total number of pulls for this repository
2204
+ minimum : 0
2205
+ example : 50000000
2206
+ last_updated :
2207
+ type : string
2208
+ format : date-time
2209
+ description : ISO 8601 timestamp of when the repository was last updated
2210
+ example : " 2023-12-01T10:30:00Z"
2211
+ nullable : true
2212
+ last_modified :
2213
+ type : string
2214
+ format : date-time
2215
+ description : ISO 8601 timestamp of when the repository was last modified
2216
+ example : " 2023-12-01T10:30:00Z"
2217
+ nullable : true
2218
+ date_registered :
2219
+ type : string
2220
+ format : date-time
2221
+ description : ISO 8601 timestamp of when the repository was created
2222
+ example : " 2013-06-19T19:07:54Z"
2223
+ affiliation :
2224
+ type : string
2225
+ description : User's affiliation with the repository (empty string if no affiliation)
2226
+ example : " "
2227
+ media_types :
2228
+ type : array
2229
+ description : Media types supported by this repository
2230
+ items :
2231
+ type : string
2232
+ example :
2233
+ - " application/vnd.docker.plugin.v1+json"
2234
+ content_types :
2235
+ type : array
2236
+ description : Content types supported by this repository
2237
+ items :
2238
+ type : string
2239
+ example :
2240
+ - " plugin"
2241
+ categories :
2242
+ type : array
2243
+ description : Categories associated with this repository
2244
+ items :
2245
+ $ref : " #/components/schemas/category"
2246
+ example : []
2247
+ storage_size :
2248
+ type : integer
2249
+ description : Storage size in bytes used by this repository
2250
+ minimum : 0
2251
+ example : 232719127
2252
+ category :
2253
+ type : object
2254
+ required :
2255
+ - name
2256
+ - slug
2257
+ properties :
2258
+ name :
2259
+ type : string
2260
+ description : Human-readable name of the category
2261
+ example : " Databases"
2262
+ minLength : 1
2263
+ slug :
2264
+ type : string
2265
+ description : URL-friendly identifier for the category
2266
+ example : " databases"
2267
+ minLength : 1
2268
+ pattern : " ^[a-z0-9]+(?:-[a-z0-9]+)*$"
2269
+ description : Repository category for classification and discovery
2270
+ list_repositories_response :
2271
+ allOf :
2272
+ - $ref : " #/components/schemas/page"
2273
+ - type : object
2274
+ properties :
2275
+ results :
2276
+ type : array
2277
+ items :
2278
+ $ref : " #/components/schemas/repository_list_entry"
2012
2279
UsersLoginRequest :
2013
2280
description : User login details
2014
2281
type : object
0 commit comments