VRF

Resource Summary for VRF

 

HTTP Method
Resource
URL (BaseURL)
GET
POST
PUT
DELETE

VRF

/api/v1/vrf

Y

Y

N

N

/api/v1/vrf/{name}

Y

N

Y

Y

Logging

/api/v1/vrf/{name}/logging

Y

Y

N

N

/api/v1/vrf/{name}/logging/{id}

Y

N

N

Y

SNMP

/api/v1/vrf/{name}/snmp

Y

Y

N

N

/api/v1/vrf/{name}/snmp/{ip-address}

Y

N

N

Y

Static Route

/api/v1/vrf/{name}/routing-svc/static-routes

Y

Y

N

N

/api/v1/vrf/{name}/routing-svc/static-routes/{destination-network_next-hop}

N

N

N

N

/api/v1/vrf/{name}/routing-svc/static-routes/{destination-network_next-hop_intf-name}

Y

N

N

Y

NTP

/api/v1/vrf/{name}/ntp/servers

Y

Y

N

N

/api/v1/vrf/{name}/ntp/servers/{ntp-servers}

Y

N

N

Y

VPN Site-to-Site:
Tunnel

/api/v1/vrf/{vrf-name}/vpn-svc/site-to-site

Y

Y

N

N

/api/v1/vrf/{vrf-name}/vpn-svc/site-to-site/{vpn-interface-id}

Y

N

Y

Y

VPN Site-to-Site: Keyring

/api/v1/vrf/{vrf-name}/vpn-svc/ike/keyrings

Y

Y

N

N

/api/v1/vrf/{vrf-name}/vpn-svc/ike/keyrings/{keyring-id}

Y

N

Y

Y

VPN Site-to-Site: Statistics

/api/v1/vrf/{vrf-name}/vpn-svc/site-to-site/active/sessions

Y

N

N

N

/api/v1/vrf/{vrf-name}/vpn-svc/site-to-site/statistics

Y

N

N

N

VPN Site-to-Site: IKE Profile

/api/v1/vrf/{vrf-name}/vpn-svc/ike/profiles

Y

Y

N

N

/api/v1/vrf/{vrf-name}/vpn-svc/ike/profiles/{profile-name}

Y

N

Y

Y

DHCP Pool

/api/v1/vrf/{vrf-name}/dhcp/pool

Y

Y

N

N

/api/v1/vrf/{vrf-name}/dhcp/pool/{pool-name}

Y

N

Y

Y

DHCP Bindings

/api/v1/vrf/{vrf-name}/dhcp/active/bindings

Y

Y

N

N

/api/v1/vrf/{vrf-name}/dhcp/active/bindings/{host-ip}

Y

N

N

Y

VRF-Aware DNS

/api/v1/vrf/{vrf-name}/dns-servers

Y

Y

N

N

/api/v1/vrf/{vrf-name}/dns-servers/{dns-servers}

Y

N

N

Y

OSPF

/api/v1/vrf/{vrf-name}/routing-svc/ospf

Y

Y

N

N

/api/v1/vrf/{vrf-name}/ routing-svc/ospf/{routing-protocol-id}

N

N

N

Y

OSPF networks

/api/v1/vrf/{vrf-name}/routing-svc/ospf/{routing-protocol-id}/networks

Y

Y

N

N

/api/v1/vrf/{vrf-name}/routing-svc/ospf/{routing-protocol-id}/networks/{network-id}

Y

N

N

Y

OSPF passive interfaces

/api/v1/vrf/{vrf-name}/routing-svc/ospf/{routing-protocol-id}/passive

Y

N

N

N

/api/v1/vrf/{vrf-name}/routing-svc/ospf/{routing-protocol-id}/passive/{if-id}

Y

N

Y

Y

BGP

/api/v1/vrf/{vrf-name}/routing-svc/bgp

Y

Y

N

N

/api/v1/vrf/{vrf-name}/ routing-svc/bgp/{routing-protocol-id}

N

N

N

Y

BGP networks

/api/v1/vrf/{vrf-name}/routing-svc/bgp/{routing-protocol-id}/networks

Y

Y

N

N

/api/v1/vrf/{vrf-name}/routing-svc/bgp/{routing-protocol-id}/networks/{network-id}

