Pure Storage Workloads API

Workloads organize storage resources (such as volumes) and their related configuration and policy objects into logical groupings. Workloads can be deployed from workload presets.

Documentation

Specifications

Code Examples

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/flasharray-rest-api-array-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/flasharray-rest-api-volume-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/flasharray-rest-api-host-schema.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-structure/flasharray-rest-api-array-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-structure/flasharray-rest-api-volume-structure.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/flashblade-rest-api-file-system-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/flashblade-rest-api-bucket-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/flashblade-rest-api-array-schema.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-structure/flashblade-rest-api-file-system-structure.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-structure/flashblade-rest-api-bucket-structure.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/pure1-cloud-api-array-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/pure1-cloud-api-metric-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-schema/pure1-cloud-api-alert-schema.json
📊
JSONStructure
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-structure/pure1-cloud-api-array-structure.json

Other Resources

🔗
SDKs
https://pypi.org/project/py-pure-client/
🔗
SDKs
https://github.com/PureStorage-OpenConnect/PureStorage.Pure1
🔗
SDKs
https://github.com/PureStorage-OpenConnect/powershell-toolkit-3
🔗
SDKs
https://github.com/PureStorage-OpenConnect/rest-client
🔗
Integrations
https://github.com/PureStorage-OpenConnect/terraform-provider-flash
🔗
Integrations
https://github.com/PureStorage-OpenConnect/pure-fa-openmetrics-exporter
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-ld/pure-storage-flasharray-rest-api-context.jsonld
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/examples/flasharray-rest-api-volume-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/examples/flasharray-rest-api-array-example.json
🔗
SDKs
https://github.com/PureStorage-OpenConnect/flashblade-powershell
🔗
SDKs
https://github.com/purestorage/purity_fb_python_client
🔗
Integrations
https://github.com/PureStorage-OpenConnect/pure-fb-openmetrics-exporter
🔗
Tools
https://github.com/PureStorage-OpenConnect/flashblade-mcp-server
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-ld/pure-storage-flashblade-rest-api-context.jsonld
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/examples/flashblade-rest-api-file-system-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/examples/flashblade-rest-api-bucket-example.json
🔗
JSONLD
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/json-ld/pure-storage-pure1-cloud-api-context.jsonld
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/examples/pure1-cloud-api-array-example.json

OpenAPI Specification

pure-storage-workloads-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: FlashArray REST Active Directory Workloads 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: Workloads
  description: 'Workloads organize storage resources (such as volumes) and their related configuration and

    policy objects into logical groupings. Workloads can be deployed from workload presets.

    '
