Description

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

HTTP request

POST /api/fdm/v6/devicesettings/default/managementaccess

Data Parameters

Parameter Required Type Description
name False string A string that represents the name of the object
networkObjects True [object] A mandatory set of network objects, representing one or more addresses or networks, whose data traffic is allowed via the given network interface.
Field level constraints: cannot be blank or empty. (Note: Additional constraints might exist)
Allowed types are: [NetworkObject]
networkInterface True object A mandatory interface object representing the interface configured for data access.
Field level constraints: cannot be null. (Note: Additional constraints might exist)
Allowed types are: [BridgeGroupInterface, EtherChannelInterface, PhysicalInterface, SubInterface, VirtualTunnelInterface, VlanInterface]
protocols True [object] A mandatory set of protocol objects, representing one or more protocols, (e.g. HTTPS and SSH) that are allowed via the given network interface and addresses/networks.
Field level constraints: cannot be null, cannot be blank or empty. (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 '{
        "id": "string",
        "name": "string",
        "networkInterface": {
            "id": "string",
            "name": "string",
            "type": "string",
            "version": "string"
        },
        "networkObjects": [
            {
                "id": "string",
                "name": "string",
                "type": "string",
                "version": "string"
            }
        ],
        "protocols": [
            "HTTPS"
        ],
        "type": "datainterfacemanagementaccess",
        "version": "string"
    }' \
    "https://${HOST}:${PORT}/api/fdm/v6/devicesettings/default/managementaccess"
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_data_interface_management_access(client, body):
    return client.DataInterfaceManagementAccess.addDataInterfaceManagementAccess(
        body=body
    ).response().result


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

    body = {'name': 'string',
 'networkInterface': {'id': 'string',
                      'name': 'string',
                      'type': 'string',
                      'version': 'string'},
 'networkObjects': [{'id': 'string',
                     'name': 'string',
                     'type': 'string',
                     'version': 'string'}],
 'protocols': ['HTTPS'],
 'type': 'datainterfacemanagementaccess'}

    add_data_interface_management_access(client, body)