Y

N

N

Y

BGP neighbors

/api/v1/vrf/{vrf-name}/routing-svc/bgp/{asn-id}/neighbors

Y

Y

N

N

/api/v1/vrf/{vrf-name}/routing-svc/bgp/{asn-id}/neighbors/{neighbor-ip-address}

Y

N

Y

Y

EIGRP

/api/v1/vrf/{vrf-name}/routing-svc/eigrp

Y

Y

N

N

/api/v1/vrf/{vrf-name}/ routing-svc/eigrp/{routing-protocol-id}

N

N

N

Y

EIGRP networks

/api/v1/vrf/{vrf-name}/routing-svc/eigrp/{routing-protocol-id}/networks

Y

Y

N

N

/api/v1/vrf/{vrf-name}/routing-svc/eigrp/{routing-protocol-id}/networks/{network-id}

Y

N

N

Y

EIGRP passive interfaces

/api/v1/vrf/{vrf-name}/routing-svc/eigrp/{routing-protocol-id}/passive

Y

N

N

N

/api/v1/vrf/{vrf-name}/routing-svc/eigrp/{routing-protocol-id}/passive/{if-id}

Y

N

Y

Y

VRF routing table

/api/v1/vrf/{vrf-name}/routing-svc/routing-table

Y

N

N

N

Static NAT

/api/v1/vrf/{vrf-name}/nat-svc/static

Y

Y

N

N

Static NAT rule

/api/v1/vrf/{vrf-name}/nat-svc/static/{nat-rule-id}

Y

N

Y

Y

Dynamic NAT

/api/v1/vrf/{vrf-name}/nat-svc/dynamic

Y

Y

N

N

Dynamic NAT rule

/api/v1/ vrf/{vrf-name}/nat-svc/dynamic/{nat-rule-id}

Y

N

Y

Y

NAT translations

/api/v1/ vrf/{vrf-name}/nat-svc/translations

Y

Y

N

N

VRF Object Resource

History

 

Release
Modification

IOS XE 3.11

Introduced for the CSR1000V platform

IOS XE 3.13

Added the following properties:

  • rd
  • route-target
  • action
  • community

IOS XE 3.14

Introduced for ASR1001-X and ASR1002-X platforms

Properties

 

Property
Type
Required for POST and PUT
Description

kind

string

Not applicable

Object type. “object#vrf”

name

string

Mandatory

Name of the VRF

forwarding

array

Mandatory

Array of name ex [“gi0”, “gi1”]

rd

string

Optional

Mandatory if route target

Route Distinguisher (ASN:nn or IP-address:nn)

route-target

array

Optional

route-target array

action

enumerated

Mandatory if route target

(sub-property of route-target)

route-target option, routing information action ("import" | "export" | "both")

community

string

Mandatory if route target

(sub-property of route-target)

route-target option, community from which to get routes (ASN:nn or IP-address:nn)

JSON Representation

{
"kind" : "object#vrf",
"name" : {string},
"forwarding" : [ {string} ]
"rd" : "1:1",
"route-target": [
{
"action" : "import",
"community" : "1:2"
}
]
}

Create VRF Object

Resource URI

 

Verb
URI

POST

/api/v1/vrf

Example

JSON Request

POST /api/v1/vrf
Content-Type: application/json
 
{
"name" : "pepsi",
"forwarding" : [ "GigabitEthernet1" ]
"rd" : "1:1",
"route-target" : [
{
"action" : "import",
"community" : "1:2"
}
]
}

JSON Response

201 Created
Location: https://host/api/v1/vrf/pepsi

Modify a VRF Object

Resource URI

 

Verb
URI

PUT

/api/v1/vrf/{vrf-name}

Example

JSON Request

PUT /api/v1/vrf/coke
Content-Type: application/json
 
{
"forwarding" : [ "GigabitEthernet1" ]
}

JSON Response

204 No Content

Retrieve a VRF Object

Resource URI

 

Verb
URI

GET

/api/v1/vrf/{vrf-name}

Example

JSON Request

GET /api/v1/vrf/coke
Accept: application/json

JSON Response

200 OK
Content-Type: application/json
 
