1{
2  "swagger": "2.0",
3  "info": {
4    "title": "NetworkManagementClient",
5    "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.",
6    "version": "2020-04-01"
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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles/{networkProfileName}": {
38      "delete": {
39        "tags": [
40          "NetworkProfiles"
41        ],
42        "operationId": "NetworkProfiles_Delete",
43        "description": "Deletes the specified network profile.",
44        "parameters": [
45          {
46            "name": "resourceGroupName",
47            "in": "path",
48            "required": true,
49            "type": "string",
50            "description": "The name of the resource group."
51          },
52          {
53            "name": "networkProfileName",
54            "in": "path",
55            "required": true,
56            "type": "string",
57            "description": "The name of the NetworkProfile."
58          },
59          {
60            "$ref": "./network.json#/parameters/ApiVersionParameter"
61          },
62          {
63            "$ref": "./network.json#/parameters/SubscriptionIdParameter"
64          }
65        ],
66        "responses": {
67          "204": {
68            "description": "Request successful. Resource does not exist."
69          },
70          "202": {
71            "description": "Accepted and the operation will complete asynchronously."
72          },
73          "200": {
74            "description": "Delete successful."
75          },
76          "default": {
77            "description": "Error response describing why the operation failed.",
78            "schema": {
79              "$ref": "./network.json#/definitions/CloudError"
80            }
81          }
82        },
83        "x-ms-examples": {
84          "Delete network profile": {
85            "$ref": "./examples/NetworkProfileDelete.json"
86          }
87        },
88        "x-ms-long-running-operation": true,
89        "x-ms-long-running-operation-options": {
90          "final-state-via": "location"
91        }
92      },
93      "get": {
94        "tags": [
95          "NetworkProfiles"
96        ],
97        "operationId": "NetworkProfiles_Get",
98        "description": "Gets the specified network profile in a specified resource group.",
99        "parameters": [
100          {
101            "name": "resourceGroupName",
102            "in": "path",
103            "required": true,
104            "type": "string",
105            "description": "The name of the resource group."
106          },
107          {
108            "name": "networkProfileName",
109            "in": "path",
110            "required": true,
111            "type": "string",
112            "description": "The name of the public IP prefix."
113          },
114          {
115            "$ref": "./network.json#/parameters/ApiVersionParameter"
116          },
117          {
118            "$ref": "./network.json#/parameters/SubscriptionIdParameter"
119          },
120          {
121            "name": "$expand",
122            "in": "query",
123            "required": false,
124            "type": "string",
125            "description": "Expands referenced resources."
126          }
127        ],
128        "responses": {
129          "200": {
130            "description": "Request successful. The operation returns the resulting NetworkProfile resource.",
131            "schema": {
132              "$ref": "#/definitions/NetworkProfile"
133            }
134          },
135          "default": {
136            "description": "Error response describing why the operation failed.",
137            "schema": {
138              "$ref": "./network.json#/definitions/CloudError"
139            }
140          }
141        },
142        "x-ms-examples": {
143          "Get network profile": {
144            "$ref": "./examples/NetworkProfileGetConfigOnly.json"
145          },
146          "Get network profile with container network interfaces": {
147            "$ref": "./examples/NetworkProfileGetWithContainerNic.json"
148          }
149        }
150      },
151      "put": {
152        "tags": [
153          "NetworkProfiles"
154        ],
155        "operationId": "NetworkProfiles_CreateOrUpdate",
156        "description": "Creates or updates a network profile.",
157        "parameters": [
158          {
159            "name": "resourceGroupName",
160            "in": "path",
161            "required": true,
162            "type": "string",
163            "description": "The name of the resource group."
164          },
165          {
166            "name": "networkProfileName",
167            "in": "path",
168            "required": true,
169            "type": "string",
170            "description": "The name of the network profile."
171          },
172          {
173            "name": "parameters",
174            "in": "body",
175            "required": true,
176            "schema": {
177              "$ref": "#/definitions/NetworkProfile"
178            },
179            "description": "Parameters supplied to the create or update network profile operation."
180          },
181          {
182            "$ref": "./network.json#/parameters/ApiVersionParameter"
183          },
184          {
185            "$ref": "./network.json#/parameters/SubscriptionIdParameter"
186          }
187        ],
188        "responses": {
189          "201": {
190            "description": "Create successful. The operation returns the resulting NetworkProfile resource.",
191            "schema": {
192              "$ref": "#/definitions/NetworkProfile"
193            }
194          },
195          "200": {
196            "description": "Update successful. The operation returns the resulting NetworkProfile resource.",
197            "schema": {
198              "$ref": "#/definitions/NetworkProfile"
199            }
200          },
201          "default": {
202            "description": "Error response describing why the operation failed.",
203            "schema": {
204              "$ref": "./network.json#/definitions/CloudError"
205            }
206          }
207        },
208        "x-ms-examples": {
209          "Create network profile defaults": {
210            "$ref": "./examples/NetworkProfileCreateConfigOnly.json"
211          }
212        },
213        "x-ms-long-running-operation": false
214      },
215      "patch": {
216        "tags": [
217          "NetworkProfiles"
218        ],
219        "operationId": "NetworkProfiles_UpdateTags",
220        "description": "Updates network profile tags.",
221        "parameters": [
222          {
223            "name": "resourceGroupName",
224            "in": "path",
225            "required": true,
226            "type": "string",
227            "description": "The name of the resource group."
228          },
229          {
230            "name": "networkProfileName",
231            "in": "path",
232            "required": true,
233            "type": "string",
234            "description": "The name of the network profile."
235          },
236          {
237            "name": "parameters",
238            "in": "body",
239            "required": true,
240            "schema": {
241              "$ref": "./network.json#/definitions/TagsObject"
242            },
243            "description": "Parameters supplied to update network profile tags."
244          },
245          {
246            "$ref": "./network.json#/parameters/ApiVersionParameter"
247          },
248          {
249            "$ref": "./network.json#/parameters/SubscriptionIdParameter"
250          }
251        ],
252        "responses": {
253          "200": {
254            "description": "Update successful. The operation returns the resulting NetworkProfile resource.",
255            "schema": {
256              "$ref": "#/definitions/NetworkProfile"
257            }
258          },
259          "default": {
260            "description": "Error response describing why the operation failed.",
261            "schema": {
262              "$ref": "./network.json#/definitions/CloudError"
263            }
264          }
265        },
266        "x-ms-examples": {
267          "Update network profile tags": {
268            "$ref": "./examples/NetworkProfileUpdateTags.json"
269          }
270        }
271      }
272    },
273    "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkProfiles": {
274      "get": {
275        "tags": [
276          "NetworkProfiles"
277        ],
278        "operationId": "NetworkProfiles_ListAll",
279        "description": "Gets all the network profiles in a subscription.",
280        "parameters": [
281          {
282            "$ref": "./network.json#/parameters/ApiVersionParameter"
283          },
284          {
285            "$ref": "./network.json#/parameters/SubscriptionIdParameter"
286          }
287        ],
288        "responses": {
289          "200": {
290            "description": "Request successful. The operation returns a list of NetworkProfile resources.",
291            "schema": {
292              "$ref": "#/definitions/NetworkProfileListResult"
293            }
294          },
295          "default": {
296            "description": "Error response describing why the operation failed.",
297            "schema": {
298              "$ref": "./network.json#/definitions/CloudError"
299            }
300          }
301        },
302        "x-ms-examples": {
303          "List all network profiles": {
304            "$ref": "./examples/NetworkProfileListAll.json"
305          }
306        },
307        "x-ms-pageable": {
308          "nextLinkName": "nextLink"
309        }
310      }
311    },
312    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles": {
313      "get": {
314        "tags": [
315          "NetworkProfiles"
316        ],
317        "operationId": "NetworkProfiles_List",
318        "description": "Gets all network profiles in a resource group.",
319        "parameters": [
320          {
321            "name": "resourceGroupName",
322            "in": "path",
323            "required": true,
324            "type": "string",
325            "description": "The name of the resource group."
326          },
327          {
328            "$ref": "./network.json#/parameters/ApiVersionParameter"
329          },
330          {
331            "$ref": "./network.json#/parameters/SubscriptionIdParameter"
332          }
333        ],
334        "responses": {
335          "200": {
336            "description": "Request successful. The operation returns a list of NetworkProfile resources.",
337            "schema": {
338              "$ref": "#/definitions/NetworkProfileListResult"
339            }
340          },
341          "default": {
342            "description": "Error response describing why the operation failed.",
343            "schema": {
344              "$ref": "./network.json#/definitions/CloudError"
345            }
346          }
347        },
348        "x-ms-examples": {
349          "List resource group network profiles": {
350            "$ref": "./examples/NetworkProfileList.json"
351          }
352        },
353        "x-ms-pageable": {
354          "nextLinkName": "nextLink"
355        }
356      }
357    }
358  },
359  "definitions": {
360    "NetworkProfilePropertiesFormat": {
361      "properties": {
362        "containerNetworkInterfaces": {
363          "readOnly": true,
364          "type": "array",
365          "items": {
366            "$ref": "#/definitions/ContainerNetworkInterface"
367          },
368          "description": "List of child container network interfaces."
369        },
370        "containerNetworkInterfaceConfigurations": {
371          "type": "array",
372          "items": {
373            "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration"
374          },
375          "description": "List of chid container network interface configurations."
376        },
377        "resourceGuid": {
378          "readOnly": true,
379          "type": "string",
380          "description": "The resource GUID property of the network profile resource."
381        },
382        "provisioningState": {
383          "readOnly": true,
384          "$ref": "./network.json#/definitions/ProvisioningState",
385          "description": "The provisioning state of the network profile resource."
386        }
387      },
388      "description": "Network profile properties."
389    },
390    "NetworkProfile": {
391      "properties": {
392        "properties": {
393          "x-ms-client-flatten": true,
394          "$ref": "#/definitions/NetworkProfilePropertiesFormat",
395          "description": "Network profile properties."
396        },
397        "etag": {
398          "readOnly": true,
399          "type": "string",
400          "description": "A unique read-only string that changes whenever the resource is updated."
401        }
402      },
403      "allOf": [
404        {
405          "$ref": "./network.json#/definitions/Resource"
406        }
407      ],
408      "description": "Network profile resource."
409    },
410    "NetworkProfileListResult": {
411      "properties": {
412        "value": {
413          "type": "array",
414          "items": {
415            "$ref": "#/definitions/NetworkProfile"
416          },
417          "description": "A list of network profiles that exist in a resource group."
418        },
419        "nextLink": {
420          "type": "string",
421          "description": "The URL to get the next set of results."
422        }
423      },
424      "description": "Response for ListNetworkProfiles API service call."
425    },
426    "ContainerNetworkInterfacePropertiesFormat": {
427      "properties": {
428        "containerNetworkInterfaceConfiguration": {
429          "readOnly": true,
430          "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration",
431          "description": "Container network interface configuration from which this container network interface is created."
432        },
433        "container": {
434          "$ref": "#/definitions/Container",
435          "description": "Reference to the container to which this container network interface is attached."
436        },
437        "ipConfigurations": {
438          "readOnly": true,
439          "type": "array",
440          "items": {
441            "$ref": "#/definitions/ContainerNetworkInterfaceIpConfiguration"
442          },
443          "description": "Reference to the ip configuration on this container nic."
444        },
445        "provisioningState": {
446          "readOnly": true,
447          "$ref": "./network.json#/definitions/ProvisioningState",
448          "description": "The provisioning state of the container network interface resource."
449        }
450      },
451      "description": "Properties of container network interface."
452    },
453    "ContainerNetworkInterface": {
454      "properties": {
455        "properties": {
456          "x-ms-client-flatten": true,
457          "$ref": "#/definitions/ContainerNetworkInterfacePropertiesFormat",
458          "description": "Container network interface properties."
459        },
460        "name": {
461          "type": "string",
462          "description": "The name of the resource. This name can be used to access the resource."
463        },
464        "type": {
465          "readOnly": true,
466          "type": "string",
467          "description": "Sub Resource type."
468        },
469        "etag": {
470          "readOnly": true,
471          "type": "string",
472          "description": "A unique read-only string that changes whenever the resource is updated."
473        }
474      },
475      "allOf": [
476        {
477          "$ref": "./network.json#/definitions/SubResource"
478        }
479      ],
480      "description": "Container network interface child resource."
481    },
482    "ContainerNetworkInterfaceConfigurationPropertiesFormat": {
483      "properties": {
484        "ipConfigurations": {
485          "type": "array",
486          "items": {
487            "$ref": "#/definitions/IPConfigurationProfile"
488          },
489          "description": "A list of ip configurations of the container network interface configuration."
490        },
491        "containerNetworkInterfaces": {
492          "type": "array",
493          "items": {
494            "$ref": "./network.json#/definitions/SubResource"
495          },
496          "description": "A list of container network interfaces created from this container network interface configuration."
497        },
498        "provisioningState": {
499          "readOnly": true,
500          "$ref": "./network.json#/definitions/ProvisioningState",
501          "description": "The provisioning state of the container network interface configuration resource."
502        }
503      },
504      "description": "Container network interface configuration properties."
505    },
506    "ContainerNetworkInterfaceConfiguration": {
507      "properties": {
508        "properties": {
509          "x-ms-client-flatten": true,
510          "$ref": "#/definitions/ContainerNetworkInterfaceConfigurationPropertiesFormat",
511          "description": "Container network interface configuration properties."
512        },
513        "name": {
514          "type": "string",
515          "description": "The name of the resource. This name can be used to access the resource."
516        },
517        "type": {
518          "readOnly": true,
519          "type": "string",
520          "description": "Sub Resource type."
521        },
522        "etag": {
523          "readOnly": true,
524          "type": "string",
525          "description": "A unique read-only string that changes whenever the resource is updated."
526        }
527      },
528      "allOf": [
529        {
530          "$ref": "./network.json#/definitions/SubResource"
531        }
532      ],
533      "description": "Container network interface configuration child resource."
534    },
535    "IPConfigurationProfilePropertiesFormat": {
536      "properties": {
537        "subnet": {
538          "$ref": "./virtualNetwork.json#/definitions/Subnet",
539          "description": "The reference to the subnet resource to create a container network interface ip configuration."
540        },
541        "provisioningState": {
542          "readOnly": true,
543          "$ref": "./network.json#/definitions/ProvisioningState",
544          "description": "The provisioning state of the IP configuration profile resource."
545        }
546      },
547      "description": "IP configuration profile properties."
548    },
549    "IPConfigurationProfile": {
550      "properties": {
551        "properties": {
552          "x-ms-client-flatten": true,
553          "$ref": "#/definitions/IPConfigurationProfilePropertiesFormat",
554          "description": "Properties of the IP configuration profile."
555        },
556        "name": {
557          "type": "string",
558          "description": "The name of the resource. This name can be used to access the resource."
559        },
560        "type": {
561          "readOnly": true,
562          "type": "string",
563          "description": "Sub Resource type."
564        },
565        "etag": {
566          "readOnly": true,
567          "type": "string",
568          "description": "A unique read-only string that changes whenever the resource is updated."
569        }
570      },
571      "allOf": [
572        {
573          "$ref": "./network.json#/definitions/SubResource"
574        }
575      ],
576      "description": "IP configuration profile child resource."
577    },
578    "Container": {
579      "properties": {},
580      "allOf": [
581        {
582          "$ref": "./network.json#/definitions/SubResource"
583        }
584      ],
585      "description": "Reference to container resource in remote resource provider."
586    },
587    "ContainerNetworkInterfaceIpConfigurationPropertiesFormat": {
588      "properties": {
589        "provisioningState": {
590          "readOnly": true,
591          "$ref": "./network.json#/definitions/ProvisioningState",
592          "description": "The provisioning state of the container network interface IP configuration resource."
593        }
594      },
595      "description": "Properties of the container network interface IP configuration."
596    },
597    "ContainerNetworkInterfaceIpConfiguration": {
598      "properties": {
599        "properties": {
600          "x-ms-client-flatten": true,
601          "$ref": "#/definitions/ContainerNetworkInterfaceIpConfigurationPropertiesFormat",
602          "description": "Properties of the container network interface IP configuration."
603        },
604        "name": {
605          "type": "string",
606          "description": "The name of the resource. This name can be used to access the resource."
607        },
608        "type": {
609          "readOnly": true,
610          "type": "string",
611          "description": "Sub Resource type."
612        },
613        "etag": {
614          "readOnly": true,
615          "type": "string",
616          "description": "A unique read-only string that changes whenever the resource is updated."
617        }
618      },
619      "description": "The ip configuration for a container network interface."
620    }
621  }
622}
623