openapi: 3.0.1 info: title: FlashArray REST Active Directory Presets API version: '2.52' description: 'Active Directory configuration authenticates users for NFS using Kerberos or SMB using Kerberos or New Technology LAN Manager (NTLM). Active Directory is also used to authorize users by mapping identities across the NFS and SMB protocols by using LDAP queries. ' servers: - url: / tags: - name: Presets description: 'Presets are reusable templates that provision resources. ' paths: /api/2.52/presets/workload: get: tags: - Presets summary: Pure Storage List Workload Presets description: 'Displays a list of workload presets. ' parameters: - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/XRequestId' - $ref: '#/components/parameters/Context_names_get' - $ref: '#/components/parameters/Ids' - $ref: '#/components/parameters/Names' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/PresetWorkloadGetResponse' put: tags: - Presets summary: Pure Storage Update a Workload Preset description: 'Updates a workload preset by replacing it with the new contents in `preset`. The `ids` or `names` parameter is required, but they cannot be set together. ' parameters: - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/XRequestId' - $ref: '#/components/parameters/Context_names' - $ref: '#/components/parameters/Ids_single' - $ref: '#/components/parameters/Names_single' - $ref: '#/components/parameters/Preset_workload_skip_verify_deployable' requestBody: content: application/json: schema: $ref: '#/components/schemas/PresetWorkload' required: true x-codegen-request-body-name: preset responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/PresetWorkloadResponse' x-codegen-request-body-name: preset post: tags: - Presets summary: Pure Storage Create a Workload Preset description: 'Creates one workload preset. ' parameters: - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/XRequestId' - $ref: '#/components/parameters/Context_names' - $ref: '#/components/parameters/Names_single_required' - $ref: '#/components/parameters/Preset_workload_skip_verify_deployable' requestBody: content: application/json: schema: $ref: '#/components/schemas/PresetWorkloadPost' required: true x-codegen-request-body-name: preset responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/PresetWorkloadResponse' x-codegen-request-body-name: preset delete: tags: - Presets summary: Pure Storage Delete a Workload Preset description: 'Deletes a workload preset permanently. The `ids` or `names` parameter is required, but they cannot be set together. ' parameters: - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/XRequestId' - $ref: '#/components/parameters/Context_names' - $ref: '#/components/parameters/Ids_single' - $ref: '#/components/parameters/Names_single' responses: '200': description: OK content: {} patch: tags: - Presets summary: Pure Storage Modify a Workload Preset description: 'Modifies a workload preset by overriding the fields specified in `preset`. To rename a workload preset, set name to the new name. ' parameters: - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/XRequestId' - $ref: '#/components/parameters/Context_names' - $ref: '#/components/parameters/Ids_single' - $ref: '#/components/parameters/Names_single' requestBody: content: application/json: schema: $ref: '#/components/schemas/PresetWorkloadPatch' required: true x-codegen-request-body-name: preset responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/PresetWorkloadResponse' x-codegen-request-body-name: preset /api/2.26/presets/workload: get: tags: - Presets summary: Pure Storage List Workload Presets description: 'Displays a list of workload presets. ' parameters: - $ref: '#/components/parameters/XRequestId' - $ref: '#/components/parameters/Context_names_get' - $ref: '#/components/parameters/Ids_2' - $ref: '#/components/parameters/Names' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/PresetWorkloadGetResponse_2' put: tags: - Presets summary: Pure Storage Update a Workload Preset description: 'Updates a workload preset by replacing it with the new contents in `preset`. The `ids` or `names` parameter is required, but they cannot be set together. ' parameters: - $ref: '#/components/parameters/XRequestId' - $ref: '#/components/parameters/Context_names' - $ref: '#/components/parameters/Ids_single' - $ref: '#/components/parameters/Names_single' - $ref: '#/components/parameters/Preset_workload_skip_verify_deployable' requestBody: content: application/json: schema: $ref: '#/components/schemas/PresetWorkload' required: true x-codegen-request-body-name: preset responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/PresetWorkloadResponse' x-codegen-request-body-name: preset post: tags: - Presets summary: Pure Storage Create a Workload Preset description: 'Creates one workload preset. ' parameters: - $ref: '#/components/parameters/XRequestId' - $ref: '#/components/parameters/Context_names' - $ref: '#/components/parameters/Names_single_required' - $ref: '#/components/parameters/Preset_workload_skip_verify_deployable' requestBody: content: application/json: schema: $ref: '#/components/schemas/PresetWorkloadPost' required: true x-codegen-request-body-name: preset responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/PresetWorkloadResponse' x-codegen-request-body-name: preset delete: tags: - Presets summary: Pure Storage Delete a Workload Preset description: 'Deletes a workload preset permanently. The `ids` or `names` parameter is required, but they cannot be set together. ' parameters: - $ref: '#/components/parameters/XRequestId' - $ref: '#/components/parameters/Context_names' - $ref: '#/components/parameters/Ids_single' - $ref: '#/components/parameters/Names_single' responses: '200': description: OK content: {} patch: tags: - Presets summary: Pure Storage Modify a Workload Preset description: 'Modifies a workload preset by overriding the fields specified in `preset`. To rename a workload preset, set name to the new name. ' parameters: - $ref: '#/components/parameters/XRequestId' - $ref: '#/components/parameters/Context_names' - $ref: '#/components/parameters/Ids_single' - $ref: '#/components/parameters/Names_single' requestBody: content: application/json: schema: $ref: '#/components/schemas/PresetWorkloadPatch' required: true x-codegen-request-body-name: preset responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/PresetWorkloadResponse' x-codegen-request-body-name: preset components: schemas: _namingPatterns: type: array description: 'The naming patterns that are applied to the storage resources that are provisioned by the workload for this configuration. ' minItems: 1 maxItems: 1 items: $ref: '#/components/schemas/_namingPattern' _presetWorkloadDirectoryConfigurationMultiProtocol: type: object properties: access_control_style: description: 'The access control style that is utilized for client actions such as setting file and directory ACLs. Possible values include `nfs`, `smb`, `shared`, `independent`, and `mode-bits`. If `nfs` is specified, then SMB clients will be unable to set permissions on files and directories. If `smb` is specified, then NFS clients will be unable to set permissions on files and directories. If `shared` is specified, then NFS and SMB clients will both be able to set permissions on files and directories. Any client will be able to overwrite the permissions set by another client, regardless of protocol. If `independent` is specified, then NFS and SMB clients will both be able to set permissions on files and directories, and can access files and directories created over any protocol. Permissions set by SMB clients will not affect NFS clients and vice versa. NFS clients will be restricted to only using mode bits to set permissions. If `mode-bits` is specified, then NFS and SMB clients will both be able to set permissions on files and directories, but only mode bits may be used to set permissions for NFS clients. When SMB clients set an ACL, it will be converted to have the same permission granularity as NFS mode bits. Supports parameterization. ' type: string safeguard_acls: description: 'If set to "true", prevents NFS clients from erasing a configured ACL when setting NFS mode bits. If this is "true", then attempts to set mode bits on a file or directory will fail if they cannot be combined with the existing ACL set on a file or directory without erasing the ACL. Attempts to set mode bits that would not erase an existing ACL will still succeed and the mode bit changes will be merged with the existing ACL. This must be "false" when `access_control_style` is set to either `independent` or `mode-bits`. Supports parameterization. ' type: string _presetWorkloadPeriodicReplicationConfiguration: type: object required: - name - remote_targets - rules properties: name: $ref: '#/components/schemas/_presetWorkloadConfigurationName' naming_patterns: $ref: '#/components/schemas/_namingPatterns' remote_targets: description: The remote targets to which snapshots may be replicated. type: array minItems: 1 maxItems: 1 items: description: 'A remote target to which snapshots may be replicated. Supports parameterization. ' title: ReferenceWithType allOf: - $ref: '#/components/schemas/_referenceWithType' rules: description: Rules describe the frequency and retention of snapshots taken by the configuration. type: array minItems: 1 maxItems: 2 items: $ref: '#/components/schemas/_presetWorkloadSnapshotRule' _errorContextResponseErrors: type: object properties: context: description: 'Contains information relating to the cause of this error, or the name of the object that was being processed when the error was encountered. This may be `null` for more general errors. ' type: string location_context: description: 'Contains information relating to the context in which the request was executing when the error occurred. For example, this may be the name of an array in the same fleet. This may be `null` for more general errors, or if no explicit `context` parameter was provided with the request. ' title: FixedReference allOf: - $ref: '#/components/schemas/_fixedReference_2' message: description: A description of the error which occurred. type: string example: Resource does not exist. _presetWorkloadParameter: type: object required: - name - type properties: constraints: $ref: '#/components/schemas/_presetWorkloadConstraints' metadata: $ref: '#/components/schemas/_presetWorkloadMetadata' name: description: 'The name of the parameter, by which other fields in the preset can reference it. Name must be unique across all parameters in the preset. ' type: string example: billing-id type: description: 'The type of the parameter. Valid values include `string`, `integer`, `boolean` and `resource_reference`. String parameters can be used to collect metadata about workloads deployed from the preset, such as the environment to which they are deployed (e.g., production, development, etc.) or the billing account to which they belong for charge back and show back purposes. Integer and boolean parameters can be used to configure specific fields in the preset, such as the number or size of volumes to provision. Resource reference parameters can be used to collect references to other objects, such as storage classes or remote arrays.' type: string _errorContextResponse: type: object properties: errors: description: The list of errors encountered when attempting to perform an operation. type: array readOnly: true items: $ref: '#/components/schemas/_errorcontextresponseErrors' _presetWorkloadPlatformFeatures: type: string description: 'The collection of platform specific features that can be used in this Preset. Valid values include `fa_block`, `fa_file`, and `fb_file`. If `fa_block` is specified, the preset is used to create volumes on Purity//FA appliances. If `fa_file` is specified, the preset is used to create file systems or directories on Purity//FA appliances. If `fb_file` is specified, the preset is used to create file systems on Purity//FB appliances. Various configuration such as snapshot configuration or export configuration features are subject to the specified platform feature set. Defaults to `fa_block`. ' _presetWorkloadExportConfigurationSmb: allOf: - $ref: '#/components/schemas/_presetWorkloadPolicyAction' - type: object required: - name properties: name: $ref: '#/components/schemas/_presetWorkloadConfigurationName' naming_patterns: $ref: '#/components/schemas/_namingPatterns' policy_configuration: $ref: '#/components/schemas/_presetWorkloadExportConfigurationSmbPolicy' _presetWorkloadDirectoryConfigurationPath: type: object properties: naming_patterns: description: 'The naming pattern for the directory path. ' type: array minItems: 1 maxItems: 1 items: $ref: '#/components/schemas/_namingPattern' PageInfoWithoutTotalItemCountResponse: type: object properties: continuation_token: description: 'Continuation token that can be provided in the `continuation_token` query parameter to get the next page of data. If you use the continuation token to page through data you are guaranteed to get all items exactly once regardless of how items are modified. If an item is added or deleted during the pagination, then it may or may not be returned. The continuation token is generated if the limit is less than the remaining number of items, and the default sort is used (no sort is specified). ' type: string more_items_remaining: description: 'Displays a value of `true` if subsequent items can be retrieved. ' type: boolean example: false _presetWorkloadQuotaConfiguration: allOf: - $ref: '#/components/schemas/_presetWorkloadPolicyAction' - type: object required: - name - rules properties: name: $ref: '#/components/schemas/_presetWorkloadConfigurationName' naming_patterns: $ref: '#/components/schemas/_namingPatterns' rules: description: Rules describe the desired quota limit and enforcement. type: array minItems: 1 maxItems: 1 items: $ref: '#/components/schemas/_presetWorkloadQuotaRule' _presetWorkloadExportConfigurationSmbPolicy: type: object properties: access_based_enumeration_enabled: description: 'The flag enabling access-based enumeration on the policy. When enabled, files and folders within attached exports are hidden from users without view permissions. The default is `false`. It supports parameterization. ' type: string continuous_availability_enabled: description: 'The flag indicating if continuous availability is enabled on the policy. When enabled, file shares remain accessible during disruptive events, such as temporary network outages, controller upgrades, or failovers. The default is `true`. It supports parameterization. ' type: string rules: type: array items: $ref: '#/components/schemas/_presetWorkloadExportConfigurationSmbRule' _newName: type: object properties: name: description: The new name for the resource. type: string _presetWorkloadConfigurationName: type: string description: 'The name of the configuration object, used by other configuration objects in the preset to reference it. The name must be unique across all configuration objects in the preset. ' _reference: type: object properties: id: description: 'A globally unique, system-generated ID. The ID cannot be modified. ' type: string name: description: 'The resource name, such as volume name, pod name, snapshot name, and so on. ' type: string x-aliases: - _referenceWithoutType _presetWorkloadExportConfigurationSmbShare: allOf: - $ref: '#/components/schemas/_presetWorkloadPolicyAction' - type: object required: - name properties: name: $ref: '#/components/schemas/_presetWorkloadConfigurationName' naming_patterns: $ref: '#/components/schemas/_namingPatterns' policy_configuration: $ref: '#/components/schemas/_presetWorkloadExportConfigurationSmbSharePolicy' _presetWorkloadConstraintsInteger: description: Constraints to apply to integer parameters. type: object properties: allowed_values: description: 'The valid values that can be supplied to the parameter. A parameter that collects the number of volumes to provision might, for example, limit the allowed values to a few fixed options. Supports up to five values. ' type: array items: type: integer format: int64 default: description: 'The default value to use if no value is provided. Must be present in `allowed_values`, if set. Must comply with `minimum`, if set. Must comply with `maximum`, if set. ' type: integer format: int64 maximum: description: The maximum acceptable value, inclusive. type: integer format: int64 minimum: description: The minimum acceptable value, inclusive. type: integer format: int64 _namingPattern: type: object required: - template properties: template: description: 'A naming template is a string that defines a naming pattern using a combination of tokens (or chips), which include both static text and dynamic placeholders. Each token contributes to the final name when the template is applied. Dynamic tokens serve as placeholders that resolve to specific values, such as user-defined parameters or system-generated values. They can also support transformation functions to modify their inputs, including nesting where the output of one function is passed to another. The resulting string is a concatenation of all tokens - both static and dynamic - forming the final resource name. If a user does not specify a naming template, a default naming pattern is automatically applied to the resource. For resources that are unique to the workload (e.g. volumes), the default naming pattern is a combination of the workload name and workload configuration name separated by a hyphen. For resources that are reused across workloads (e.g. `create_or_reuse` policies), the default naming pattern is a combination of the preset name and the workload configuration name separated by a hyphen. If the resource supports a `count` in the preset configuration (e.g. volumes), the name is appended with a four digit (left-padded) index that starts at `"0001"`, also separated by a hyphen. ' type: string _resource: description: 'An ordinary (as opposed to built-in) resource that can be created, named, renamed or deleted by the user. This might be a virtual resource (e.g., a file system), or correspond to something in the environment, like a host or a server. ' type: object properties: id: description: 'A globally unique, system-generated ID. The ID cannot be modified and cannot refer to another resource. ' type: string readOnly: true name: description: 'A user-specified name. The name must be locally unique and can be changed. ' type: string _fixedReferenceWithoutType: type: object properties: id: description: 'A globally unique, system-generated ID. The ID cannot be modified. ' type: string readOnly: true name: description: 'The resource name, such as volume name, file system name, snapshot name, and so on. ' type: string readOnly: true x-readOnly: true PresetWorkloadResponse: type: object properties: items: description: 'Displays a list of all items after filtering. If applicable, the values are displayed for each name. ' type: array items: $ref: '#/components/schemas/PresetWorkload' _errorcontextresponseErrors: type: object properties: context: description: 'Contains information relating to the cause of this error, or the name of the object that was being processed when the error was encountered. This may be `null` for more general errors. ' type: string location_context: description: 'Contains information relating to the context in which the request was executing when the error occurred. For example, this may be the name of an array in the same fleet. This may be `null` for more general errors, or if no explicit `context` parameter was provided with the request. ' title: FixedReferenceWithType allOf: - $ref: '#/components/schemas/_fixedReferenceWithType' message: description: A description of the error which occurred. type: string example: Resource does not exist. x-aliases: - _errorContextResponseErrors _errorContextResponse_2: type: object properties: errors: description: The list of errors encountered when attempting to perform an operation. type: array readOnly: true items: $ref: '#/components/schemas/_errorContextResponseErrors' _presetWorkloadVolumeConfiguration: type: object required: - count - name - placement_configurations - provisioned_size properties: count: description: The number of volumes to provision. Supports parameterization. type: string name: $ref: '#/components/schemas/_presetWorkloadConfigurationName' naming_patterns: $ref: '#/components/schemas/_namingPatterns' periodic_replication_configurations: description: 'The names of the periodic replication configurations to apply to the volumes. ' type: array items: type: string placement_configurations: description: 'The names of the placement configurations with which to associate the volumes. ' type: array minItems: 1 maxItems: 1 items: type: string provisioned_size: description: 'The virtual size of each volume. Measured in bytes and must be a multiple of 512. The maximum size is 4503599627370496 (4PB). Supports parameterization. ' type: string snapshot_configurations: description: 'The names of the snapshot configurations to apply to the volumes. ' type: array items: type: string _presetWorkloadDirectoryConfigurationName: type: object properties: name: description: 'The name of the `directory_configuration` within the preset. ' type: string _referenceWithType: allOf: - $ref: '#/components/schemas/_reference' - type: object properties: resource_type: description: 'Type of the object (full name of the endpoint). Valid values are `hosts`, `host-groups`, `network-interfaces`, `pods`, `ports`, `pod-replica-links`, `subnets`, `volumes`, `volume-snapshots`, `volume-groups`, `directories`, `policies/nfs`, `policies/smb`, and `policies/snapshot`, etc. ' type: string x-aliases: - _reference _presetWorkloadPolicyAction: type: object properties: policy_action: description: 'A directive for how to manage policies as part of workload creation. Valid values include `always_create` and `create_or_reuse`. If set to `always_create`, then creation of a workload will require creation of policies specified in the preset. If a policy with a matching name already exists, workload creation will fail. Otherwise, a policy will be created that is exclusive to this workload. If set to `create_or_reuse`, when a workload is created, an existing policy with a matching name is searched for in order to reuse. If an existing policy is found - and there are rules specified in the preset - all preset rules must match the rules in the policy for it to be reused, otherwise workload creation will fail. If there is no policy found with a matching name, a new policy will be created. This new policy will not be exclusive to the workload and may be reused by other workloads. The default is `create_or_reuse`. Supports parameterization. ' type: string PresetWorkload: allOf: - $ref: '#/components/schemas/_resource' - $ref: '#/components/schemas/_context' - $ref: '#/components/schemas/_presetWorkloadBase' PresetWorkloadGetResponse_2: allOf: - $ref: '#/components/schemas/PageInfo' - $ref: '#/components/schemas/PresetWorkloadResponse' - $ref: '#/components/schemas/_errorContextResponse_2' _presetWorkloadConstraints: description: Constraints to apply to the parameter. type: object properties: boolean: $ref: '#/components/schemas/_presetWorkloadConstraintsBoolean' integer: $ref: '#/components/schemas/_presetWorkloadConstraintsInteger' resource_reference: $ref: '#/components/schemas/_presetWorkloadConstraintsResourceReference' string: $ref: '#/components/schemas/_presetWorkloadConstraintsString' _presetWorkloadConstraintsString: description: Constraints to apply to string parameters. type: object properties: allowed_values: description: 'The valid values that can be supplied to the parameter. A parameter that collects the name of the environment to which a workload will deploy might, for example, limit the allowed values to `production`, `testing` and `development`. Supports up to five values, with up to 64 unicode characters per value. ' type: array items: type: string default: description: 'The default value to use if no value is provided. Must be present in `allowed_values`, if `allowed_values` is set. Supports up to 64 unicode characters. ' type: string _fixedReferenceWithType: allOf: - $ref: '#/components/schemas/_fixedReference' - type: object properties: resource_type: description: 'Type of the object (full name of the endpoint). Valid values are the unique part of the resource''s REST endpoint. For example, a reference to a file system would have a `resource_type` of `file-systems`. ' type: string readOnly: true x-aliases: - _fixedReference _presetWorkloadSnapshotConfiguration: allOf: - $ref: '#/components/schemas/_presetWorkloadPolicyAction' - type: object required: - name - rules properties: name: $ref: '#/components/schemas/_presetWorkloadConfigurationName' naming_patterns: $ref: '#/components/schemas/_namingPatterns' rules: description: The rules defining the frequency and retention of snapshots taken by the configuration. type: array minItems: 1 maxItems: 2 items: $ref: '#/components/schemas/_presetWorkloadSnapshotRule' _presetWorkloadDirectoryConfigurationExportConfigurations: type: object properties: nfs: description: 'The name of the NFS export configuration defined in the preset. ' type: string smb: description: 'The name of the SMB export configuration defined in the preset. ' type: string smb_share: description: 'The name of the SMB share export configuration defined in the preset. ' type: string _presetWorkloadMetadata: type: object properties: description: description: 'A brief description of the parameter and how it is used within the preset. Supports up to 1KB of unicode characters. ' type: string display_name: description: 'The human-friendly name of the parameter, which will be shown in the GUI instead of the standard name if configured. Supports up to 64 unicode characters. ' type: string example: Billing ID subtype: description: 'The subtype of the parameter, which the GUI will use to contextualize the prompt for the parameter value. For example, when set to size, the GUI will display an input field with a dropdown menu that contains common size units such as MB, GB, TB, etc. Valid values include `size`, `iops`, `bandwidth`, `time` and `duration`. Subtype can only be used with integer parameters. ' type: string _presetWorkloadConstraintsResourceReferenceAllowedValues: type: object required: - resource_type properties: id: description: 'The globally unique, system-generated ID. It cannot be modified. ' type: string name: description: 'The name of the resource, such as a volume, pod, or snapshot. ' type: string resource_type: description: 'The type of resource the parameter references. Valid values include `servers`, `storage-classes`, and `remote-arrays`. ' type: string _presetWorkloadExportConfigurationSmbSharePolicy: type: object properties: rules: type: array items: $ref: '#/components/schemas/_presetWorkloadExportConfigurationSmbShareRule' PresetWorkloadPost: allOf: - $ref: '#/components/schemas/_presetWorkloadBase' - type: object PresetWorkloadGetResponse: allOf: - $ref: '#/components/schemas/PageInfoWithoutTotalItemCountResponse' - $ref: '#/components/schemas/PresetWorkloadResponse' - $ref: '#/components/schemas/_errorContextResponse' _presetWorkloadSnapshotRule: type: object required: - every - keep_for properties: at: description: 'Specifies the number of milliseconds since midnight at which to take a snapshot. The `at` value cannot be set if the `every` value is not measured in days. The `at` value can only be set on the first rule. It supports parameterization. ' type: string client_name: description: 'The snapshot file client name. For file directories, a full snapshot name is constructed in the form of `DIR.CLIENT_NAME.SUFFIX` where `DIR` is the managed directory name, `CLIENT_NAME` is the snapshot client name, and `SUFFIX` is the snapshot suffix. The client visible snapshot name is `CLIENT_NAME.SUFFIX`. ' title: NamingPatterns allOf: - $ref: '#/components/schemas/_namingPatterns' every: description: 'Specifies the interval between snapshots, in milliseconds. The `every` value for all rules must be multiples of one another. It supports parameterization. ' type: string keep_for: description: 'Specifies the period that snapshots are retained before they are eradicated, in milliseconds. It supports parameterization. ' type: string suffix: description: 'The snapshot suffix name. For file directories, a full snapshot name is constructed in the form of `DIR.CLIENT_NAME.SUFFIX` where `DIR` is the managed directory name, `CLIENT_NAME` is the snapshot client name, and `SUFFIX` is the snapshot suffix. The client visible snapshot name is `CLIENT_NAME.SUFFIX`. The `suffix` value can only be set for one rule in the same policy. The `suffix` value can only be set on a rule with the same `keep_for` value and `every` value. The `suffix` value can only be set on the rule with the largest `keep_for` value. It supports parameterization. ' type: string time_zone: description: 'The time zone to use with the `at` time. If not specified, defaults to the time zone of the array where the workload is provisioned. It supports parameterization. ' type: string example: America/Los_Angeles _presetWorkloadExportConfigurations: type: object properties: nfs: description: 'Defines NFS client export policies that can be used when specifying file system or directory exports. ' items: $ref: '#/components/schemas/_presetWorkloadExportConfigurationNfs' type: array smb: description: 'Defines SMB client export policies that can be used when specifying file system or directory exports. ' items: $ref: '#/components/schemas/_presetWorkloadExportConfigurationSmb' type: array smb_share: description: 'Defines SMB share export policies that can be used when specifying file system or directory exports. ' items: $ref: '#/components/schemas/_presetWorkloadExportConfigurationSmbShare' type: array _presetWorkloadExportConfigurationSmbRule: type: object properties: anonymous_access_allowed: description: 'The flag controlling access to information for anonymous users. The default is `false`. It supports parameterization. ' type: string client: description: 'Specifies the clients that will be permitted to access the export. Accepted notation is a single IP address, subnet in CIDR notation, netgroup, hostname (see RFC-1123 part 2.1), fully qualified domain name (see RFC-1123 part 2.1, RFC 2181 part 11), wildcards with fully qualified domain name or hostname, or anonymous (`*`). The default is `*` if not specified. Supports parameterization. ' type: string encryption: description: 'Specifies whether the remote client is required to use SMB encryption. Valid values are `required`, `disabled`, and `optional`. If not specified, defaults to `optional`. Supports parameterization. ' type: string example: optional permission: description: 'Specifies which read-write client access permissions are allowed for the export. Valid values are `rw` and `ro`. The default is `ro` if not specified. Supports parameterization. ' type: string _presetWorkloadBase: description: 'Workload presets are reusable templates that provision workloads. ' type: object required: - placement_configurations - workload_type properties: description: description: 'A brief description of the workload the preset will configure. Supports up to 1KB of unicode characters. ' type: string directory_configurations: description: 'The file systems and managed directories that will be provisioned by the preset. ' type: array minItems: 1 maxItems: 20 items: $ref: '#/components/schemas/_presetWorkloadDirectoryConfiguration' export_configurations: description: 'The NFS, SMB, and SMB share policy configuration specified in file system and directory exports. ' title: PresetWorkloadExportConfigurations allOf: - $ref: '#/components/schemas/_presetWorkloadExportConfigurations' parameters: description: The parameters to prompt the user when they deploy workloads from the preset. type: array items: $ref: '#/components/schemas/_presetWorkloadParameter' periodic_replication_configurations: description: 'The periodic replication configurations that can be applied to storage resources (such as volumes) within the preset. ' type: array maxItems: 2 items: $ref: '#/components/schemas/_presetWorkloadPeriodicReplicationConfiguration' placement_configurations: description: 'The placement configurations that can be applied to storage resources (such as volumes) within the preset. All storage resources associated with the same placement will be colocated on the same array. ' type: array minItems: 1 maxItems: 1 items: $ref: '#/components/schemas/_presetWorkloadPlacementConfiguration' platform_features: type: array minItems: 1 maxItems: 1 items: $ref: '#/components/schemas/_presetWorkloadPlatformFeatures' qos_configurations: description: 'The QoS configurations that can be applied to storage resources (such as volumes) within the preset. ' type: array maxItems: 5 items: $ref: '#/components/schemas/_presetWorkloadQosConfiguration' quota_configurations: description: 'The quota configurations applicable to storage resources, such as file systems and directories, within the preset. ' type: array maxItems: 5 items: $ref: '#/components/schemas/_presetWorkloadQuotaConfiguration' revision: description: 'A counter that is automatically incremented by the server when the preset is updated. ' type: integer format: int64 readOnly: true snapshot_configurations: description: 'The snapshot configurations that can be applied to storage resources (such as volumes) within the preset. ' type: array maxItems: 2 items: $ref: '#/components/schemas/_presetWorkloadSnapshotConfiguration' volume_configurations: description: 'The volumes that will be provisioned by the preset. ' type: array minItems: 1 maxItems: 5 items: $ref: '#/components/schemas/_presetWorkloadVolumeConfiguration' workload_tags: description: The tags that will be associated with workloads provisioned by the preset. type: array items: $ref: '#/components/schemas/_presetWorkloadWorkloadTag' workload_type: description: 'The type of workload the preset will configure. Valid values are `Clarity`, `Epic`, `Exchange`, `File`, `MsSQL`, `MySQL`, `Oracle`, `PostgreSQL`, `SAP-Hana`, `SAP`, `VDI`, `VSI`, `Wfs`, `Zerto`, and `Custom`. ' type: string _context: type: object properties: context: description: 'The context in which the operation was performed. Valid values include a reference to any array which is a member of the same fleet or to the fleet itself. Other parameters provided with the request, such as names of volumes or snapshots, are resolved relative to the provided `context`. ' readOnly: true title: FixedReferenceWithType allOf: - $ref: '#/components/schemas/_fixedReferenceWithType' PresetWorkloadPatch: allOf: - $ref: '#/components/schemas/_newName' - type: object _presetWorkloadDirectoryConfigurationParent: type: object properties: directory_configuration: $ref: '#/components/schemas/_presetWorkloadDirectoryConfigurationName' file_system: description: 'The reference to an existing file system. It supports parameterization. ' title: Reference allOf: - $ref: '#/components/schemas/_reference' _presetWorkloadExportConfigurationNfsPolicy: type: object properties: rules: type: array items: $ref: '#/components/schemas/_presetWorkloadExportConfigurationNfsRule' user_mapping_enabled: description: 'If set to "true", queries the joined AD/OpenLDAP server to find the user corresponding to the incoming UID. If set to "false", users are defined by UID/GID pair. It supports parameterization. ' type: string _presetWorkloadExportConfigurationSmbShareRule: type: object properties: change: description: 'The state of the principal''s Change access permission. Valid values are `allow` and `deny`. When not set, value is `null`. When allowed, includes all access granted by the Read permission. Users can also change data within files and add or delete files and folders. When denied, these operations are explicitly blocked. If not set for any applicable rule on any applicable policy, acts as an implicit deny. If set to `allow`, implicitly sets the Read permission to `allow`. This is incompatible with explicitly setting any permission to `deny`. If set to `deny`, implicitly sets the Read permission to `deny`. This is incompatible with explicitly setting any permission to `allow`. Defaults to `null`. Supports parameterization. ' type: string full_control: description: 'The state of the principal''s Full Control access permission. Valid values are `allow` and `deny`. When not set, value is `null`. When allowed, includes all access granted by the Change permission. Users can also change the permissions for files and folders. When denied, these operations are explicitly blocked. If not set for any applicable rule on any applicable policy, acts as an implicit deny. If set to `allow`, implicitly sets the Change and Read permissions to `allow`. This is incompatible with explicitly setting any permission to `deny`. If set to `deny`, implicitly sets the Change and Read permissions to `deny`. This is incompatible with explicitly setting any permission to `allow`. Defaults to `null`. Supports parameterization. ' type: string principal: description: 'The user or group who is the subject of this rule, and optionally their domain. If no domain is provided, it will be derived if possible. For example, `PURESTORAGE\Administrator`, `samplegroup@PureStorage`, or `sampleuser`. Supports parameterization. ' type: string read: description: 'The state of the principal''s Read access permission. Valid values are `allow` and `deny`. When allowed, users can view file names, read the data in those files, and run some programs. When denied, these operations are explicitly blocked. When setting to `allow`, cannot explicitly set any permission to `deny`. When setting to `deny`, cannot explicitly set any permission to `allow`. Defaults to `allow`. Supports parameterization. ' type: string _presetWorkloadConstraintsResourceReference: description: Constraints to apply to resource reference parameters type: object required: - allowed_values properties: allowed_values: description: 'The valid values that can be supplied to the parameter. At least one value must be specified to configure a `resource_type`. ' type: array maxItems: 5 items: $ref: '#/components/schemas/_presetWorkloadConstraintsResourceReferenceAllowedValues' default: description: 'The default value to use if no value is provided. Must match the `resource_type` set in `allowed_values`. One of `id` or `name` must be set, but they cannot be set together. ' title: ReferenceWithType allOf: - $ref: '#/components/schemas/_referenceWithType' _presetWorkloadPlacementConfiguration: type: object required: - name - storage_class properties: name: $ref: '#/components/schemas/_presetWorkloadConfigurationName' qos_configurations: description: 'The names of the QoS configurations to apply to the storage resources (such as volumes) in the placement. The limits defined in the QoS configurations will be shared across all storage resources in the placement. ' type: array maxItems: 1 items: type: string storage_class: description: 'The storage class to which the placement and its associated storage resources may be deployed. Supports parameterization. ' title: ReferenceWithType allOf: - $ref: '#/components/schemas/_referenceWithType' _presetWorkloadWorkloadTag: type: object required: - key - value properties: copyable: description: 'Specifies whether to include the tag when copying the parent resource. If set to `true`, the tag is included in resource copying. If set to `false`, the tag is not included. If not specified, defaults to `true`. ' type: string example: 'true' key: description: 'Key of the tag. Supports up to 64 Unicode characters. ' type: string example: environment namespace: description: 'Optional namespace of the tag. Namespace identifies the category of the tag. Omitting the namespace defaults to the namespace `default`. The `pure*` namespaces are reserved for plugins and integration partners. It is recommended that customers avoid using reserved namespaces. ' type: string example: default value: description: 'Value of the tag. Supports up to 256 Unicode characters. Supports parameterization. ' type: string example: staging _fixedReference_2: allOf: - $ref: '#/components/schemas/_fixedReferenceWithoutType' - type: object properties: resource_type: description: 'Type of the object (full name of the endpoint). Valid values are the unique part of the resource''s REST endpoint. For example, a reference to a file system would have a `resource_type` of `file-systems`. ' type: string readOnly: true _presetWorkloadDirectoryConfigurationExports: type: object properties: export_configurations: description: 'The name of NFS, SMB, or SMB share configurations defined in the preset. This can be either an NFS configuration, or an SMB configuration, or both. If an SMB share configuration is specified, SMB configuration must also be specified. ' title: PresetWorkloadDirectoryConfigurationExportConfigurations allOf: - $ref: '#/components/schemas/_presetWorkloadDirectoryConfigurationExportConfigurations' naming_patterns: description: 'The naming pattern for the export used by clients to mount the file system or directory. The export name must be unique within the same protocol and server combination. ' type: array minItems: 1 maxItems: 1 items: $ref: '#/components/schemas/_namingPattern' servers: description: 'The optional reference to a parameterized server resource. The default is `_array_server` if no parameter is specified. ' maxItems: 1 type: array items: type: string _presetWorkloadExportConfigurationNfs: allOf: - $ref: '#/components/schemas/_presetWorkloadPolicyAction' - type: object required: - name properties: name: $ref: '#/components/schemas/_presetWorkloadConfigurationName' naming_patterns: $ref: '#/components/schemas/_namingPatterns' policy_configuration: $ref: '#/components/schemas/_presetWorkloadExportConfigurationNfsPolicy' _presetWorkloadDirectoryConfiguration: type: object required: - name - path - placement_configurations properties: count: description: 'The number of directories or file systems to provision. If greater than one, the name, path, and export name patterns must be unique within the workload (for example, by including a `workload.configuration.index`). Supports parameterization. ' type: string exports: description: 'THe file system or directory exports to be created as part of the workload. A maximum of four exports can be created per file system or directory across NFS and SMB. ' type: array minItems: 1 maxItems: 12 items: $ref: '#/components/schemas/_presetWorkloadDirectoryConfigurationExports' multi_protocol: description: Multi-protocol configuration. title: PresetWorkloadDirectoryConfigurationMultiProtocol allOf: - $ref: '#/components/schemas/_presetWorkloadDirectoryConfigurationMultiProtocol' name: $ref: '#/components/schemas/_presetWorkloadConfigurationName' naming_patterns: $ref: '#/components/schemas/_namingPatterns' parent: description: 'An optional reference to either an existing file system or a directory_configuration defined within this Preset, under which this directory will be placed. This cannot be populated when path is "/" as that creates a new file system. Only one of file_system or directory_configuration can be specified and must be specified when the path is not "/". Supports parameterization. ' title: PresetWorkloadDirectoryConfigurationParent allOf: - $ref: '#/components/schemas/_presetWorkloadDirectoryConfigurationParent' path: description: 'A directory path. A path of "/" will create a new file system. Anything other than "/" will create a directory under a file system specified by `parent`. ' title: PresetWorkloadDirectoryConfigurationPath allOf: - $ref: '#/components/schemas/_presetWorkloadDirectoryConfigurationPath' placement_configurations: description: 'The names of the placement configurations with which to associate the file systems or directories. ' type: array minItems: 1 maxItems: 1 items: type: string quota_configurations: description: 'The names of the quota configurations with which to associate the file systems or directories. ' type: array minItems: 1 maxItems: 1 items: type: string snapshot_configurations: description: 'The names of the snapshot configurations to apply to the file systems or directories. ' type: array minItems: 1 maxItems: 2 items: type: string special_directories: description: THe special directory configuration. title: PresetWorkloadDirectoryConfigurationSpecialDirectories allOf: - $ref: '#/components/schemas/_presetWorkloadDirectoryConfigurationSpecialDirectories' _presetWorkloadQuotaRule: type: object properties: enforced: description: 'Defines whether the quota rule is enforced or unenforced. If the quota rule is enforced and logical space usage exceeds the quota limit, any modification operations that result in a need for more space are blocked. If the quota rule is unenforced and logical space usage exceeds the quota limit, notification emails can be sent. No client operations are blocked when an unenforced limit is exceeded. If set to "true", the limit is enforced. Supports parameterization. ' type: string quota_limit: description: 'The logical space limit of the quota assigned by the rule, measured in bytes. The value cannot be `0`. It supports parameterization. ' type: string _fixedReference: type: object properties: id: description: 'A globally unique, system-generated ID. The ID cannot be modified. ' type: string readOnly: true name: description: 'The resource name, such as volume name, file system name, snapshot name, and so on. ' type: string readOnly: true x-readOnly: true x-aliases: - _fixedReferenceWithoutType _presetWorkloadExportConfigurationNfsRule: type: object properties: access: description: 'The access control specification for the export. The valid values are `root-squash`, `all-squash`, and `no-root-squash`. The `root-squash` setting prevents root privilege mapping by reassigning UID 0 and GID 0 to `anonuid` and `anongid`. The `all-squash` setting maps all UIDs and GIDs to `anonuid` and `anongid`. The `no-root-squash` setting allows access using original UIDs and GIDs. The default is `root-squash`. It supports parameterization. ' type: string anongid: description: 'The anonymous group ID (GID) used for mapping when `access` is set to `root_squash` or `all_squash`. The default is `null`, which corresponds to `65534`. It supports parameterization. ' type: string anonuid: description: 'The anonymous user ID (UID) used for mapping when `access` is set to `root_squash` or `all_squash`. The default is `null`, which corresponds to `65534`. It supports parameterization. ' type: string atime: description: 'If set to `true`, after a read operation has occurred, the inode access time is updated only if any of the following conditions is true: the previous access time is less than the inode modify time, the previous access time is less than the inode change time, or the previous access time is more than 24 hours ago. If set to `false`, disables the update of inode access times after read operations. The defaults to `true`. It supports parameterization. ' type: string client: description: 'The clients permitted to access the export. Accepted notations include a single IP address, a subnet in CIDR notation, a netgroup, a hostname (RFC-1123), a fully qualified domain name (RFC-1123, RFC 2181), wildcards, or anonymous (`*`). The default is `*`. It supports parameterization. ' type: string nfs_version: description: 'The NFS protocol version allowed for the export. The valid values are `nfsv3` and `nfsv4`. It supports parameterization. ' type: array items: type: string example: nfsv3 permission: description: 'The read-write client access permissions for the export. The valid values are `rw` and `ro`. The default is `ro`. It supports parameterization. ' type: string secure: description: 'The flag preventing NFS access to client connections from non-reserved ports. It applies to NFSv3, NFSv4.1, and the auxiliary protocols MOUNT and NLM. The default is `false`. It supports parameterization. ' type: string security: description: 'The security flavors used to access files on the mount point. The mount operation fails if the server does not support the requested flavor. The `sys` flavor trusts the client to specify the user identity. The `krb5` flavor provides cryptographic proof of user identity in each RPC request and requires additional configuration. The `krb5i` flavor adds integrity checking to prevent data tampering. The `krb5p` flavor adds integrity checking and encryption, offering the highest security but incurring the highest performance overhead. The default is `sys`. It supports parameterization. ' type: array items: type: string example: sys _presetWorkloadConstraintsBoolean: description: Constraints to apply to boolean parameters. type: object properties: default: description: The default value to use if no value is provided. type: boolean _presetWorkloadQosConfiguration: type: object required: - name properties: bandwidth_limit: description: 'The maximum QoS bandwidth limit shared across all volumes in the placement. Whenever throughput exceeds the bandwidth limit, throttling occurs. Measured in bytes per second. Between 1MB/s and 512 GB/s, inclusive. Supports parameterization. ' type: string iops_limit: description: 'The QoS IOPs limit shared across all volumes in the placement. Between 100 and 100000000, inclusive. Supports parameterization. ' type: string name: $ref: '#/components/schemas/_presetWorkloadConfigurationName' naming_patterns: $ref: '#/components/schemas/_namingPatterns' _presetWorkloadDirectoryConfigurationSpecialDirectories: type: object properties: fast_remove: description: 'The flag determining if a fast removal directory is available within the mounted file system or directory. Moving directories into this location deletes them and frees space more quickly than standard removal operations. The default is `false`. It supports parameterization. ' type: string snapshot: description: 'The flag controlling the presence of a hidden `.snapshot` directory in each directory of the mounted file system. The `.snapshot` directory provides read access to directory snapshots. The default is `true`. It supports parameterization. ' type: string PageInfo: type: object properties: continuation_token: description: 'Continuation token that can be provided in the `continuation_token` query param to get the next page of data. If you use the `continuation_token` to page through data you are guaranteed to get all items exactly once regardless of how items are modified. If an item is added or deleted during the pagination then it may or may not be returned. The `continuation_token` is generated if the `limit` is less than the remaining number of items, and the default sort is used (no sort is specified). ' type: string total_item_count: description: Total number of items after applying `filter` params. type: integer format: int32 parameters: Preset_workload_skip_verify_deployable: name: skip_verify_deployable in: query description: 'If set to `true`, only the most basic syntax checks are performed on the preset to ensure it is valid, but it is possible that it includes configuration that no array in the current fleet can honor when creating a workload. This is primarily useful when uploading a preset created elsewhere so it can be edited until it is deployable. If set to `false`, when a workload preset is created or updated, arrays in the fleet are queried to ensure at least one array in the fleet can deploy a workload based on the configuration specified in the preset. Defaults to `false`. ' schema: type: boolean Context_names: name: context_names in: query description: 'Performs the operation on the context specified. If specified, the context names must be an array of size 1, and the single element must be the name of an array in the same fleet or the name of the fleet itself. If not specified, the context will default to the array that received this request. Other parameters provided with the request, such as names of volumes or snapshots, are resolved relative to the provided `context`. ' style: form explode: false schema: type: array items: type: string XRequestId: name: X-Request-ID in: header description: 'Supplied by client during request or generated by server. ' schema: type: string Authorization: name: Authorization in: header description: 'Access token (in JWT format) required to use any API endpoint (except `/oauth2`, `/login`, and `/logout`) ' schema: type: string Names: name: names in: query description: 'Performs the operation on the unique names specified. Enter multiple names in comma-separated format. For example, `name01,name02`. If there is not at least one resource that matches each of the elements of `names`, then an error is returned, except when creating new resources. ' style: form explode: false schema: type: array items: type: string Context_names_get: name: context_names in: query description: 'Performs the operation on the unique contexts specified. If specified, each context name must be the name of an array in the same fleet or the name of the fleet itself. If not specified, the context will default to the array that received this request. Other parameters provided with the request, such as names of volumes or snapshots, are resolved relative to the provided `context`. Enter multiple names in comma-separated format. For example, `name01,name02`. ' style: form explode: false schema: type: array items: type: string Ids_single: name: ids in: query description: 'Performs the operation on the unique resource IDs specified. Only one value is supported. ' style: form explode: false schema: type: array maxLength: 1 items: type: string Ids: name: ids in: query description: "A comma-separated list of unique resource IDs. At least one resource must match\n each specified ID, otherwise an error is returned. This parameter is required\n if ids or names is not provided, but it cannot be used together with name or names.\n" style: form explode: false schema: type: array items: type: string Names_single_required: name: names in: query description: 'Performs the operation on the unique resource names specified. Only one value is supported. ' required: true style: form explode: false schema: type: array maxLength: 1 items: type: string Ids_2: name: ids in: query description: 'A comma-separated list of resource IDs. If after filtering, there is not at least one resource that matches each of the elements of `ids`, then an error is returned. This cannot be provided together with the `name` or `names` query parameters. ' style: form explode: false schema: type: array items: type: string Names_single: name: names in: query description: 'Performs the operation on the unique resource names specified. Only one value is supported. ' style: form explode: false schema: type: array maxLength: 1 items: type: string