Skip to content

Commit d5ad943

Browse files
authored
Add swagger for Compute Diagnostic Resource Provider (#15837)
1 parent ff1530a commit d5ad943

File tree

6 files changed

+512
-0
lines changed

6 files changed

+512
-0
lines changed
Lines changed: 393 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,393 @@
1+
{
2+
"swagger": "2.0",
3+
"info": {
4+
"title": "ComputeDiagnosticResourceProviderClient",
5+
"description": "The Compute Diagnostic Resource Provider Client",
6+
"version": "2021-06-01-preview"
7+
},
8+
"host": "management.azure.com",
9+
"schemes": [
10+
"https"
11+
],
12+
"consumes": [
13+
"application/json"
14+
],
15+
"produces": [
16+
"application/json"
17+
],
18+
"security": [
19+
{
20+
"azure_auth": [
21+
"user_impersonation"
22+
]
23+
}
24+
],
25+
"securityDefinitions": {
26+
"azure_auth": {
27+
"type": "oauth2",
28+
"authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
29+
"flow": "implicit",
30+
"description": "Azure Active Directory OAuth2 Flow",
31+
"scopes": {
32+
"user_impersonation": "impersonate your user account"
33+
}
34+
}
35+
},
36+
"paths": {
37+
"/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/diagnosticOperations/{operationId}": {
38+
"get": {
39+
"tags": [
40+
"diagnosticOperations"
41+
],
42+
"operationId": "DiagnosticOperations_Read",
43+
"description": "Gets status of a Diagnostic operation issued for Disk Inspection.",
44+
"parameters": [
45+
{
46+
"$ref": "#/parameters/SubscriptionIdParameter"
47+
},
48+
{
49+
"$ref": "#/parameters/LocationParameter"
50+
},
51+
{
52+
"in": "path",
53+
"name": "operationId",
54+
"required": true,
55+
"type": "string",
56+
"description": "The identifier pointing to a request for Disk Inspection. This is used for polling result of the request."
57+
}
58+
],
59+
"responses": {
60+
"200": {
61+
"description": "Success"
62+
},
63+
"202": {
64+
"description": "Accepted"
65+
},
66+
"default": {
67+
"description": "Error response describing why the operation failed.",
68+
"schema": {
69+
"$ref": "#/definitions/ErrorResponse"
70+
}
71+
}
72+
},
73+
"x-ms-examples": {
74+
"Gets the status of a scheduled disk inspection request.": {
75+
"$ref": "./examples/GetDiagnosticOperation.json"
76+
}
77+
}
78+
}
79+
},
80+
"/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/diagnostics/diskInspection/run": {
81+
"post": {
82+
"tags": [
83+
"diagnostics"
84+
],
85+
"operationId": "DiskInspection_Create",
86+
"x-ms-long-running-operation": true,
87+
"x-ms-long-running-operation-options": {
88+
"final-state-via": "location"
89+
},
90+
"description": "Creates a request for executing disk Inspection.",
91+
"consumes": [
92+
"application/json"
93+
],
94+
"parameters": [
95+
{
96+
"$ref": "#/parameters/SubscriptionIdParameter"
97+
},
98+
{
99+
"$ref": "#/parameters/LocationParameter"
100+
},
101+
{
102+
"$ref": "#/parameters/ApiVersionParameter"
103+
},
104+
{
105+
"name": "runDiskInspectionInput",
106+
"in": "body",
107+
"required": true,
108+
"schema": {
109+
"$ref": "#/definitions/RunDiskInspectionInput"
110+
},
111+
"description": "RunDiskInspection object supplied in the body of the Post run disk inspection operation."
112+
}
113+
],
114+
"responses": {
115+
"202": {
116+
"description": "Accepted",
117+
"schema": {
118+
"type": "string"
119+
}
120+
},
121+
"default": {
122+
"description": "Error response describing why the diagnostic run failed.",
123+
"schema": {
124+
"$ref": "#/definitions/ErrorResponse"
125+
}
126+
}
127+
},
128+
"x-ms-examples": {
129+
"Create a request for disk inspection.": {
130+
"$ref": "./examples/RunDiskInspection.json"
131+
}
132+
}
133+
}
134+
},
135+
"/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/diagnostics": {
136+
"get": {
137+
"tags": [
138+
"diagnostics"
139+
],
140+
"operationId": "Diagnostics_List",
141+
"description": "Lists all available Compute diagnostics for a subscription in a location.",
142+
"x-ms-pageable": {
143+
"nextLinkName": "nextLink"
144+
},
145+
"parameters": [
146+
{
147+
"$ref": "#/parameters/SubscriptionIdParameter"
148+
},
149+
{
150+
"$ref": "#/parameters/LocationParameter"
151+
}
152+
],
153+
"responses": {
154+
"200": {
155+
"description": "Success",
156+
"schema": {
157+
"$ref": "#/definitions/ComputeDiagnosticsList"
158+
}
159+
},
160+
"default": {
161+
"description": "Error response describing why the listing call failed.",
162+
"schema": {
163+
"$ref": "#/definitions/ErrorResponse"
164+
}
165+
}
166+
},
167+
"x-ms-examples": {
168+
"Gets the status of a scheduled disk inspection request.": {
169+
"$ref": "./examples/GetDiagnostics.json"
170+
}
171+
}
172+
}
173+
},
174+
"/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/diagnostics/diskInspection": {
175+
"get": {
176+
"tags": [
177+
"diagnostics_DiskInspection"
178+
],
179+
"operationId": "DiskInspection_Get",
180+
"description": "Gets a specific Compute diagnostic for a subscription in a location.",
181+
"parameters": [
182+
{
183+
"$ref": "#/parameters/SubscriptionIdParameter"
184+
},
185+
{
186+
"$ref": "#/parameters/LocationParameter"
187+
}
188+
],
189+
"responses": {
190+
"200": {
191+
"description": "Success",
192+
"schema": {
193+
"$ref": "#/definitions/ComputeDiagnosticBase"
194+
}
195+
},
196+
"default": {
197+
"description": "Error response describing why the get call failed.",
198+
"schema": {
199+
"$ref": "#/definitions/ErrorResponse"
200+
}
201+
}
202+
},
203+
"x-ms-examples": {
204+
"Gets the status of a scheduled disk inspection request.": {
205+
"$ref": "./examples/GetDiskInspection.json"
206+
}
207+
}
208+
}
209+
}
210+
},
211+
"definitions": {
212+
"ComputeDiagnosticsList": {
213+
"description": "Lists all available Compute diagnostics for a subscription in a location.",
214+
"type": "object",
215+
"properties": {
216+
"value": {
217+
"type": "array",
218+
"items": {
219+
"$ref": "#/definitions/ComputeDiagnosticBase"
220+
},
221+
"description": "The collection of available Compute diagnostics returned by the listing operation."
222+
},
223+
"nextLink": {
224+
"type": "string",
225+
"description": "The continuation token."
226+
}
227+
}
228+
},
229+
"ComputeDiagnosticBase": {
230+
"description": "Contains metadata of a diagnostic type",
231+
"type": "object",
232+
"properties": {
233+
"id": {
234+
"description": "Identifier for the type of diagnostic",
235+
"type": "string"
236+
},
237+
"name": {
238+
"description": "Friendly name for the type of diagnostic",
239+
"type": "string"
240+
},
241+
"type": {
242+
"description": "Type of the diagnostic",
243+
"type": "string"
244+
},
245+
"properties": {
246+
"$ref": "#/definitions/DiagnosticProperties"
247+
}
248+
}
249+
},
250+
"DiagnosticProperties": {
251+
"description": "Contains additional properties of a diagnostic",
252+
"type": "object",
253+
"properties": {
254+
"supportedResourceTypes": {
255+
"type": "array",
256+
"items": {
257+
"type": "string"
258+
},
259+
"description": "Describes what are the supported resource types for a diagnostic."
260+
}
261+
}
262+
},
263+
"RunDiskInspectionInput": {
264+
"type": "object",
265+
"properties": {
266+
"resourceId": {
267+
"description": "Qualified name of the resource.",
268+
"type": "string"
269+
},
270+
"manifest": {
271+
"description": "Name of manifest in order to trigger Disk Inspection.",
272+
"type": "string"
273+
},
274+
"uploadSasUri": {
275+
"description": "SAS uri to the blob where results will be uploaded.",
276+
"type": "string",
277+
"x-ms-secret": true
278+
}
279+
},
280+
"required": [
281+
"resourceId",
282+
"manifest",
283+
"uploadSasUri"
284+
],
285+
"description": "Data used for requesting a Disk Inspection execution."
286+
},
287+
"RunDiskInspectionAsyncOperationResult": {
288+
"type": "object",
289+
"properties": {
290+
"result": {
291+
"type": "string"
292+
},
293+
"resultStatus": {
294+
"type": "string",
295+
"enum": [
296+
"Success",
297+
"Failed"
298+
],
299+
"x-ms-enum": {
300+
"name": "resultStatus",
301+
"modelAsString": true
302+
}
303+
},
304+
"errorDetail": {
305+
"$ref": "#/definitions/ErrorDetail"
306+
},
307+
"createdUTC": {
308+
"type": "string",
309+
"format": "date-time",
310+
"description": "The time when the disk inspection was completed."
311+
}
312+
},
313+
"description": "Api output result when disk inspection result is completed."
314+
},
315+
"ErrorResponse": {
316+
"type": "object",
317+
"properties": {
318+
"error": {
319+
"$ref": "#/definitions/ErrorDetail"
320+
}
321+
},
322+
"description": "An error response from the Compute Diagnostic Resource Provider service."
323+
},
324+
"ErrorDetail": {
325+
"type": "object",
326+
"properties": {
327+
"code": {
328+
"type": "string",
329+
"description": "The error code."
330+
},
331+
"target": {
332+
"type": "string",
333+
"description": "The target of the particular error."
334+
},
335+
"message": {
336+
"type": "string",
337+
"description": "User friendly error message."
338+
},
339+
"details": {
340+
"type": "array",
341+
"items": {
342+
"$ref": "#/definitions/ErrorDetail"
343+
},
344+
"description": "The Api error details"
345+
},
346+
"innerError": {
347+
"$ref": "#/definitions/InnerError",
348+
"description": "The Api inner error"
349+
}
350+
},
351+
"description": "Error Detail message."
352+
},
353+
"InnerError": {
354+
"type": "object",
355+
"properties": {
356+
"exceptiontype": {
357+
"type": "string",
358+
"description": "The exception type."
359+
},
360+
"errordetail": {
361+
"type": "string",
362+
"description": "The internal error message or exception dump."
363+
}
364+
},
365+
"description": "Inner error details."
366+
}
367+
},
368+
"parameters": {
369+
"SubscriptionIdParameter": {
370+
"name": "subscriptionId",
371+
"in": "path",
372+
"required": true,
373+
"type": "string",
374+
"description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call."
375+
},
376+
"LocationParameter": {
377+
"name": "location",
378+
"in": "path",
379+
"required": true,
380+
"type": "string",
381+
"description": "The location used to execute the diagnostic operation.",
382+
"pattern": "^[-\\w\\._]+$",
383+
"x-ms-parameter-location": "method"
384+
},
385+
"ApiVersionParameter": {
386+
"name": "api-version",
387+
"in": "query",
388+
"required": true,
389+
"type": "string",
390+
"description": "Client Api Version."
391+
}
392+
}
393+
}

0 commit comments

Comments
 (0)