Skip to main content
A newer release of this product is available.

Retrieve an application template

Contributors

GET /application/templates/{name}

Introduced In: 9.6

Retrieves an application template.

Template properties

Each application template has a set of properties. These properties are always nested under a property with the same name as the template. For example, when using the mongo_db_on_san template, the properties are found nested inside the mongo_db_on_san property. The properties nested under the template property are all specific to the template. The model for the application template object includes all the available templates, but only the object that corresponds to the template's name is returned, and only one is provided in any application API.

The model of each template includes a description of each property and its allowed values or usage. Default values are also indicated when available. The template properties returned by this API include an example value for each property.

Template prerequisites

Each template has a set of prerequisites required for its use. If any of these prerequisites are not met, the missing_prerequisites property indicates which prerequisite is missing.

Learn more

Parameters

Name Type In Required Description

name

string

path

True

Template Name

fields

array[string]

query

False

Specify the fields to return.

Response

Status: 200, Ok
Name Type Description

_links

self_link

description

string

Description.

missing_prerequisites

string

Missing prerequisites.

mongo_db_on_san

mongo_db_on_san

MongoDB using SAN.

name

string

Template name.

nas

nas

A generic NAS application.

nvme

zapp_nvme

An NVME application.

oracle_on_nfs

oracle_on_nfs

Oracle using NFS.

oracle_on_san

oracle_on_san

Oracle using SAN.

oracle_rac_on_nfs

oracle_rac_on_nfs

Oracle RAC using NFS.

oracle_rac_on_san

oracle_rac_on_san

Oracle RAC using SAN.

protocol

string

Access protocol.

s3_bucket

zapp_s3_bucket

A generic S3 bucket application.

san

san

A generic SAN application.

sql_on_san

sql_on_san

Microsoft SQL using SAN.

sql_on_smb

sql_on_smb

Microsoft SQL using SMB.

vdi_on_nas

vdi_on_nas

A VDI application using NAS.

vdi_on_san

vdi_on_san

A VDI application using SAN.

vsi_on_nas

vsi_on_nas

A VSI application using NAS.

vsi_on_san

vsi_on_san

A VSI application using SAN.

Example response
{
  "_links": {
    "self": {
      "href": "/api/resourcelink"
    }
  },
  "description": "string",
  "missing_prerequisites": "string",
  "name": "string",
  "nas": {
    "application_components": [
      {
      }
    ],
    "cifs_access": [
      {
        "access": "string",
        "user_or_group": "string"
      }
    ],
    "cifs_share_name": "string",
    "exclude_aggregates": [
      {
        "name": "string",
        "uuid": "string"
      }
    ],
    "nfs_access": [
      {
        "access": "string",
        "host": "string"
      }
    ],
    "protection_type": {
      "local_policy": "string",
      "local_rpo": "string",
      "remote_rpo": "string"
    }
  },
  "nvme": {
    "components": [
      {
        "name": "string",
        "os_type": "string",
        "performance": {
          "storage_service": {
            "name": "string"
          }
        },
        "qos": {
          "policy": {
            "name": "string",
            "uuid": "string"
          }
        },
        "subsystem": {
          "hosts": [
            {
              "nqn": "string"
            }
          ],
          "name": "string",
          "os_type": "string",
          "uuid": "string"
        },
        "tiering": {
          "control": "string",
          "object_stores": [
            {
              "name": "string"
            }
          ],
          "policy": "string"
        }
      }
    ],
    "os_type": "string",
    "rpo": {
      "local": {
        "name": "string",
        "policy": "string"
      }
    }
  },
  "protocol": "string",
  "s3_bucket": {
    "application_components": [
      {
        "access_policies": [
          {
            "actions": [
              "string"
            ],
            "conditions": [
              {
                "delimiters": [
                  "string"
                ],
                "max_keys": [
                  "integer"
                ],
                "operator": "string",
                "prefixes": [
                  "string"
                ],
                "source_ips": [
                  "string"
                ],
                "usernames": [
                  "string"
                ]
              }
            ],
            "effect": "string",
            "principals": [
              "string"
            ],
            "resources": [
              "string"
            ],
            "sid": "string"
          }
        ],
        "bucket_endpoint_type": "string",
        "comment": "string",
        "exclude_aggregates": [
          {
            "name": "string",
            "uuid": "string"
          }
        ],
        "name": "string",
        "nas_path": "string",
        "qos": {
          "policy": {
            "name": "string",
            "uuid": "string"
          }
        },
        "storage_service": {
          "name": "string"
        },
        "uuid": "string",
        "versioning_state": "string"
      }
    ]
  },
  "san": {
    "application_components": [
      {
        "igroup_name": "string",
        "name": "string",
        "os_type": "string",
        "qos": {
          "policy": {
            "name": "string",
            "uuid": "string"
          }
        },
        "storage_service": {
          "name": "string"
        },
        "tiering": {
          "control": "string",
          "object_stores": [
            {
              "name": "string"
            }
          ],
          "policy": "string"
        }
      }
    ],
    "exclude_aggregates": [
      {
        "name": "string",
        "uuid": "string"
      }
    ],
    "new_igroups": [
      {
        "comment": "string",
        "igroups": [
          {
            "name": "string",
            "uuid": "string"
          }
        ],
        "initiator_objects": [
          {
            "comment": "string",
            "name": "string"
          }
        ],
        "initiators": [
          "string"
        ],
        "name": "string",
        "os_type": "string",
        "protocol": "string"
      }
    ],
    "os_type": "string",
    "protection_type": {
      "local_policy": "string",
      "local_rpo": "string",
      "remote_rpo": "string"
    }
  }
}

