NSX-T Data Center REST API

ServiceAttachment (type)

{
  "description": "A ServiceAttachment represents a point on NSX entity (Example - Edge Router) to which ServiceInstance can be connected through an InstanceEndpoint. Example - In VMWare Hybric Cloud Extention (HCX) use case, HCX appliances connect to this Service Attachment Point. We do not handle the lifecycle of these appliance/s.",
  "extends": {
    "$ref": "ManagedResource"
  },
  "id": "ServiceAttachment",
  "module_id": "ServiceInsertionCommonTypes",
  "properties": {
    "_create_time": {
      "$ref": "EpochMsTimestamp",
      "can_sort": true,
      "description": "Timestamp of resource creation",
      "readonly": true
    },
    "_create_user": {
      "description": "ID of the user who created this resource",
      "readonly": true,
      "type": "string"
    },
    "_last_modified_time": {
      "$ref": "EpochMsTimestamp",
      "can_sort": true,
      "description": "Timestamp of last modification",
      "readonly": true
    },
    "_last_modified_user": {
      "description": "ID of the user who last modified this resource",
      "readonly": true,
      "type": "string"
    },
    "_links": {
      "description": "The server will populate this field when returing the resource. Ignored on PUT and POST.",
      "items": {
        "$ref": "ResourceLink"
      },
      "readonly": true,
      "title": "References related to this resource",
      "type": "array"
    },
    "_protection": {
      "description": "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.",
      "readonly": true,
      "title": "Indicates protection status of this resource",
      "type": "string"
    },
    "_revision": {
      "computed": true,
      "description": "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.",
      "title": "Generation of this resource config",
      "type": "int"
    },
    "_schema": {
      "readonly": true,
      "title": "Schema for this resource",
      "type": "string"
    },
    "_self": {
      "$ref": "SelfResourceLink",
      "readonly": true,
      "title": "Link to this resource"
    },
    "_system_owned": {
      "description": "Indicates system owned resource",
      "readonly": true,
      "type": "boolean"
    },
    "attachment_status": {
      "default": "UP",
      "description": "UP - A Service Attachment will have its Service Port - UP and with a configured IP address. DOWN - An Inactive ServiceAttachment has its Service Port - DOWN. It can be used to connect set of appliances that do not need to exchange traffic to/from/through the Edge node.",
      "enum": [
        "UP",
        "DOWN"
      ],
      "readonly": false,
      "required": false,
      "title": "Attachment Status",
      "type": "string"
    },
    "deployed_to": {
      "$ref": "ResourceReference",
      "description": "NSX Resource where we want to create Service Attachment Point. Ex. T0 LR Edge in case of north-south ServiceInsertion and a TransportZone (which is used to define the service plane) in case of east-west service insertion.",
      "readonly": false,
      "required": true,
      "title": "Deployed-to object"
    },
    "description": {
      "can_sort": true,
      "maxLength": 1024,
      "title": "Description of this resource",
      "type": "string"
    },
    "display_name": {
      "can_sort": true,
      "computed": true,
      "description": "Defaults to ID if not set",
      "maxLength": 255,
      "title": "Identifier to use when displaying entity in logs or GUI",
      "type": "string"
    },
    "id": {
      "can_sort": true,
      "title": "Unique identifier of this resource",
      "type": "string"
    },
    "local_ips": {
      "description": "Local IPs associated with this Service Attachment.",
      "items": {
        "$ref": "IPInfo"
      },
      "maxItems": 1,
      "minItems": 1,
      "required": false,
      "title": "Local IPs",
      "type": "array"
    },
    "logical_routers": {
      "description": "List of LogicalRouters to be connected to the ServicePlane logical switch via a ServiceLink.",
      "items": {
        "$ref": "ResourceReference"
      },
      "maxItems": 128,
      "minItems": 1,
      "readonly": false,
      "required": false,
      "title": "Logical Router list",
      "type": "array"
    },
    "logical_switch": {
      "$ref": "ResourceReference",
      "description": "Logical Switch gets created as a part of Service Attachment creation.",
      "readonly": true,
      "required": false,
      "title": "Logical Switch"
    },
    "resource_type": {
      "description": "The type of this resource.",
      "readonly": false,
      "type": "string"
    },
    "service_port": {
      "$ref": "ResourceReference",
      "description": "Service Port gets created as a part of Service Attachment creation. It is a Logical Router Port of type CentralizedServicePort. It does not participate in distributed routing. Stateless Policy Based Routing service can be applied on this port.",
      "readonly": true,
      "required": false,
      "title": "Service Port (Logical Router Centralized Service Port)"
    },
    "tags": {
      "items": {
        "$ref": "Tag"
      },
      "maxItems": 30,
      "title": "Opaque identifiers meaningful to the API user",
      "type": "array"
    }
  },
  "title": "Logical Attachment Point for a 3rd Party Service",
  "type": "object"
}