{
  "swagger": "2.0",
  "schemes": [
    "https"
  ],
  "host": "management.azure.com",
  "info": {
    "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.",
    "title": "NetworkManagementClient",
    "version": "2018-04-01",
    "x-apisguru-categories": [
      "cloud"
    ],
    "x-logo": {
      "url": "https://api.apis.guru/v2/cache/logo/https_assets.onestore.ms_cdnfiles_onestorerolling-1606-01000_shell_v3_images_logo_microsoft.png"
    },
    "x-origin": [
      {
        "format": "swagger",
        "url": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/network/resource-manager/Microsoft.Network/stable/2018-04-01/ddosProtectionPlan.json",
        "version": "2.0"
      }
    ],
    "x-preferred": false,
    "x-providerName": "azure.com",
    "x-serviceName": "network-ddosProtectionPlan",
    "x-tags": [
      "Azure",
      "Microsoft"
    ]
  },
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "securityDefinitions": {
    "azure_auth": {
      "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
      "description": "Azure Active Directory OAuth2 Flow",
      "flow": "implicit",
      "scopes": {
        "user_impersonation": "impersonate your user account"
      },
      "type": "oauth2"
    }
  },
  "security": [
    {
      "azure_auth": [
        "user_impersonation"
      ]
    }
  ],
  "paths": {
    "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ddosProtectionPlans": {
      "get": {
        "description": "Gets all DDoS protection plans in a subscription.",
        "operationId": "DdosProtectionPlans_List",
        "parameters": [
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "Request successful. The operation returns a list of DDoS protection plan resources.",
            "schema": {
              "$ref": "#/definitions/DdosProtectionPlanListResult"
            }
          }
        },
        "tags": [
          "DdosProtectionPlans"
        ],
        "x-ms-examples": {
          "List all DDoS protection plans": {
            "parameters": {
              "api-version": "2018-04-01",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1",
                      "location": "westus",
                      "name": "plan1",
                      "properties": {
                        "provisioningState": "Succeeded",
                        "resourceGuid": "00000000-0000-0000-0000-000000000000",
                        "virtualNetworks": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet1"
                          }
                        ]
                      },
                      "type": "Microsoft.Network/ddosProtectionPlans"
                    },
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2",
                      "location": "westus",
                      "name": "plan2",
                      "properties": {
                        "provisioningState": "Succeeded",
                        "resourceGuid": "00000000-0000-0000-0000-000000000000",
                        "virtualNetworks": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet2"
                          },
                          {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet3"
                          }
                        ]
                      },
                      "type": "Microsoft.Network/ddosProtectionPlans"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans": {
      "get": {
        "description": "Gets all the DDoS protection plans in a resource group.",
        "operationId": "DdosProtectionPlans_ListByResourceGroup",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "Request successful. The operation returns a list of DDoS protection plan resources.",
            "schema": {
              "$ref": "#/definitions/DdosProtectionPlanListResult"
            }
          }
        },
        "tags": [
          "DdosProtectionPlans"
        ],
        "x-ms-examples": {
          "List DDoS protection plans in resource group": {
            "parameters": {
              "api-version": "2018-04-01",
              "resourceGroupName": "rg1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1",
                      "location": "westus",
                      "name": "plan1",
                      "properties": {
                        "provisioningState": "Succeeded",
                        "resourceGuid": "00000000-0000-0000-0000-000000000000",
                        "virtualNetworks": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet"
                          }
                        ]
                      },
                      "type": "Microsoft.Network/ddosProtectionPlans"
                    },
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2",
                      "location": "westus",
                      "name": "plan2",
                      "properties": {
                        "provisioningState": "Succeeded",
                        "resourceGuid": "00000000-0000-0000-0000-000000000000",
                        "virtualNetworks": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet"
                          }
                        ]
                      },
                      "type": "Microsoft.Network/ddosProtectionPlans"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans/{ddosProtectionPlanName}": {
      "delete": {
        "description": "Deletes the specified DDoS protection plan.",
        "operationId": "DdosProtectionPlans_Delete",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the DDoS protection plan.",
            "in": "path",
            "name": "ddosProtectionPlanName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "Delete successful."
          },
          "202": {
            "description": "Accepted and the operation will complete asynchronously."
          },
          "204": {
            "description": "Request successful. Resource does not exist."
          }
        },
        "tags": [
          "DdosProtectionPlans"
        ],
        "x-ms-examples": {
          "Delete DDoS protection plan": {
            "parameters": {
              "api-version": "2018-04-01",
              "ddosProtectionPlanName": "test-plan",
              "resourceGroupName": "rg1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {},
              "202": {},
              "204": {}
            }
          }
        },
        "x-ms-long-running-operation": true
      },
      "get": {
        "description": "Gets information about the specified DDoS protection plan.",
        "operationId": "DdosProtectionPlans_Get",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the DDoS protection plan.",
            "in": "path",
            "name": "ddosProtectionPlanName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "Request successful. The operation returns the specified DDoS protection plan resource.",
            "schema": {
              "$ref": "#/definitions/DdosProtectionPlan"
            }
          }
        },
        "tags": [
          "DdosProtectionPlans"
        ],
        "x-ms-examples": {
          "Get DDoS protection plan": {
            "parameters": {
              "api-version": "2018-04-01",
              "ddosProtectionPlanName": "test-plan",
              "resourceGroupName": "rg1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan",
                  "location": "westus",
                  "name": "test-plan",
                  "properties": {
                    "provisioningState": "Succeeded",
                    "resourceGuid": "00000000-0000-0000-0000-000000000000",
                    "virtualNetworks": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet"
                      }
                    ]
                  },
                  "type": "Microsoft.Network/ddosProtectionPlans"
                }
              }
            }
          }
        }
      },
      "put": {
        "description": "Creates or updates a DDoS protection plan.",
        "operationId": "DdosProtectionPlans_CreateOrUpdate",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the DDoS protection plan.",
            "in": "path",
            "name": "ddosProtectionPlanName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Parameters supplied to the create or update operation.",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/DdosProtectionPlan"
            }
          },
          {
            "description": "Client API version.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "Update successful. The operation returns the resulting DDoS protection plan resource.",
            "schema": {
              "$ref": "#/definitions/DdosProtectionPlan"
            }
          },
          "201": {
            "description": "Create successful. The operation returns the resulting DDoS protection plan resource.",
            "schema": {
              "$ref": "#/definitions/DdosProtectionPlan"
            }
          }
        },
        "tags": [
          "DdosProtectionPlans"
        ],
        "x-ms-examples": {
          "Create DDoS protection plan": {
            "parameters": {
              "api-version": "2018-04-01",
              "ddosProtectionPlanName": "test-plan",
              "parameters": {
                "location": "westus",
                "properties": {}
              },
              "resourceGroupName": "rg1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan",
                  "location": "westus",
                  "name": "test-plan",
                  "properties": {
                    "provisioningState": "Succeeded",
                    "resourceGuid": "00000000-0000-0000-0000-000000000000",
                    "virtualNetworks": []
                  },
                  "type": "Microsoft.Network/ddosProtectionPlans"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan",
                  "location": "westus",
                  "name": "test-plan",
                  "properties": {
                    "provisioningState": "Succeeded",
                    "resourceGuid": "00000000-0000-0000-0000-000000000000",
                    "virtualNetworks": []
                  },
                  "type": "Microsoft.Network/ddosProtectionPlans"
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      }
    }
  },
  "definitions": {
    "DdosProtectionPlan": {
      "description": "A DDoS protection plan in a resource group.",
      "properties": {
        "etag": {
          "description": "A unique read-only string that changes whenever the resource is updated.",
          "readOnly": true,
          "type": "string"
        },
        "id": {
          "description": "Resource ID.",
          "readOnly": true,
          "type": "string"
        },
        "location": {
          "description": "Resource location.",
          "type": "string"
        },
        "name": {
          "description": "Resource name.",
          "readOnly": true,
          "type": "string"
        },
        "properties": {
          "$ref": "#/definitions/DdosProtectionPlanPropertiesFormat",
          "description": "Properties of the DDoS protection plan.",
          "x-ms-client-flatten": true
        },
        "tags": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Resource tags.",
          "type": "object"
        },
        "type": {
          "description": "Resource type.",
          "readOnly": true,
          "type": "string"
        }
      },
      "x-ms-azure-resource": true
    },
    "DdosProtectionPlanListResult": {
      "description": "A list of DDoS protection plans.",
      "properties": {
        "nextLink": {
          "description": "The URL to get the next set of results.",
          "readOnly": true,
          "type": "string"
        },
        "value": {
          "description": "A list of DDoS protection plans.",
          "items": {
            "$ref": "#/definitions/DdosProtectionPlan"
          },
          "type": "array"
        }
      }
    },
    "DdosProtectionPlanPropertiesFormat": {
      "description": "DDoS protection plan properties.",
      "properties": {
        "provisioningState": {
          "description": "The provisioning state of the DDoS protection plan resource. Possible values are: 'Succeeded', 'Updating', 'Deleting', and 'Failed'.",
          "readOnly": true,
          "type": "string"
        },
        "resourceGuid": {
          "description": "The resource GUID property of the DDoS protection plan resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups.",
          "readOnly": true,
          "type": "string"
        },
        "virtualNetworks": {
          "description": "The list of virtual networks associated with the DDoS protection plan resource. This list is read-only.",
          "items": {
            "description": "Reference to another subresource.",
            "properties": {
              "id": {
                "description": "Resource ID.",
                "type": "string"
              }
            },
            "x-ms-azure-resource": true
          },
          "readOnly": true,
          "type": "array"
        }
      }
    }
  }
}