paths:
  /api/2.52/workloads:
    get:
      tags:
      - Workloads
      summary: Pure Storage List Workloads
      description: 'Displays a list of workloads.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Allow_errors'
      - $ref: '#/components/parameters/Context_names_get'
      - $ref: '#/components/parameters/Continuation_token'
      - $ref: '#/components/parameters/Destroyed'
      - $ref: '#/components/parameters/Ids'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkloadGetResponse'
        '207':
          description: 'Partial success. Some resources were returned, but there

            were also errors possibly preventing some resources from

            being returned.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkloadGetResponse'
    post:
      tags:
      - Workloads
      summary: Pure Storage Create a Workload
      description: 'Creates one workload.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Context_names'
      - $ref: '#/components/parameters/Names_single_required'
      - $ref: '#/components/parameters/Preset_ids'
      - $ref: '#/components/parameters/Preset_names'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WorkloadPost'
        required: true
        x-codegen-request-body-name: workload
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkloadResponse'
      x-codegen-request-body-name: workload
    delete:
      tags:
      - Workloads
      summary: Pure Storage Delete a Workload
      description: 'Deletes a workload that has been destroyed and is pending eradication.

        Eradicated workloads cannot be recovered.

        Workloads are destroyed using the `PATCH` method.

        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:
      - Workloads
      summary: Pure Storage Modify a Workload
      description: 'Modifies a workload by renaming or destroying it.

        To rename a workload, set `name` to the new name. To destroy a workload, set `destroyed=true`.

        To recover a workload that has been destroyed and is pending eradication, set `destroyed=false`.

        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'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WorkloadPatch'
        required: true
        x-codegen-request-body-name: workload
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkloadResponse'
      x-codegen-request-body-name: workload
  /api/2.52/workloads/placement-recommendations:
    get:
      tags:
      - Workloads
      summary: Pure Storage List Workload Placement Recommendations
      description: Displays a list of placement recommendations for workloads.
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Allow_errors'
      - $ref: '#/components/parameters/Context_names_get'
      - $ref: '#/components/parameters/Continuation_token'
      - $ref: '#/components/parameters/Ids'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkloadPlacementRecommendationGetResponse'
        '207':
          description: 'Partial success. Some resources were returned, but there

            were also errors possibly preventing some resources from

            being returned.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkloadPlacementRecommendationGetResponse'
    post:
      tags:
      - Workloads
      summary: Pure Storage Create a Request for a Workload Placement Recommendation.
      description: 'Creates a recommendation for the placement of the specified workload.

        The computation might take a few minutes.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Context_names'
      - $ref: '#/components/parameters/Placement_names'
      - name: preset_ids
        in: query
        description: 'Creates the workload placement recommendations using the presets

          specified by ids. Only one preset can be specified. One of the

          `preset_ids` or `preset_names` parameters are required, but they

          cannot be set together.

          '
        style: form
        explode: false
        schema:
          type: array
          items:
            type: string
      - name: preset_names
        in: query
        description: 'Creates the workload placement recommendations using the presets

          specified by names. Only one preset can be specified. One of the

          `preset_ids` or `preset_names` parameters are required, but they

          cannot be set together.

          '
        style: form
        explode: false
        schema:
          type: array
          items:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WorkloadPlacementRecommendation'
        required: true
        x-codegen-request-body-name: inputs
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkloadPlacementRecommendationResponse'
      x-codegen-request-body-name: inputs
  /api/2.52/workloads/tags:
    get:
      tags:
      - Workloads
      summary: Pure Storage List Tags
      description: Displays the list of tags.
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Allow_errors'
      - $ref: '#/components/parameters/Context_names_get'
      - $ref: '#/components/parameters/Namespaces'
      - $ref: '#/components/parameters/Resource_ids'
      - $ref: '#/components/parameters/Resource_names'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagGetResponse'
        '207':
          description: 'Partial success. Some resources were returned, but there

            were also errors possibly preventing some resources from

            being returned.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagGetResponse'
    delete:
      tags:
      - Workloads
      summary: Pure Storage Delete Tags
      description: Deletes specified tags.
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Context_names'
      - $ref: '#/components/parameters/Keys'
      - $ref: '#/components/parameters/Namespaces_delete'
      - $ref: '#/components/parameters/Resource_ids_single'
      - $ref: '#/components/parameters/Resource_names_single'
      responses:
        '200':
          description: OK
          content: {}
  /api/2.52/workloads/tags/batch:
    put:
      tags:
      - Workloads
      summary: Pure Storage Update Tags
      description: Updates or creates tags for all specified objects.
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Context_names'
      - $ref: '#/components/parameters/Resource_ids_single'
      - $ref: '#/components/parameters/Resource_names_single'
      requestBody:
        description: A list of tags to be created or, if they already exist, updated.
        content:
          application/json:
            schema:
              maxItems: 30
              minItems: 1
              uniqueItems: true
              type: array
              items:
                $ref: '#/components/schemas/TagBatch'
        required: true
        x-codegen-request-body-name: tag
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagResponse'
      x-codegen-request-body-name: tag
  /api/2.26/workloads:
    get:
      tags:
      - Workloads
      summary: Pure Storage List Workloads
      description: 'Displays a list of workloads.

        '
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Allow_errors'
      - $ref: '#/components/parameters/Context_names_get'
      - $ref: '#/components/parameters/Continuation_token'
      - $ref: '#/components/parameters/Destroyed'
      - $ref: '#/components/parameters/Ids_2'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkloadGetResponse_2'
        '207':
          description: 'Partial success. Some resources were returned, but there

            were also errors possibly preventing some resources from

            being returned.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkloadGetResponse_2'
    post:
      tags:
      - Workloads
      summary: Pure Storage Create a Workload
      description: 'Creates one workload.

        '
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Context_names'
      - $ref: '#/components/parameters/Names_single_required'
      - $ref: '#/components/parameters/Preset_ids'
      - $ref: '#/components/parameters/Preset_names'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WorkloadPost'
        required: true
        x-codegen-request-body-name: workload
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkloadResponse'
      x-codegen-request-body-name: workload
    delete:
      tags:
      - Workloads
      summary: Pure Storage Delete a Workload
      description: 'Deletes a workload that has been destroyed and is pending eradication.

        Eradicated workloads cannot be recovered.

        Workloads are destroyed using the `PATCH` method.

        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:
      - Workloads
      summary: Pure Storage Modify a Workload
      description: 'Modifies a workload by renaming or destroying it.

        To rename a workload, set `name` to the new name. To destroy a workload, set `destroyed=true`.

        To recover a workload that has been destroyed and is pending eradication, set `destroyed=false`.

        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'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WorkloadPatch'
        required: true
        x-codegen-request-body-name: workload
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkloadResponse'
      x-codegen-request-body-name: workload
  /api/2.26/workloads/placement-recommendations:
    get:
      tags:
      - Workloads
      summary: Pure Storage List Workload Placement Recommendations
      description: Displays a list of placement recommendations for workloads.
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Allow_errors'
      - $ref: '#/components/parameters/Context_names_get'
      - $ref: '#/components/parameters/Continuation_token'
      - $ref: '#/components/parameters/Ids_2'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkloadPlacementRecommendationGetResponse_2'
        '207':
          description: 'Partial success. Some resources were returned, but there

            were also errors possibly preventing some resources from

            being returned.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkloadPlacementRecommendationGetResponse_2'
    post:
      tags:
      - Workloads
      summary: Pure Storage Create a Request for a Workload Placement Recommendation.
      description: 'Creates a recommendation for the placement of the specified workload.

        The computation might take a few minutes.

        '
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Context_names'
      - $ref: '#/components/parameters/Placement_names'
      - name: preset_ids
        in: query
        description: 'Creates the workload placement recommendations using the presets

          specified by ids. Only one preset can be specified. One of the

          `preset_ids` or `preset_names` parameters are required, but they

          cannot be set together.

          '
        style: form
        explode: false
        schema:
          type: array
          items:
            type: string
      - name: preset_names
        in: query
        description: 'Creates the workload placement recommendations using the presets

          specified by names. Only one preset can be specified. One of the

          `preset_ids` or `preset_names` parameters are required, but they

          cannot be set together.

          '
        style: form
        explode: false
        schema:
          type: array
          items:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WorkloadPlacementRecommendation_2'
        required: true
        x-codegen-request-body-name: inputs
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkloadPlacementRecommendationResponse'
      x-codegen-request-body-name: inputs
  /api/2.26/workloads/tags:
    get:
      tags:
      - Workloads
      summary: Pure Storage List Tags
      description: Displays the list of tags.
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Allow_errors'
      - $ref: '#/components/parameters/Context_names_get'
      - $ref: '#/components/parameters/Namespaces'
      - $ref: '#/components/parameters/Resource_ids'
      - $ref: '#/components/parameters/Resource_names'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagGetResponse'
        '207':
          description: 'Partial success. Some resources were returned, but there

            were also errors possibly preventing some resources from

            being returned.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagGetResponse'
    delete:
      tags:
      - Workloads
      summary: Pure Storage Delete Tags
      description: Deletes specified tags.
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Context_names'
      - $ref: '#/components/parameters/Keys'
      - $ref: '#/components/parameters/Namespaces_delete'
      - $ref: '#/components/parameters/Resource_ids'
      - $ref: '#/components/parameters/Resource_names'
      responses:
        '200':
          description: OK
          content: {}
  /api/2.26/workloads/tags/batch:
    put:
      tags:
      - Workloads
      summary: Pure Storage Update Tags
      description: Updates or creates tags for all specified objects.
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Context_names'
      - $ref: '#/components/parameters/Resource_ids'
      - $ref: '#/components/parameters/Resource_names'
      requestBody:
        description: A list of tags to be created or, if they already exist, updated.
        content:
          application/json:
            schema:
              maxItems: 30
              minItems: 1
              uniqueItems: true
              type: array
              items:
                $ref: '#/components/schemas/TagBatch_2'
        required: true
        x-codegen-request-body-name: tag
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagResponse'
      x-codegen-request-body-name: tag