Error

Status: Default, Error
Name Type Description

error

error

Example error
{
  "error": {
    "arguments": [
      {
        "code": "string",
        "message": "string"
      }
    ],
    "code": "4",
    "message": "entry doesn't exist",
    "target": "uuid"
  }
}

Definitions

See Definitions

href

Name Type Description

href

string

Name Type Description

self

href

storage_service

Name Type Description

name

string

The storage service of the database.

dataset

Name Type Description

element_count

integer

The number of storage elements (LUNs for SAN) of the database to maintain. Must be an even number between 2 and 16. Odd numbers will be rounded up to the next even number within range.

replication_factor

integer

The number of data bearing members of the replicaset, including 1 primary and at least 1 secondary.

size

integer

The size of the database. Usage: {<integer>[KB|MB|GB|TB|PB]}

storage_service

storage_service

igroups

Name Type Description

name

string

The name of an igroup to nest within a parent igroup. Mutually exclusive with initiators and initiator_objects.

uuid

string

The UUID of an igroup to nest within a parent igroup Usage: <UUID>

initiator_objects

Name Type Description

comment

string

A comment available for use by the administrator.

name

string

The WWPN, IQN, or Alias of the initiator. Mutually exclusive with nested igroups and the initiators array.

mongo_db_on_san_new_igroups

The list of initiator groups to create.

Name Type Description

comment

string

A comment available for use by the administrator.

igroups

array[igroups]

initiator_objects

array[initiator_objects]

initiators

array[string]

name

string

The name of the new initiator group.

os_type

string

The name of the host OS accessing the application. The default value is the host OS that is running the application.

protocol

string

The protocol of the new initiator group.

protection_type

Name Type Description

local_rpo

string

The local RPO of the application.

remote_rpo

string

The remote RPO of the application.

secondary_igroups

Name Type Description

name

string

The name of the initiator group for each secondary.

mongo_db_on_san

MongoDB using SAN.

Name Type Description

dataset

dataset

new_igroups

array[mongo_db_on_san_new_igroups]

The list of initiator groups to create.

os_type

string

The name of the host OS running the application.

primary_igroup_name

string

The initiator group for the primary.

protection_type

protection_type

secondary_igroups

array[secondary_igroups]

export_policy

Name Type Description

id

integer

The ID of an existing NFS export policy.

name

string

The name of an existing NFS export policy.

component

Name Type Description

name

string

Name of the source component.

svm

Name Type Description

name

string

Name of the source SVM.

origin

Name Type Description

component

component

svm

svm

flexcache

Name Type Description

dr_cache

boolean

