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": {
      "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, 
      "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"
}