NSX-T Data Center REST API

ServiceChain (type)

{
  "description": "Service chain is a set of network Services. A Service chain is made up of ordered list of service profiles belonging to any same or different services.",
  "extends": {
    "$ref": "ManagedResource"
  },
  "id": "ServiceChain",
  "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"
    },
    "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"
    },
    "forward_path_service_profiles": {
      "description": "List of ServiceInsertionServiceProfiles that constitutes the the service chain. The forward path service profiles are applied to ingress traffic.",
      "items": {
        "$ref": "ResourceReference"
      },
      "maxItems": 4,
      "readonly": false,
      "required": true,
      "title": "Forward path service profiles",
      "type": "array"
    },
    "id": {
      "can_sort": true,
      "title": "Unique identifier of this resource",
      "type": "string"
    },
    "on_failure_policy": {
      "default": "ALLOW",
      "description": "Failure policy for the service tells datapath, the action to take i.e to allow or block traffic during failure scenarios.",
      "enum": [
        "ALLOW",
        "BLOCK"
      ],
      "readonly": false,
      "required": false,
      "title": "On Failure Policy",
      "type": "string"
    },
    "path_selection_policy": {
      "default": "LOCAL",
      "description": "Path selection policy can be - ANY - Service Insertion is free to redirect to any service path regardless of any load balancing considerations or flow pinning. LOCAL - means to prefer local service insances. REMOTE - preference is to redirect to the SVM co-located on the same host.",
      "enum": [
        "ANY",
        "LOCAL",
        "REMOTE"
      ],
      "readonly": false,
      "required": false,
      "title": "Path Selection Policy",
      "type": "string"
    },
    "resource_type": {
      "description": "The type of this resource.",
      "readonly": false,
      "type": "string"
    },
    "reverse_path_service_profiles": {
      "description": "List of ServiceInsertionServiceProfiles id. Reverse path service profiles are applied to egress traffic and is optional. 2 different set of profiles can be defined for forward and reverse path. If not defined, the reverse of the forward path service profile is applied.",
      "items": {
        "$ref": "ResourceReference"
      },
      "maxItems": 4,
      "readonly": false,
      "required": false,
      "title": "Reverse path service profiles",
      "type": "array"
    },
    "service_attachments": {
      "description": "Service attachment specifies the scope i.e Service plane at which the SVMs are deployed.",
      "items": {
        "$ref": "ResourceReference"
      },
      "maxItems": 1,
      "minItems": 1,
      "readonly": false,
      "required": true,
      "title": "Service Attachment list",
      "type": "array"
    },
    "service_chain_id": {
      "description": "A unique id generated for every service chain. This is not a uuid.",
      "readonly": true,
      "required": false,
      "title": "Service chain id",
      "type": "string"
    },
    "tags": {
      "items": {
        "$ref": "Tag"
      },
      "maxItems": 30,
      "title": "Opaque identifiers meaningful to the API user",
      "type": "array"
    }
  },
  "title": "Service Chain",
  "type": "object"
}