Dr-cache is a FlexCache volume create time option that has the same flexgroup-msid as that of the origin of a FlexCache volume. By default, dr-cache is disabled. The flexgroup-msid of the FlexCache volume does not need to be same as that of the origin of a FlexCache volume.

origin

origin

policy

Name Type Description

name

string

The name of an existing QoS policy.

uuid

string

The UUID of an existing QoS policy. Usage: <UUID>

qos

Name Type Description

policy

policy

retention

Name Type Description

default

string

Specifies the default retention period that is applied to files while committing them to the WORM state without an associated retention period. The retention value represents a duration and must be specified in the ISO-8601 duration format. The retention period can be in years, months, days, hours, and minutes. A duration specified for years, months, and days is represented in the ISO-8601 format as quot;Plt;num>Y", "P<num>M", "P<num>D" respectively, for example "P10Y" represents a duration of 10 years. A duration in hours and minutes is represented by "PT<num>H" and "PT<num>M" respectively. The retention string must contain only a single time element that is, either years, months, days, hours, or minutes. A duration which combines different periods is not supported, for example "P1Y10M" is not supported. Apart from the duration specified in the ISO-8601 format, the duration field also accepts the string "infinite" to set an infinite retention period and the string "unspecified" to set an unspecified retention period.

maximum

string

Specifies the maximum allowed retention period for files committed to the WORM state on the volume. The retention value represents a duration and must be specified in the ISO-8601 duration format. The retention period can be in years, months, days, hours, and minutes. A duration specified for years, months, and days is represented in the ISO-8601 format as "P<num>Y", "P<num>M", "P<num>D" respectively, for example "P10Y" represents a duration of 10 years. A duration in hours and minutes is represented by "PT<num>H" and "PT<num>M" respectively. The retention string must contain only a single time element that is, either years, months, days, hours, or minutes. A duration which combines different periods is not supported, for example "P1Y10M" is not supported. Apart from the duration specified in the ISO-8601 format, the duration field also accepts the string "infinite" to set an infinite retention period.

minimum

string

Specifies the minimum allowed retention period for files committed to the WORM state on the volume. The retention value represents a duration and must be specified in the ISO-8601 duration format. The retention period can be in years, months, days, hours, and minutes. A duration specified for years, month,s and days is represented in the ISO-8601 format as "P<num>Y", "P<num>M", "P<num>D" respectively, for example "P10Y" represents a duration of 10 years. A duration in hours and minutes is represented by "PT<num>H" and "PT<num>M" respectively. The retention string must contain only a single time element that is, either years, months, days, hours, or minutes. A duration which combines different periods is not supported, for example "P1Y10M" is not supported. Apart from the duration specified in the ISO-8601 format, the duration field also accepts the string "infinite" to set an infinite retention period.

snaplock

Name Type Description

append_mode_enabled

boolean

Specifies if the volume append mode is enabled or disabled. When it is enabled, all the files created with write permissions on the volume are, by default, WORM appendable files. The user can append the data to a WORM appendable file but cannot modify the existing contents of the file nor delete the file until it expires.

autocommit_period

string

Specifies the autocommit period for SnapLock volume. All files which are not modified for a period greater than the autocommit period of the volume are committed to the WORM state. The autocommit period value represents a duration and must be specified in the ISO-8601 duration format. The autocommit period can be in years, months, days, hours, and minutes. A period specified for years, months, and days is represented in the ISO-8601 format as "P<num>Y", "P<num>M", "P<num>D" respectively, for example "P10Y" represents a duration of 10 years. A duration in hours and minutes is represented by "PT<num>H" and "PT<num>M" respectively. The period string must contain only a single time element that is, either years, months, days, hours, or minutes. A duration which combines different periods is not supported, for example "P1Y10M" is not supported. Apart from the duration specified in the ISO-8601 format, the autocommit field also accepts the string "none".

retention

retention

snaplock_type

string

The SnapLock type of the smart container.

storage_service

Name Type Description

name

string

The storage service of the application component.

object_stores

Name Type Description

name

string

The name of the object-store to use.

nas_application_components_tiering

application-components.tiering

Name Type Description

control

string

