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: 2019-08-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/2019-08-01/routeTable.json
      version: "2.0"
  x-preferred: true
  x-providerName: azure.com
  x-serviceName: network-routeTable
  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/routeTables":
    get:
      description: Gets all route tables in a subscription.
      operationId: RouteTables_ListAll
      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 RouteTable resources.
          schema:
            $ref: "#/definitions/RouteTableListResult"
      tags:
        - RouteTables
      x-ms-examples:
        List all route tables:
          parameters:
            api-version: 2019-08-01
            subscriptionId: subid
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt
                    location: westus
                    name: testrt
                    properties:
                      provisioningState: Succeeded
                      routes:
                        - id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1
                          name: route1
                          properties:
                            addressPrefix: 10.0.3.0/24
                            nextHopType: VirtualNetworkGateway
                            provisioningState: Succeeded
                    type: Microsoft.Network/routeTables
                  - id: /subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/testrt3
                    location: westus
                    name: testrt3
                    properties:
                      provisioningState: Succeeded
                      routes: []
                    type: Microsoft.Network/routeTables
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables":
    get:
      description: Gets all route tables in a resource group.
      operationId: RouteTables_List
      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 RouteTable resources.
          schema:
            $ref: "#/definitions/RouteTableListResult"
      tags:
        - RouteTables
      x-ms-examples:
        List route tables in resource group:
          parameters:
            api-version: 2019-08-01
            resourceGroupName: rg1
            subscriptionId: subid
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt
                    location: westus
                    name: testrt
                    properties:
                      disableBgpRoutePropagation: true
                      provisioningState: Succeeded
                      routes:
                        - id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1
                          name: route1
                          properties:
                            addressPrefix: 10.0.3.0/24
                            nextHopType: VirtualNetworkGateway
                            provisioningState: Succeeded
                    type: Microsoft.Network/routeTables
                  - id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt2
                    location: westus
                    name: testrt2
                    properties:
                      disableBgpRoutePropagation: true
                      provisioningState: Succeeded
                      routes: []
                    type: Microsoft.Network/routeTables
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}":
    delete:
      description: Deletes the specified route table.
      operationId: RouteTables_Delete
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the route table.
          in: path
          name: routeTableName
          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. Operation to delete was accepted.
        "202":
          description: Accepted. If route table not found returned synchronously, otherwise if found returned asynchronously.
        "204":
          description: Request successful. Resource does not exist.
      tags:
        - RouteTables
      x-ms-examples:
        Delete route table:
          parameters:
            api-version: 2019-08-01
            resourceGroupName: rg1
            routeTableName: testrt
            subscriptionId: subid
          responses:
            "200": {}
            "202": {}
            "204": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
    get:
      description: Gets the specified route table.
      operationId: RouteTables_Get
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the route table.
          in: path
          name: routeTableName
          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
        - description: Expands referenced resources.
          in: query
          name: $expand
          required: false
          type: string
      responses:
        "200":
          description: Request successful. The operation returns the resulting RouteTable resource.
          schema:
            $ref: "#/definitions/RouteTable"
      tags:
        - RouteTables
      x-ms-examples:
        Get route table:
          parameters:
            api-version: 2019-08-01
            resourceGroupName: rg1
            routeTableName: testrt
            subscriptionId: subid
          responses:
            "200":
              body:
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt
                location: westus
                name: testrt
                properties:
                  disableBgpRoutePropagation: false
                  provisioningState: Succeeded
                  routes:
                    - id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1
                      name: route1
                      properties:
                        addressPrefix: 10.0.3.0/24
                        nextHopType: VirtualNetworkGateway
                        provisioningState: Succeeded
                type: Microsoft.Network/routeTables
    patch:
      description: Updates a route table tags.
      operationId: RouteTables_UpdateTags
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the route table.
          in: path
          name: routeTableName
          required: true
          type: string
        - description: Parameters supplied to update route table tags.
          in: body
          name: parameters
          required: true
          schema:
            description: Tags object for patch operations.
            properties:
              tags:
                additionalProperties:
                  type: string
                description: Resource tags.
                type: object
        - 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 resulting RouteTable resource.
          schema:
            $ref: "#/definitions/RouteTable"
      tags:
        - RouteTables
      x-ms-examples:
        Update route table tags:
          parameters:
            api-version: 2019-08-01
            parameters:
              tags:
                tag1: value1
                tag2: value2
            resourceGroupName: rg1
            routeTableName: testrt
            subscriptionId: subid
          responses:
            "200":
              body:
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt
                location: westus
                name: testrt
                properties:
                  provisioningState: Succeeded
                  routes: []
                tags:
                  tag1: value1
                  tag2: value2
                type: Microsoft.Network/routeTables
      x-ms-long-running-operation: true
    put:
      description: Create or updates a route table in a specified resource group.
      operationId: RouteTables_CreateOrUpdate
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the route table.
          in: path
          name: routeTableName
          required: true
          type: string
        - description: Parameters supplied to the create or update route table operation.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/RouteTable"
        - 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 resulting RouteTable resource.
          schema:
            $ref: "#/definitions/RouteTable"
        "201":
          description: Create successful. The operation returns the resulting RouteTable resource.
          schema:
            $ref: "#/definitions/RouteTable"
      tags:
        - RouteTables
      x-ms-examples:
        Create route table:
          parameters:
            api-version: 2019-08-01
            parameters:
              location: westus
            resourceGroupName: rg1
            routeTableName: testrt
            subscriptionId: subid
          responses:
            "200":
              body:
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt
                location: westus
                name: testrt
                properties:
                  disableBgpRoutePropagation: true
                  provisioningState: Succeeded
                  routes: []
                type: Microsoft.Network/routeTables
            "201":
              body:
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt
                location: westus
                name: testrt
                properties:
                  disableBgpRoutePropagation: true
                  provisioningState: Succeeded
                  routes: []
                type: Microsoft.Network/routeTables
        Create route table with route:
          parameters:
            api-version: 2019-08-01
            parameters:
              location: westus
              properties:
                disableBgpRoutePropagation: true
                routes:
                  - name: route1
                    properties:
                      addressPrefix: 10.0.3.0/24
                      nextHopType: VirtualNetworkGateway
            resourceGroupName: rg1
            routeTableName: testrt
            subscriptionId: subid
          responses:
            "200":
              body:
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt
                location: westus
                name: testrt
                properties:
                  disableBgpRoutePropagation: true
                  provisioningState: Succeeded
                  routes:
                    - id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1
                      name: route1
                      properties:
                        addressPrefix: 10.0.3.0/24
                        nextHopType: VirtualNetworkGateway
                        provisioningState: Succeeded
                type: Microsoft.Network/routeTables
            "201":
              body:
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt
                location: westus
                name: testrt
                properties:
                  provisioningState: Succeeded
                  routes:
                    - id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1
                      name: route1
                      properties:
                        addressPrefix: 10.0.3.0/24
                        nextHopType: VirtualNetworkGateway
                        provisioningState: Succeeded
                type: Microsoft.Network/routeTables
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: azure-async-operation
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes":
    get:
      description: Gets all routes in a route table.
      operationId: Routes_List
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the route table.
          in: path
          name: routeTableName
          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 Route resources.
          schema:
            $ref: "#/definitions/RouteListResult"
      tags:
        - Routes
      x-ms-examples:
        List routes:
          parameters:
            api-version: 2019-08-01
            resourceGroupName: rg1
            routeTableName: testrt
            subscriptionId: subid
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1
                    name: route1
                    properties:
                      addressPrefix: 10.0.3.0/24
                      nextHopType: Internet
                      provisioningState: Succeeded
                  - id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route2
                    name: route2
                    properties:
                      addressPrefix: 10.0.2.0/24
                      nextHopType: VirtualNetworkGateway
                      provisioningState: Succeeded
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}":
    delete:
      description: Deletes the specified route from a route table.
      operationId: Routes_Delete
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the route table.
          in: path
          name: routeTableName
          required: true
          type: string
        - description: The name of the route.
          in: path
          name: routeName
          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: Accepted.
        "202":
          description: Accepted and the operation will complete asynchronously.
        "204":
          description: Route was deleted or not found.
      tags:
        - Routes
      x-ms-examples:
        Delete route:
          parameters:
            api-version: 2019-08-01
            resourceGroupName: rg1
            routeName: route1
            routeTableName: testrt
            subscriptionId: subid
          responses:
            "200": {}
            "202": {}
            "204": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
    get:
      description: Gets the specified route from a route table.
      operationId: Routes_Get
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the route table.
          in: path
          name: routeTableName
          required: true
          type: string
        - description: The name of the route.
          in: path
          name: routeName
          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 resulting Route resource.
          schema:
            $ref: "#/definitions/Route"
      tags:
        - Routes
      x-ms-examples:
        Get route:
          parameters:
            api-version: 2019-08-01
            resourceGroupName: rg1
            routeName: route1
            routeTableName: testrt
            subscriptionId: subid
          responses:
            "200":
              body:
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1
                name: route1
                properties:
                  addressPrefix: 10.0.3.0/24
                  nextHopType: Internet
                  provisioningState: Succeeded
    put:
      description: Creates or updates a route in the specified route table.
      operationId: Routes_CreateOrUpdate
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the route table.
          in: path
          name: routeTableName
          required: true
          type: string
        - description: The name of the route.
          in: path
          name: routeName
          required: true
          type: string
        - description: Parameters supplied to the create or update route operation.
          in: body
          name: routeParameters
          required: true
          schema:
            $ref: "#/definitions/Route"
        - 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 Route resource.
          schema:
            $ref: "#/definitions/Route"
        "201":
          description: Create successful. The operation returns the resulting Route resource.
          schema:
            $ref: "#/definitions/Route"
      tags:
        - Routes
      x-ms-examples:
        Create route:
          parameters:
            api-version: 2019-08-01
            resourceGroupName: rg1
            routeName: route1
            routeParameters:
              properties:
                addressPrefix: 10.0.3.0/24
                nextHopType: VirtualNetworkGateway
            routeTableName: testrt
            subscriptionId: subid
          responses:
            "200":
              body:
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1
                name: route1
                properties:
                  addressPrefix: 10.0.3.0/24
                  nextHopType: VirtualNetworkGateway
                  provisioningState: Succeeded
            "201":
              body:
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1
                name: route1
                properties:
                  addressPrefix: 10.0.3.0/24
                  nextHopType: VirtualNetworkGateway
                  provisioningState: Succeeded
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: azure-async-operation
definitions:
  Route:
    allOf:
      - description: Reference to another subresource.
        properties:
          id:
            description: Resource ID.
            type: string
        x-ms-azure-resource: true
    description: Route resource.
    properties:
      etag:
        description: A unique read-only string that changes whenever the resource is updated.
        type: string
      name:
        description: The name of the resource that is unique within a resource group. This name can be used to access the resource.
        type: string
      properties:
        description: Route resource.
        properties:
          addressPrefix:
            description: The destination CIDR to which the route applies.
            type: string
          nextHopIpAddress:
            description: The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance.
            type: string
          nextHopType:
            description: The type of Azure hop the packet should be sent to.
            enum:
              - VirtualNetworkGateway
              - VnetLocal
              - Internet
              - VirtualAppliance
              - None
            type: string
            x-ms-enum:
              modelAsString: true
              name: RouteNextHopType
          provisioningState:
            description: The current provisioning state.
            enum:
              - Succeeded
              - Updating
              - Deleting
              - Failed
            readOnly: true
            type: string
            x-ms-enum:
              modelAsString: true
              name: ProvisioningState
        required:
          - nextHopType
  RouteListResult:
    description: Response for the ListRoute API service call.
    properties:
      nextLink:
        description: The URL to get the next set of results.
        type: string
      value:
        description: A list of routes in a resource group.
        items:
          $ref: "#/definitions/Route"
        type: array
  RouteNextHopType:
    description: The type of Azure hop the packet should be sent to.
    enum:
      - VirtualNetworkGateway
      - VnetLocal
      - Internet
      - VirtualAppliance
      - None
    type: string
    x-ms-enum:
      modelAsString: true
      name: RouteNextHopType
  RoutePropertiesFormat:
    description: Route resource.
    properties:
      addressPrefix:
        description: The destination CIDR to which the route applies.
        type: string
      nextHopIpAddress:
        description: The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance.
        type: string
      nextHopType:
        description: The type of Azure hop the packet should be sent to.
        enum:
          - VirtualNetworkGateway
          - VnetLocal
          - Internet
          - VirtualAppliance
          - None
        type: string
        x-ms-enum:
          modelAsString: true
          name: RouteNextHopType
      provisioningState:
        description: The current provisioning state.
        enum:
          - Succeeded
          - Updating
          - Deleting
          - Failed
        readOnly: true
        type: string
        x-ms-enum:
          modelAsString: true
          name: ProvisioningState
    required:
      - nextHopType
  RouteTable:
    allOf:
      - description: Common resource representation.
        properties:
          id:
            description: Resource ID.
            type: string
          location:
            description: Resource location.
            type: string
          name:
            description: Resource name.
            readOnly: true
            type: string
          tags:
            additionalProperties:
              type: string
            description: Resource tags.
            type: object
          type:
            description: Resource type.
            readOnly: true
            type: string
        x-ms-azure-resource: true
    description: Route table resource.
    properties:
      etag:
        description: A unique read-only string that changes whenever the resource is updated.
        type: string
      properties:
        $ref: "#/definitions/RouteTablePropertiesFormat"
        description: Properties of the route table.
        x-ms-client-flatten: true
  RouteTableListResult:
    description: Response for the ListRouteTable API service call.
    properties:
      nextLink:
        description: The URL to get the next set of results.
        type: string
      value:
        description: A list of route tables in a resource group.
        items:
          $ref: "#/definitions/RouteTable"
        type: array
  RouteTablePropertiesFormat:
    description: Route Table resource.
    properties:
      disableBgpRoutePropagation:
        description: Whether to disable the routes learned by BGP on that route table. True means disable.
        type: boolean
      provisioningState:
        description: The current provisioning state.
        enum:
          - Succeeded
          - Updating
          - Deleting
          - Failed
        readOnly: true
        type: string
        x-ms-enum:
          modelAsString: true
          name: ProvisioningState
      routes:
        description: Collection of routes contained within a route table.
        items:
          allOf:
            - description: Reference to another subresource.
              properties:
                id:
                  description: Resource ID.
                  type: string
              x-ms-azure-resource: true
          description: Route resource.
          properties:
            etag:
              description: A unique read-only string that changes whenever the resource is updated.
              type: string
            name:
              description: The name of the resource that is unique within a resource group. This name can be used to access the resource.
              type: string
            properties:
              description: Route resource.
              properties:
                addressPrefix:
                  description: The destination CIDR to which the route applies.
                  type: string
                nextHopIpAddress:
                  description: The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance.
                  type: string
                nextHopType:
                  description: The type of Azure hop the packet should be sent to.
                  enum:
                    - VirtualNetworkGateway
                    - VnetLocal
                    - Internet
                    - VirtualAppliance
                    - None
                  type: string
                  x-ms-enum:
                    modelAsString: true
                    name: RouteNextHopType
                provisioningState:
                  description: The current provisioning state.
                  enum:
                    - Succeeded
                    - Updating
                    - Deleting
                    - Failed
                  readOnly: true
                  type: string
                  x-ms-enum:
                    modelAsString: true
                    name: ProvisioningState
              required:
                - nextHopType
        type: array
      subnets:
        description: A collection of references to subnets.
        items:
          $ref: ./virtualNetwork.json#/definitions/Subnet
        readOnly: true
        type: array
