Description
The addRouteMap operation handles configuration related to RouteMap model.
This API call is not allowed on the standby unit in an HA pair.
HTTP request
POST /api/fdm/v6/object/routemaps
Data Parameters
Parameter | Required | Type | Description | |||
---|---|---|---|---|---|---|
name | False | string | A string containing the name of the route map. | |||
description | False | string | Field level constraints: length must be between 0 and 200 (inclusive). (Note: Additional constraints might exist) |
|||
entries | True | [object] | An object holding a list of route map entries. A minimum of 1 entry is required for each route map object. Field level constraints: cannot be null. (Note: Additional constraints might exist) |
|||
type | True | string | A UTF8 string, all letters lower-case, that represents the class-type. This corresponds to the class name. |
Example
curl -X POST \
--header "Accept: application/json" \
--header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Content-Type: application/json" \
-d '{
"description": "string",
"entries": [
{
"action": "PERMIT",
"asPathConvertRouteTagIntoASPath": true,
"asPathLists": [],
"asPathPrependASPath": [],
"asPathPrependLastASToASPath": 0,
"automaticTagSetting": true,
"communityListSetting": 0,
"communityListSettingInternet": true,
"communityListSettingNoAdvertise": true,
"communityListSettingNoExport": true,
"communityLists": [],
"interfaces": [],
"ipv4AccessListAddresses": [],
"ipv4AccessListNextHops": [],
"ipv4AccessListRouteSources": [],
"ipv4PrefixListAddresses": [],
"ipv4PrefixListNextHops": [],
"ipv4PrefixListRouteSources": [],
"ipv6AccessListAddress": {
"id": "string",
"name": "string",
"type": "string",
"version": "string"
},
"ipv6AccessListNextHop": {
"id": "string",
"name": "string",
"type": "string",
"version": "string"
},
"ipv6AccessListRouteSource": {
"id": "string",
"name": "string",
"type": "string",
"version": "string"
},
"ipv6PrefixListAddress": {
"id": "string",
"name": "string",
"type": "string",
"version": "string"
},
"ipv6PrefixListNextHop": {
"id": "string",
"name": "string",
"type": "string",
"version": "string"
},
"ipv6PrefixListRouteSource": {
"id": "string",
"name": "string",
"type": "string",
"version": "string"
},
"localPreferenceSetting": 0,
"metricBandwidth": 0,
"metricRouteValues": [],
"metricType": "INTERNAL",
"nextHopIPV4Setting": "USE_PEER_ADDRESS",
"nextHopIPV6Setting": "USE_PEER_ADDRESS",
"originSetting": "LOCAL_IGP",
"policyLists": [],
"prefixListIPV4Setting": {
"id": "string",
"name": "string",
"type": "string",
"version": "string"
},
"prefixListIPV6Setting": {
"id": "string",
"name": "string",
"type": "string",
"version": "string"
},
"routeTypeExternal1": true,
"routeTypeExternal2": true,
"routeTypeInternal": true,
"routeTypeLocal": true,
"routeTypeNSSAExternal1": true,
"routeTypeNSSAExternal2": true,
"sequence": 0,
"specificIPsIPV4Setting": [],
"specificIPsIPV6Setting": [],
"tagValues": [],
"type": "routemapentry",
"weightSetting": 0
}
],
"id": "string",
"name": "string",
"type": "routemap",
"version": "string"
}' \
"https://${HOST}:${PORT}/api/fdm/v6/object/routemaps"
from bravado.requests_client import RequestsClient
from bravado.client import SwaggerClient
def get_client(host, token):
http_client = RequestsClient()
http_client.ssl_verify = False
http_client.set_api_key(
host,
"Bearer {}".format(token),
param_name="Authorization",
param_in="header"
)
return SwaggerClient.from_url(
"https://{}/apispec/ngfw.json".format(host),
http_client=http_client,
config={
"validate_responses": False,
"validate_swagger_spec": False
}
)
def add_route_map(client, body):
return client.RouteMap.addRouteMap(
body=body
).response().result
if __name__ == "__main__":
host = "ftd.example.com"
token = "access_token"
client = get_client(host, token)
body = {'description': 'string',
'entries': [{'action': 'PERMIT',
'asPathConvertRouteTagIntoASPath': True,
'asPathLists': [],
'asPathPrependASPath': [],
'asPathPrependLastASToASPath': 0,
'automaticTagSetting': True,
'communityListSetting': 0,
'communityListSettingInternet': True,
'communityListSettingNoAdvertise': True,
'communityListSettingNoExport': True,
'communityLists': [],
'interfaces': [],
'ipv4AccessListAddresses': [],
'ipv4AccessListNextHops': [],
'ipv4AccessListRouteSources': [],
'ipv4PrefixListAddresses': [],
'ipv4PrefixListNextHops': [],
'ipv4PrefixListRouteSources': [],
'ipv6AccessListAddress': {'id': 'string',
'name': 'string',
'type': 'string',
'version': 'string'},
'ipv6AccessListNextHop': {'id': 'string',
'name': 'string',
'type': 'string',
'version': 'string'},
'ipv6AccessListRouteSource': {'id': 'string',
'name': 'string',
'type': 'string',
'version': 'string'},
'ipv6PrefixListAddress': {'id': 'string',
'name': 'string',
'type': 'string',
'version': 'string'},
'ipv6PrefixListNextHop': {'id': 'string',
'name': 'string',
'type': 'string',
'version': 'string'},
'ipv6PrefixListRouteSource': {'id': 'string',
'name': 'string',
'type': 'string',
'version': 'string'},
'localPreferenceSetting': 0,
'metricBandwidth': 0,
'metricRouteValues': [],
'metricType': 'INTERNAL',
'nextHopIPV4Setting': 'USE_PEER_ADDRESS',
'nextHopIPV6Setting': 'USE_PEER_ADDRESS',
'originSetting': 'LOCAL_IGP',
'policyLists': [],
'prefixListIPV4Setting': {'id': 'string',
'name': 'string',
'type': 'string',
'version': 'string'},
'prefixListIPV6Setting': {'id': 'string',
'name': 'string',
'type': 'string',
'version': 'string'},
'routeTypeExternal1': True,
'routeTypeExternal2': True,
'routeTypeInternal': True,
'routeTypeLocal': True,
'routeTypeNSSAExternal1': True,
'routeTypeNSSAExternal2': True,
'sequence': 0,
'specificIPsIPV4Setting': [],
'specificIPsIPV6Setting': [],
'tagValues': [],
'type': 'routemapentry',
'weightSetting': 0}],
'name': 'string',
'type': 'routemap'}
add_route_map(client, body)