Description

The addNetworkObject operation handles configuration related to NetworkObject model. 
This API call is not allowed on the standby unit in an HA pair.

HTTP request

POST /api/fdm/v6/object/networks

Data Parameters

Parameter Required Type Description
name True string A string that is the name of the network object.
description False string A string containing the description information
Field level constraints: length must be between 0 and 200 (inclusive). (Note: Additional constraints might exist)
subType True string An enum value that specifies the network object type
HOST - A host type.
NETWORK - A network type.
FQDN - A FQDN type.
RANGE - A range type.
Field level constraints: cannot be null. (Note: Additional constraints might exist)
value True string A string that defines the address content for the object. For HOST objects, this is a single IPv4 or IPv6 address without netmask or prefix. For NETWORK objects, this is an IPv4 or IPv6 network address with netmask (in CIDR notation) or prefix. For FQDN objects, this is a Fully qualified domain name. For RANGE objects, this is IPv4 or IPv6 addresses separated by '-'
Field level constraints: cannot be null, must match pattern ^((?!;).)*$. (Note: Additional constraints might exist)
isSystemDefined False boolean A Boolean value, TRUE or FALSE(the default). The TRUE value indicates that this Network object is a system defined object
dnsResolution False string DNS Resolution type can be IPV4_ONLY, IPV6_ONLY or IPV4_AND_IPV6
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",
        "dnsResolution": "IPV4_ONLY",
        "id": "string",
        "isSystemDefined": true,
        "name": "string",
        "subType": "HOST",
        "type": "networkobject",
        "value": "string",
        "version": "string"
    }' \
    "https://${HOST}:${PORT}/api/fdm/v6/object/networks"
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_network_object(client, body):
    return client.NetworkObject.addNetworkObject(
        body=body
    ).response().result


if __name__ == "__main__":
    host = "ftd.example.com"
    token = "access_token"
    client = get_client(host, token)

    body = {'description': 'string',
 'dnsResolution': 'IPV4_ONLY',
 'isSystemDefined': True,
 'name': 'string',
 'subType': 'HOST',
 'type': 'networkobject',
 'value': 'string'}

    add_network_object(client, body)