ServiceDefinition

Registering a Service is the first step in the ServiceInsertion mechanism. A ServiceDefinition is used to create a service.


Properties

integer
_create_time Optional

Timestamp of resource creation


string
_create_user Optional

ID of the user who created this resource


integer
_last_modified_time Optional

Timestamp of last modification


string
_last_modified_user Optional

ID of the user who last modified this resource


array of ResourceLink
_links Optional

The server will populate this field when returing the resource. Ignored on PUT and POST.


string
_protection Optional

Protection status is one of the following: PROTECTED - the client who retrieved the entity is not allowed to modify it. NOT_PROTECTED - the client who retrieved the entity is allowed to modify it REQUIRE_OVERRIDE - the client who retrieved the entity is a super user and can modify it, but only when providing the request header X-Allow-Overwrite=true. UNKNOWN - the _protection field could not be determined for this entity.


integer
_revision Optional

The _revision property describes the current revision of the resource. To prevent clients from overwriting each other’s changes, PUT operations must include the current _revision of the resource, which clients should obtain by issuing a GET operation. If the _revision provided in a PUT request is missing or stale, the operation will be rejected.


string
_schema Optional

Schema for this resource


_self Optional

Link to this resource


boolean
_system_owned Optional

Indicates system owned resource


array of string
attachment_point Optional

The point at which the service is deployed/attached for redirecting the traffic to the the partner appliance. Attachment Point is required if Service caters to any functionality other than EPP.

Possible values are: TIER0_LRTIER1_LRSERVICE_PLANE


string
description Optional

Description of this resource


string
display_name Optional

Defaults to ID if not set


array of string
functionalities Optional

The capabilities provided by the services. Needs to be one or more of the following | NG_FW - Next Generation Firewall | IDS_IPS - Intrusion detection System / Intrusion Prevention System | NET_MON - Network Monitoring | HCX - Hybrid Cloud Exchange | BYOD - Bring Your Own Device | EPP - Endpoint Protection.(Third party AntiVirus partners using NXGI should use this functionality for the service)

Possible values are: NG_FWIDS_IPSNET_MONHCXBYODEPP


string
id Optional

Unique identifier of this resource


array of string
implementations Optional

This indicates the insertion point of the service i.e whether the service will be used to protect North-South or East-West traffic in the datacenter.

Possible values are: NORTH_SOUTHEAST_WEST


string
on_failure_policy Optional

Failure policy for the service tells datapath, the action to take i.e to Allow or Block traffic during failure scenarios. For north-south ServiceInsertion, failure policy in the service instance takes precedence. For east-west ServiceInsertion, failure policy in the service chain takes precedence. BLOCK is not supported for Endpoint protection (EPP) functionality.

Possible values are: ALLOWBLOCK


string
resource_type Optional

The type of this resource.


service_capability Optional

Service capability.


service_deployment_spec Optional

Service Deployment Specification defines takes in information required to deploy and configure a partner appliance/service-vm.


string
service_manager_id Optional

ID of the service manager to which this service is attached with. This field is not set during creation of service. This field will be set explicitly when Service Manager is created successfully using this service.


array of Tag
tags Optional

Opaque identifiers meaningful to the API user


array of string
transports Optional

Transport Type of the service, which is the mechanism of redirecting the traffic to the the partner appliance. Transport type is required if Service caters to any functionality other than EPP.

Possible values are: L2_BRIDGEL3_ROUTEDNSH


string
vendor_id Optional

Id which is unique to a vendor or partner for which the service is created.

JSON Example

{
    "_create_time": 0,
    "_create_user": "string",
    "_last_modified_time": 0,
    "_last_modified_user": "string",
    "_links": [
        {
            "action": "string",
            "href": "string",
            "rel": "string"
        }
    ],
    "_protection": "string",
    "_revision": 0,
    "_schema": "string",
    "_self": {
        "action": "string",
        "href": "string",
        "rel": "string"
    },
    "_system_owned": false,
    "attachment_point": [
        "string"
    ],
    "description": "string",
    "display_name": "string",
    "functionalities": [
        "string"
    ],
    "id": "string",
    "implementations": [
        "string"
    ],
    "on_failure_policy": "string",
    "resource_type": "string",
    "service_capability": {
        "can_decrement_si": false,
        "nsh_liveness_support_enabled": false
    },
    "service_deployment_spec": {
        "deployment_specs": [
            {
                "host_type": "string",
                "min_host_version": "string",
                "name": "string",
                "ovf_url": "string",
                "service_form_factor": "string"
            }
        ],
        "deployment_template": [
            {
                "attributes": [
                    {
                        "attribute_type": "string",
                        "display_name": "string",
                        "key": "string",
                        "read_only": false,
                        "value": "string"
                    }
                ],
                "name": "string"
            }
        ],
        "nic_metadata_list": [
            {
                "interface_index": 0,
                "interface_label": "string",
                "interface_type": "string",
                "transports": [
                    "string"
                ],
                "user_configurable": false
            }
        ],
        "svm_version": "string"
    },
    "service_manager_id": "string",
    "tags": [
        {
            "scope": "string",
            "tag": "string"
        }
    ],
    "transports": [
        "string"
    ],
    "vendor_id": "string"
}
Feedback

Was this page helpful?