Storage tiering placement rules for the container(s)

object_stores

array[object_stores]

policy

string

The storage tiering type of the application component.

application_components

Name Type Description

export_policy

export_policy

flexcache

flexcache

name

string

The name of the application component.

qos

qos

scale_out

boolean

Denotes a Flexgroup.

share_count

integer

The number of shares in the application component.

snaplock

snaplock

snapshot_locking_enabled

boolean

Indicates whether Snapshot copy locking is enabled on the volume.

storage_service

storage_service

tiering

nas_application_components_tiering

application-components.tiering

total_size

integer

The total size of the application component, split across the member shares. Usage: {<integer>[KB|MB|GB|TB|PB]}

app_cifs_access

The list of CIFS access controls. You must provide either 'user_or_group' or 'access' to enable CIFS access.

Name Type Description

access

string

The CIFS access granted to the user or group.

user_or_group

string

The name of the CIFS user or group that will be granted access.

exclude_aggregates

Name Type Description

name

string

The name of the aggregate to exclude. Usage: <aggregate name>

uuid

string

The ID of the aggregate to exclude. Usage: <UUID>

app_nfs_access

The list of NFS access controls. You must provide either 'host' or 'access' to enable NFS access.

Name Type Description

access

string

The NFS access granted.

host

string

The name of the NFS entity granted access.

protection_type

Name Type Description

local_policy

string

The Snapshot copy policy to apply to each volume in the smart container. This property is only supported for smart containers. Usage: <snapshot policy>

local_rpo

string

The local RPO of the application.

remote_rpo

string

The remote RPO of the application.

nas

A generic NAS application.

Name Type Description

application_components

array[application_components]

cifs_access

array[app_cifs_access]

The list of CIFS access controls. You must provide either 'user_or_group' or 'access' to enable CIFS access.

cifs_share_name

string

The name of the CIFS share. Usage: <Share>

exclude_aggregates

array[exclude_aggregates]

nfs_access

array[app_nfs_access]

The list of NFS access controls. You must provide either 'host' or 'access' to enable NFS access.

protection_type

protection_type

performance

Name Type Description

storage_service

storage_service

hosts

Name Type Description

nqn

string

The host NQN.

zapp_nvme_components_subsystem

components.subsystem

Name Type Description

hosts

array[hosts]

name

string

The name of the subsystem accessing the component. If neither the name nor the UUID is provided, the name defaults to <application-name>_<component-name>, whether that subsystem already exists or not.

os_type

string

The name of the host OS accessing the component. The default value is the host OS that is running the application.

uuid

string

The UUID of an existing subsystem to be granted access to the component.

zapp_nvme_components_tiering

application-components.tiering

Name Type Description

control

string

Storage tiering placement rules for the container(s)

object_stores

array[object_stores]

policy

string

The storage tiering type of the application component.

components

Name Type Description

name

string

The name of the application component.

namespace_count

integer

The number of namespaces supported per request, with a total limit of 1024 per volume.

os_type

string

The name of the host OS running the application.

performance

performance

qos

qos

subsystem

zapp_nvme_components_subsystem

components.subsystem

tiering

zapp_nvme_components_tiering

application-components.tiering

total_size

integer

The total size of the component, spread across member namespaces. Usage: {<integer>[KB|MB|GB|TB|PB]}

local

Name Type Description

name

string

The local RPO of the application.

policy

string

The Snapshot copy policy to apply to each volume in the smart container. This property is only supported for smart containers. Usage: <snapshot policy>

rpo

Name Type Description

local

local

zapp_nvme

An NVME application.

Name Type Description

components

array[components]

os_type

string

The name of the host OS running the application.

rpo

rpo

storage_service

Name Type Description

name

string

The storage service of the archive log.

archive_log

Name Type Description

size

integer

The size of the archive log. Usage: {<integer>[KB|MB|GB|TB|PB]}

storage_service

storage_service

db

Name Type Description

size

integer

The size of the database. Usage: {<integer>[KB|MB|GB|TB|PB]}

storage_service

storage_service

storage_service

Name Type Description

name

string

The storage service of the ORACLE_HOME storage volume.

ora_home

Name Type