components:
  schemas:
    WorkloadPlacementRecommendation_2:
      allOf:
      - $ref: '#/components/schemas/_context_2'
      - description: 'A workload placement recommendation.

          '
        type: object
        properties:
          additional_constraints:
            $ref: '#/components/schemas/_workloadPlacementRecommendationAdditionalConstraints_2'
          created:
            description: 'The time the recommendation was made, measured in milliseconds since the UNIX epoch.

              '
            type: integer
            format: int64
            readOnly: true
          expires:
            description: 'The time when recommendation expires, measured in milliseconds since the UNIX epoch.

              '
            type: integer
            format: int64
            readOnly: true
          id:
            description: 'A globally unique, system-generated ID.

              The ID cannot be modified and cannot refer to another resource.

              '
            type: string
            readOnly: true
          more_results_available:
            type: boolean
            readOnly: true
          name:
            description: 'A globally unique, system-generated name.

              The name cannot be modified and cannot refer to another resource.

              '
            type: string
            readOnly: true
          parameters:
            description: 'The parameter values to pass to the preset when creating the recommendation.

              A value is required for all parameters that are not of the resource_reference type.

              Parameters of type resource_reference could be: set to a fixed value, or

              defined as a set of allowed values, or not set. If a resource_reference

              parameter is not set then allowed values will be taken from the preset definition.

              '
            type: array
            items:
              $ref: '#/components/schemas/_workloadPlacementRecommendationParameter_2'
          placement_names:
            type: array
            readOnly: true
            items:
              type: string
          preset:
            title: FixedReferenceWithoutType
            allOf:
            - $ref: '#/components/schemas/_fixedReferenceWithoutType'
          progress:
            description: 'The percentage progress of the recommendation computation.

              The percentage is displayed as a decimal value, starting at 0.00 and ending at 1.00.

              '
            type: number
            format: float
            readOnly: true
            example: 0.77
          projection_months:
            description: 'The number of months to compute the projections.

              If not specified, defaults to 1 month.

              '
            type: integer
            format: int32
            x-minimum: 1
            x-maximum: 12
          recommendation_engine:
            description: 'This parameter defines which engine to use for recommendations.

              Possible values include `pure1`, `local`, and `best-available`.

              If not specified, defaults to ''best-available'' which may mix results of

              different engines, while ''pure1'' and ''local'' restrict the used engine.

              '
            type: string
          results:
            description: 'The results of the recommendation.

              '
            type: array
            readOnly: true
            items:
              $ref: '#/components/schemas/_workloadPlacementRecommendationResult_2'
          results_limit:
            description: 'The maximum number of results to return.

              If not specified, defaults to 10 results.

              '
            type: integer
            format: int32
          status:
            description: 'The status of the recommendation.

              Possible values are `processing`, `completed`, and `failed`.

              '
            type: string
            readOnly: true
    WorkloadPatch:
      allOf:
      - $ref: '#/components/schemas/_destroyedPatchPost'
      - $ref: '#/components/schemas/_newName'
    _workloadPlacementRecommendationParameterConstraints_2:
      description: Constraints to apply to the parameter.
      type: object
      properties:
        resource_reference:
          $ref: '#/components/schemas/_workloadPlacementRecommendationParameterResourceReference_2'
    _referenceWritable:
      allOf:
      - $ref: '#/components/schemas/_referenceWithoutType'
      - 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`, `policies/snapshot`, etc.

              '
            type: string
      x-aliases:
      - _reference
    Tag:
      allOf:
      - $ref: '#/components/schemas/_context'
      - type: object
        properties:
          copyable:
            description: 'Specifies whether or not 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: boolean
            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
          resource:
            $ref: '#/components/schemas/_fixedReference'
          value:
            description: 'Value of the tag. Supports up to 256 Unicode characters.

              '
            type: string
            example: staging
    WorkloadPlacementRecommendation:
      allOf:
      - $ref: '#/components/schemas/_context'
      - description: 'A workload placement recommendation.

          '
        type: object
        properties:
          additional_constraints:
            $ref: '#/components/schemas/_workloadPlacementRecommendationAdditionalConstraints'
          created:
            description: 'The time the recommendation was made, measured in milliseconds since the UNIX epoch.

              '
            type: integer
            format: int64
            readOnly: true
          expires:
            description: 'The time when recommendation expires, measured in milliseconds since the UNIX epoch.

              '
            type: integer
            format: int64
            readOnly: true
          id:
            description: 'A globally unique, system-generated ID.

              The ID cannot be modified and cannot refer to another resource.

              '
            type: string
            readOnly: true
          more_results_available:
            type: boolean
            readOnly: true
          name:
            description: 'A globally unique, system-generated name.

              The name cannot be modified and cannot refer to another resource.

              '
            type: string
            readOnly: true
          parameters:
            description: 'The parameter values to pass to the preset when creating the recommendation.

              A value is required for all parameters that are not of the resource_reference type.

              Parameters of type resource_reference could be: set to a fixed value, or

              defined as a set of allowed values, or not set. If a resource_reference

              parameter is not set then allowed values will be taken from the preset definition.

              '
            type: array
            items:
              $ref: '#/components/schemas/_workloadPlacementRecommendationParameter'
          placement_names:
            type: array
            readOnly: true
            items:
              type: string
          preset:
            title: FixedReference
            allOf:
            - $ref: '#/components/schemas/_fixedReference'
          progress:
            description: 'The percentage progress of the recommendation computation.

              The percentage is displayed as a decimal value, starting at 0.00 and ending at 1.00.

              '
            type: number
            format: float
            readOnly: true
            example: 0.77
          projection_months:
            description: 'The number of months to compute the projections.

              If not specified, defaults to 1 month.

              '
            type: integer
            format: int32
            x-minimum: 1
            x-maximum: 12
          recommendation_engine:
            description: 'This parameter defines which engine to use for recommendations.

              Possible values include `pure1`, `local`, and `best-available`.

              If not specified, defaults to `best-available` which may mix results of

              different engines, while `pure1` and `local` restrict the used engine.

              '
            type: string
          results:
            description: 'The results of the recommendation.

              '
            type: array
            readOnly: true
            items:
              $ref: '#/components/schemas/_workloadPlacementRecommendationResult'
          results_limit:
            description: 'The maximum number of results to return.

              If not specified, defaults to 10 results.

              '
            type: integer
            format: int32
          status:
            description: 'The status of the recommendation.

              Possible values are `processing`, `completed`, and `failed`.

              '
            type: string
            readOnly: true
    WorkloadResponse:
      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/Workload'
    _workloadPlacementRecommendationGenericTarget:
      allOf:
      - $ref: '#/components/schemas/_referenceWithType'
      - description: 'The data for a target in a workload placement recommendation.

          The target is an array that may be used for workload placement.

          '
        type: object
        properties:
          capacity:
            description: 'The usable capacity of the target, measured in bytes.

              '
            type: integer
            format: int64
            example: 10995116277760
          capacity_used_projections:
            $ref: '#/components/schemas/_workloadPlacementRecommendationTargetCapacityUsedProjections'
          load_projections:
            $ref: '#/components/schemas/_workloadPlacementRecommendationTargetLoadProjections'
          model:
            description: 'The model of the target.

              For example, `FA-X20R2`.

              '
            type: string
          periodic_replication_configurations:
            description: 'The preset periodic replication configurations supported by the array.

              '
            type: array
            items:
              type: string
          placement_configurations:
            description: 'The preset placement configurations supported by the array.

              '
            type: array
            items:
              type: string
          warnings:
            description: 'The warnings for the target.

              '
            type: array
            items:
              $ref: '#/components/schemas/_workloadPlacementRecommendationWarning'
    _workloadPlacementRecommendationParameterConstraints:
      description: The constraints applied to the parameter.
      type: object
      properties:
        resource_reference:
          $ref: '#/components/schemas/_workloadPlacementRecommendationParameterResourceReference'
    _referenceWithoutType:
      type: object
      properties:
        id:


# --- truncated at 32 KB (77 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/pure-storage/refs/heads/main/openapi/pure-storage-workloads-api-openapi.yml