{
"kind" : "object#vrf",
"name" : "coke",
"forwarding" : [ "GigabitEthernet1" ]
"rd" : "1:1",
"route-target" : [ {
"action" : "import",
"community" : "1:2"
}
]
}

Retrieve All VRF Objects

Properties for Retrieve All

 

Property
Type
Description

kind

string

Object type: “collection#vrf”

items

array

Array of object#vrf

JSON Representation

{
"kind" : "collection#vrf",
"items" : [ {object#vrf} ]
}

Resource URI

 

Verb
URI

GET

/api/v1/vrf

Example

JSON Request

GET /api/v1/vrf
Accept: application/json

JSON Response

200 OK
Content-Type: application/json
 
{
"kind": "collection#vrf",
"items": [
{
"kind" : "object#vrf",
"name" : "coke",
"forwarding" : [ "GigabitEthernet1" ]
"rd" : "1:1",
"route-target" : [{
"action" : "import",
"community": "1:2"}
]
},
{
"kind" : "object#vrf",
"name" : "pepsi",
"forwarding" : [ "GigabitEthernet2" ]
"rd" : "1:1",
"route-target" : [ {
"action" : "import",
"community": "1:2"
}
]
}
]
}

Delete a VRF Object

Resource URI

 

Verb
URI

DELETE

/api/v1/vrf/{vrf-name}

Example

JSON Request

DELETE /api/v1/vrf/coke

JSON Response

204 No Content

VRF Logging

History

 

Release
Modification

IOS XE 3.11

Introduced for the CSR1000V platform

IOS XE 3.14

Introduced for ASR1001-X and ASR1002-X platforms

VRF logging leverages the same schema as defined for the Logging resource used in global configuration, with the exception that the VRF logging resource URLs are as shown below. See Logging Resource for details.

/api/v1/vrf/{name}/logging
/api/v1/vrf/{name}/logging/{id}

VRF SNMP

History

 

Release
Modification

IOS XE 3.11

Introduced for the CSR1000V platform

IOS XE 3.14

Introduced for ASR1001-X and ASR1002-X platforms

VRF SNMP leverages the same schema as defined for the SNMP resource used in global configuration, with the exception that the VRF SNMP resource URLs are as shown below. See SNMP Server Resource for details.

/api/v1/vrf/{name}/snmp
/api/v1/vrf/{name}/snmp/{ip-address}

VRF Static Route

History

 

Release
Modification

IOS XE 3.11

Introduced for the CSR1000V platform

IOS XE 3.14

Introduced for ASR1001-X and ASR1002-X platforms

VRF Static Routes leverage the same schema as defined in the Static Route Collection resource used in routing configuration, with the exception that the VRF Static Route resource URLs are as shown below. See Static Route Resource for details.

/api/v1/vrf/{name}/routing-svc/static-routes
/api/v1/vrf/{name}/routing-svc/static-routes/{destination-network_next-hop}
/api/v1/vrf/{name}/routing-svc/static-routes/{destination-network_next-hop_intf-name}

VRF NTP

History

 

Release
Modification

IOS XE 3.11

Introduced for the CSR1000V platform

IOS XE 3.14

Introduced for ASR1001-X and ASR1002-X platforms

VRF NTP leverages the same schema as defined in the Network Time Protocol chapter, with the exception that the VRF NTP resource URLs are:

/api/v1/vrf/{name}/ntp/servers
/api/v1/vrf/{name}/ntp/servers/{ntp-servers}
 

In the URLs above, {name} refers to a VRF name created using /api/v1/vrf.

VRF VPN Site-to-Site

History

 

Release
Modification

IOS XE 3.12

Introduced for the CSR1000V platform

IOS XE 3.13

Change tunnel state API added:

/api/v1/vrf/{vrf-name}/vpn-svc/site-to-site/{vpn-interface-id}/state

See Change State of a Tunnel Interface.

IOS XE 3.14

Introduced for ASR1001-X and ASR1002-X platforms

VRF VPN Site-to-Site leverages the same schema as defined for VPN Site-to-Site, with the exception that the VRF VPN Site-to-Site resource URLs are as shown below. See Virtual Private Networks (SVTI and EzVPN) for details.

  • Tunnel
/api/v1/vrf/{vrf-name}/vpn-svc/site-to-site
/api/v1/vrf/{vrf-name}/vpn-svc/site-to-site/{vpn-interface-id}
/api/v1/vrf/{vrf-name}/vpn-svc/site-to-site/{vpn-interface-id}/state

 

  • Keyring
/api/v1/vrf/{vrf-name}/vpn-svc/ike/keyrings
/api/v1/vrf/{vrf-name}/vpn-svc/ike/keyrings/{keyring-id}

 

  • Statistics
/api/v1/vrf/{vrf-name}/vpn-svc/site-to-site/active/sessions
/api/v1/vrf/{vrf-name}/vpn-svc/site-to-site/statistics

 

  • IKE Profile
/api/v1/vrf/{vrf-name}/vpn-svc/ike/profiles
/api/v1/vrf/{vrf-name}/vpn-svc/ike/profiles/{profile-name}

 

In the URLs above, {vrf-name} refers to a VRF name created using /api/v1/vrf.

VRF DHCP

History

 

Release
Modification

IOS XE 3.12

Introduced for the CSR1000V platform

IOS XE 3.14

Introduced for ASR1001-X and ASR1002-X platforms

VRF DHCP leverages the same schema as defined for the DHCP Server, with the exception that the VRF DHCP resource URLs are as shown below. See DHCP Server and Relay Agent for details.

  • DHCP pool
/api/v1/vrf/{vrf-name}/dhcp/pool
/api/v1/vrf/{vrf-name}/dhcp/pool/{pool-name}

 

  • DHCP bindings
/api/v1/vrf/{name}/dhcp/active/bindings
/api/v1/vrf/{name}/dhcp/active/bindings/{host-ip}

 

VRF-Aware DNS

History

 

Release
Modification

IOS XE 3.13

Introduced for the CSR1000V platform

IOS XE 3.14

Introduced for ASR1001-X and ASR1002-X platforms

VRF-Aware DNS leverages the same schema as defined for the DNS Server resource, with the exception that the VRF-Aware DNS resource URLs are as shown below. The URL for VRF-aware DNS includes the VRF name. See Domain Name System (DNS) Server for details.

/api/v1/vrf/{vrf-name}/dns-servers
/api/v1/vrf/{vrf-name}/dns-servers/{dns-servers}

 

VRF-Aware OSPF Routing

History

 

Release
Modification

IOS XE 3.13

Introduced for the CSR1000V platform

IOS XE 3.14

Introduced for ASR1001-X and ASR1002-X platforms

VRF-Aware OSPF Routing leverages the same schema as defined for OSPF routing without VRF, with the exception that the VRF-Aware OSPF Routing resource URLs are as shown below. The URL for VRF-Aware OSPF Routing includes the VRF name. See Routing Protocol (OSPF, BGP, EIGRP) Requirements for details.

  • OSPF creation
/api/v1/vrf/{vrf-name}/routing-svc/ospf
 
  • OSPF deletion
/api/v1/vrf/{vrf-name}/routing-svc/ospf/{routing-protocol-id}
 
  • OSPF networks
/api/v1/vrf/{vrf-name}/routing-svc/ospf/{routing-protocol-id}/networks
 
  • OSPF network (single)
/api/v1/vrf/{vrf-name}/routing-svc/ospf/{routing-protocol-id}/networks/{network-id}
 
  • OSPF passive interfaces
/api/v1/vrf/{vrf-name}/routing-svc/ospf/{routing-protocol-id}/passive
 
  • OSPF passive interface (single)
/api/v1/vrf/{vrf-name}/routing-svc/ospf/{routing-protocol-id}/passive/{if-id}
 

VRF-Aware BGP Routing

History

 

Release
Modification

IOS XE 3.13

Introduced for the CSR1000V platform

IOS XE 3.14

Introduced for ASR1001-X and ASR1002-X platforms

VRF-Aware BGP Routing leverages the same schema as defined for BGP routing without VRF, with the exception that the VRF-Aware BGP Routing resource URLs are as shown below. The URL for VRF-Aware BGP Routing includes the VRF name. See Routing Protocol (OSPF, BGP, EIGRP) Requirements for details.

  • BGP creation
/api/v1/vrf/{vrf-name}/routing-svc/bgp
 
  • BGP deletion
/api/v1/vrf/{vrf-name}/ routing-svc/bgp/{routing-protocol-id}
 
  • BGP networks
/api/v1/vrf/{vrf-name}/routing-svc/bgp/{routing-protocol-id}/networks
 
  • BGP network (single)
/api/v1/vrf/{vrf-name}/routing-svc/bgp/{routing-protocol-id}/networks/{network-id}
 
  • BGP neighbors
/api/v1/vrf/{vrf-name}/routing-svc/bgp/{asn-id}/neighbors
 
  • BGP neighbor (single)
/api/v1/routing-svc/bgp/{asn-id}/neighbors/{neighbor-ip-address}
 

VRF-Aware EIGRP Routing

History

 

Release
Modification

IOS XE 3.13

Introduced for the CSR1000V platform

IOS XE 3.14

Introduced for ASR1001-X and ASR1002-X platforms

VRF-Aware EIGRP Routing leverages the same schema as defined for EIGRP routing without VRF, with the exception that the VRF-Aware EIGRP Routing resource URLs are as shown below, and includes the following additional optional property:

 

Property
Type
Required for POST and PUT
Description

virtual-instance-name

string

Optional

EIGRP virtual instance name

The URL for VRF-Aware EIGRP Routing includes the VRF name. See Routing Protocol (OSPF, BGP, EIGRP) Requirements for details.

  • EIGRP creation
/api/v1/vrf/{vrf-name}/routing-svc/eigrp
 
  • EIGRP deletion
/api/v1/vrf/{vrf-name}/ routing-svc/eigrp/{routing-protocol-id}
 
  • EIGRP networks
/api/v1/vrf/{vrf-name}/routing-svc/eigrp/{routing-protocol-id}/networks
 
  • EIGRP network (single)
/api/v1/vrf/{vrf-name}/routing-svc/eigrp/{routing-protocol-id}/networks/{network-id}
 
  • EIGRP passive interfaces
/api/v1/vrf/{vrf-name}/routing-svc/eigrp/{routing-protocol-id}/passive
 
  • EIGRP passive interface (single)
/api/v1/vrf/{vrf-name}/routing-svc/eigrp/{routing-protocol-id}/passive/{if-id}
 

VRF-Aware Routing Table

History

 

Release
Modification

IOS XE 3.13

Introduced for the CSR1000V platform

IOS XE 3.14

Introduced for ASR1001-X and ASR1002-X platforms

VRF-Aware Routing Table leverages the same schema as defined for Routing Table without VRF, with the exception that the VRF-Aware Routing Table resource URLs are as shown below. The URL for VRF-Aware Routing Table includes the VRF name. See Routing Table Display for details.

/api/v1/vrf/{vrf-name}/routing-svc/routing-table
 

VRF-Aware NAT

History

 

Release
Modification

IOS XE 3.13

Introduced for the CSR1000V platform

IOS XE 3.14

Introduced for ASR1001-X and ASR1002-X platforms

VRF-Aware NAT leverages the same schema as defined for static NAT, dynamic NAT, and NAT translation without VRF, with the exception that the VRF-Aware NAT resource URLs are as shown below, and includes the following additional optional property:

 

Property
Type
Required for POST and PUT
Description

match-in-vrf

Boolean

optional

The match-in-vrf option is required when two overlapping VRFs use the same public address, and will help route packets correctly within the VRF.

The URL for VRF-Aware NAT includes the VRF name. See Network Address Translation (NAT) for details.

  • Static NAT
/api/v1/vrf/{vrf-name}/nat-svc/static
 
  • Static NAT rule
/api/v1/vrf/{vrf-name}/nat-svc/static/{nat-rule-id}
 
  • Dynamic NAT
/api/v1/vrf/{vrf-name}/nat-svc/dynamic
 
  • Dynamic NAT rule
/api/v1/ vrf/{vrf-name}/nat-svc/dynamic/{nat-rule-id}
 
  • NAT translations
/api/v1/ vrf/{vrf-name}/nat-svc/translations