Skip to content

Commit 9b5fc25

Browse files
OAS Update
1 parent 8321486 commit 9b5fc25

File tree

1 file changed

+316
-0
lines changed

1 file changed

+316
-0
lines changed
Lines changed: 316 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,316 @@
1+
{
2+
"components": {
3+
"parameters": {
4+
"force": {
5+
"description": "If true, deletes all child resources. If false, the resource remains in a 'deletion state' while child resources exist.",
6+
"in": "query",
7+
"name": "force",
8+
"schema": {
9+
"default": false,
10+
"type": "boolean"
11+
}
12+
},
13+
"page": {
14+
"description": "A page to retrieve the next page of results.",
15+
"in": "query",
16+
"name": "page",
17+
"schema": {
18+
"maxLength": 1024,
19+
"type": "string"
20+
}
21+
},
22+
"pageSize": {
23+
"description": "Maximum number of items to return",
24+
"in": "query",
25+
"name": "pageSize",
26+
"schema": {
27+
"default": 10,
28+
"format": "int32",
29+
"maximum": 100,
30+
"minimum": 1,
31+
"type": "integer"
32+
}
33+
}
34+
},
35+
"responses": {
36+
"conflict": {
37+
"description": "Conflict. The resource has been modified by some other client. Please try again."
38+
},
39+
"internalServerError": {
40+
"description": "Internal server error. The application experienced some unexpected situation."
41+
},
42+
"notFound": {
43+
"description": "Not found. The resource has not been found."
44+
}
45+
},
46+
"schemas": {
47+
"DockerManifestV2": {
48+
"description": "Docker Manifest Schema 2, often supported by OCI registries for compatibility.\n",
49+
"properties": {
50+
"config": {
51+
"$ref": "#/components/schemas/Descriptor"
52+
},
53+
"layers": {
54+
"items": {
55+
"$ref": "#/components/schemas/Descriptor"
56+
},
57+
"type": "array"
58+
},
59+
"mediaType": {
60+
"enum": [
61+
"application/vnd.docker.distribution.manifest.v2+json"
62+
],
63+
"type": "string"
64+
},
65+
"schemaVersion": {
66+
"enum": [
67+
2
68+
],
69+
"format": "int64",
70+
"type": "integer"
71+
}
72+
},
73+
"required": [
74+
"schemaVersion",
75+
"mediaType",
76+
"config",
77+
"layers"
78+
],
79+
"type": "object"
80+
},
81+
"OCIImageIndex": {
82+
"description": "The OCI Image Index provides a schema for a manifest list,\nwhich allows a single image reference to refer to a set of manifests\nfor different platforms.\n",
83+
"properties": {
84+
"annotations": {
85+
"additionalProperties": {
86+
"type": "string"
87+
},
88+
"description": "Arbitrary metadata for the image index.",
89+
"type": "object"
90+
},
91+
"manifests": {
92+
"items": {
93+
"allOf": [
94+
{
95+
"$ref": "#/components/schemas/Descriptor"
96+
},
97+
{
98+
"properties": {
99+
"platform": {
100+
"description": "The platform object describes the platform which the image in the manifest runs on.\n",
101+
"properties": {
102+
"architecture": {
103+
"description": "The CPU architecture.",
104+
"example": "amd64",
105+
"type": "string"
106+
},
107+
"features": {
108+
"description": "The CPU features.",
109+
"items": {
110+
"type": "string"
111+
},
112+
"type": "array"
113+
},
114+
"os": {
115+
"description": "The operating system.",
116+
"example": "linux",
117+
"type": "string"
118+
},
119+
"os.features": {
120+
"description": "The operating system features.",
121+
"items": {
122+
"type": "string"
123+
},
124+
"type": "array"
125+
},
126+
"os.version": {
127+
"description": "The operating system version.",
128+
"type": "string"
129+
},
130+
"variant": {
131+
"description": "The CPU architecture variant.",
132+
"type": "string"
133+
}
134+
},
135+
"required": [
136+
"architecture",
137+
"os"
138+
],
139+
"type": "object"
140+
}
141+
},
142+
"type": "object"
143+
}
144+
]
145+
},
146+
"type": "array"
147+
},
148+
"mediaType": {
149+
"description": "The media type of the image index.",
150+
"enum": [
151+
"application/vnd.oci.image.index.v1+json"
152+
],
153+
"example": "application/vnd.oci.image.index.v1+json",
154+
"type": "string"
155+
},
156+
"schemaVersion": {
157+
"description": "The schema version of the image index. Must be 2.",
158+
"enum": [
159+
2
160+
],
161+
"example": 2,
162+
"format": "int64",
163+
"type": "integer"
164+
}
165+
},
166+
"required": [
167+
"schemaVersion",
168+
"mediaType",
169+
"manifests"
170+
],
171+
"type": "object"
172+
}
173+
}
174+
},
175+
"info": {
176+
"description": "This API provides endpoints for managing STACKIT Functions.\n",
177+
"title": "STACKIT Functions Infra API",
178+
"version": "2.0.0"
179+
},
180+
"openapi": "3.0.3",
181+
"paths": {
182+
"/v2/{namespace}/{name}/blobs/{digest}": {
183+
"head": {
184+
"description": "Checks for the existence of a blob.\nReturns the blob's digest and content type in the headers if it exists.\n",
185+
"operationId": "headBlob",
186+
"responses": {
187+
"200": {
188+
"description": "Blob exists.",
189+
"headers": {
190+
"Content-Length": {
191+
"description": "The length of the blob in bytes.",
192+
"schema": {
193+
"format": "int64",
194+
"type": "integer"
195+
}
196+
},
197+
"Content-Type": {
198+
"description": "The media type of the blob.",
199+
"schema": {
200+
"example": "application/octet-stream",
201+
"type": "string"
202+
}
203+
},
204+
"Docker-Content-Digest": {
205+
"$ref": "#/components/headers/DockerContentDigestHeader"
206+
}
207+
}
208+
},
209+
"400": {
210+
"$ref": "#/components/responses/OciBadRequest"
211+
},
212+
"401": {
213+
"$ref": "#/components/responses/OciUnauthorized"
214+
},
215+
"404": {
216+
"$ref": "#/components/responses/OciNotFound"
217+
},
218+
"500": {
219+
"$ref": "#/components/responses/OciInternalServerError"
220+
}
221+
},
222+
"summary": "Check Blob Existence",
223+
"tags": [
224+
"Blobs"
225+
],
226+
"x-stackit-authorization": {
227+
"disabled": true
228+
}
229+
},
230+
"parameters": [
231+
{
232+
"$ref": "#/components/parameters/Namespace"
233+
},
234+
{
235+
"$ref": "#/components/parameters/RepositoryName"
236+
},
237+
{
238+
"$ref": "#/components/parameters/BlobDigest"
239+
}
240+
]
241+
},
242+
"/v2/{namespace}/{name}/manifests/{reference}": {
243+
"head": {
244+
"description": "Checks for the existence of an image manifest or image index.\nReturns the manifest's digest and content type in the headers if it exists.\n",
245+
"operationId": "headManifest",
246+
"responses": {
247+
"200": {
248+
"description": "Manifest exists.",
249+
"headers": {
250+
"Content-Length": {
251+
"description": "The length of the manifest in bytes.",
252+
"schema": {
253+
"format": "int64",
254+
"type": "integer"
255+
}
256+
},
257+
"Content-Type": {
258+
"description": "The media type of the manifest.",
259+
"schema": {
260+
"example": "application/vnd.oci.image.manifest.v1+json",
261+
"type": "string"
262+
}
263+
},
264+
"Docker-Content-Digest": {
265+
"$ref": "#/components/headers/DockerContentDigestHeader"
266+
}
267+
}
268+
},
269+
"400": {
270+
"$ref": "#/components/responses/OciBadRequest"
271+
},
272+
"401": {
273+
"$ref": "#/components/responses/OciUnauthorized"
274+
},
275+
"404": {
276+
"$ref": "#/components/responses/OciNotFound"
277+
},
278+
"500": {
279+
"$ref": "#/components/responses/OciInternalServerError"
280+
}
281+
},
282+
"summary": "Check Manifest Existence",
283+
"tags": [
284+
"Manifests"
285+
],
286+
"x-stackit-authorization": {
287+
"disabled": true
288+
}
289+
},
290+
"parameters": [
291+
{
292+
"$ref": "#/components/parameters/Namespace"
293+
},
294+
{
295+
"$ref": "#/components/parameters/RepositoryName"
296+
},
297+
{
298+
"$ref": "#/components/parameters/ManifestReference"
299+
}
300+
]
301+
}
302+
},
303+
"servers": [
304+
{
305+
"url": "https://functions.api.{region}stackit.cloud",
306+
"variables": {
307+
"region": {
308+
"default": "eu01.",
309+
"enum": [
310+
"eu01."
311+
]
312+
}
313+
}
314+
}
315+
]
316+
}

0 commit comments

Comments
 (0)