Pure Storage Software API

Software to be installed on the array.

Operations 22

GET /api/2.52/software Pure Storage List Software Packages
POST /api/2.52/software Pure Storage Create a Software Package
DELETE /api/2.52/software Pure Storage Delete a Software Package
GET /api/2.52/software-bundle Pure Storage List Software-bundle
POST /api/2.52/software-bundle Pure Storage Create Software-bundle
GET /api/2.52/software-check Pure Storage List Software Check Tasks
POST /api/2.52/software-check Pure Storage Create a Software Check Task
DELETE /api/2.52/software-check Pure Storage Delete a Software Check Task
GET /api/2.52/software-installations Pure Storage List Software Upgrades
POST /api/2.52/software-installations Pure Storage Create a Software Upgrade
PATCH /api/2.52/software-installations Pure Storage Modify Software Upgrade
GET /api/2.52/software-installation-steps Pure Storage List Software Upgrade Steps
GET /api/2.52/software-patches Pure Storage List Software Patches
POST /api/2.52/software-patches Pure Storage Create a Software Patch
GET /api/2.52/software-patches/catalog Pure Storage List Available Software Patches
GET /api/2.52/software-versions Pure Storage List Software Versions
GET /api/2.26/software-bundle Pure Storage List Software-bundle
POST /api/2.26/software-bundle Pure Storage Create Software-bundle
GET /api/2.26/software-check Pure Storage List Software Check Tasks
POST /api/2.26/software-check Pure Storage Create a Software Check Task
GET /api/2.26/software-patches Pure Storage List Software Patches
POST /api/2.26/software-patches Pure Storage Create a Software Patch

Documentation

Specifications

Code Examples

Schemas & Data

📊
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-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
🔗
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

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/pure-storage-software-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

pure-storage-software-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: FlashArray REST Active Directory Software 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: Software
  description: 'Software to be installed on the array.

    '
paths:
  /api/2.52/software:
    get:
      tags:
      - Software
      summary: Pure Storage List Software Packages
      description: 'Displays a list of available software packages.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Ids'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Total_item_count'
      - $ref: '#/components/parameters/Versions'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwareGetResponse'
    post:
      tags:
      - Software
      summary: Pure Storage Create a Software Package
      description: 'Creates a software package download.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SoftwarePost'
        required: true
        x-codegen-request-body-name: software
      responses:
        '200':
          description: 'The software package download was initiated. The download will start soon.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwareResponse'
      x-codegen-request-body-name: software
    delete:
      tags:
      - Software
      summary: Pure Storage Delete a Software Package
      description: 'Deletes a software package specified by software name and version.

        A software package being used for an installation can be deleted if the installation is

        `downloading`, `downloaded`, `aborted`, or `finished`. If the software package is currently

        `downloading`, the download will be cancelled.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Names'
      - $ref: '#/components/parameters/Software_versions'
      responses:
        '200':
          description: OK
          content: {}
  /api/2.52/software-bundle:
    get:
      tags:
      - Software
      summary: Pure Storage List Software-bundle
      description: 'Displays a list of software bundles.

        '
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Ids'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Total_item_count'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwareBundleGetResponse'
    post:
      tags:
      - Software
      summary: Pure Storage Create Software-bundle
      description: 'Creates and initiates a software bundle download.

        '
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SoftwareBundlePost'
        required: true
        x-codegen-request-body-name: source
      responses:
        '200':
          description: 'The software bundle has started downloading successfully.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwareBundleResponse'
      x-codegen-request-body-name: source
  /api/2.52/software-check:
    get:
      tags:
      - Software
      summary: Pure Storage List Software Check Tasks
      description: Displays a list of software check tasks.
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Ids'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Software_names'
      - $ref: '#/components/parameters/Software_versions'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Total_item_count'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwareChecksGetResponse'
    post:
      tags:
      - Software
      summary: Pure Storage Create a Software Check Task
      description: 'Creates a software check task. If there are no previously queued or running

        software check tasks, the new task immediately starts. Otherwise, it is queued and starts once

        all previously queued or running software check tasks finish. To create a task, use a software

        name and version.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Software_names'
      - $ref: '#/components/parameters/Software_versions'
      responses:
        '200':
          description: 'The software check record was created successfully.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwareChecksResponse'
    delete:
      tags:
      - Software
      summary: Pure Storage Delete a Software Check Task
      description: 'Deletes a software check task specified by software name and version.

        The check task must be queued. If the check task is running or passed/failed

        then the task cannot be deleted.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Software_names'
      - $ref: '#/components/parameters/Software_versions'
      responses:
        '200':
          description: OK
          content: {}
  /api/2.52/software-installations:
    get:
      tags:
      - Software
      summary: Pure Storage List Software Upgrades
      description: 'Displays a list of software upgrades, including currently running and past upgrades.


        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Continuation_token'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Ids'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Software_ids'
      - $ref: '#/components/parameters/Software_names'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Total_item_count'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwareInstallationsGetResponse'
    post:
      tags:
      - Software
      summary: Pure Storage Create a Software Upgrade
      description: 'Creates and initiates a software upgrade.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Software_idsRequired'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SoftwareInstallationPost'
        required: true
        x-codegen-request-body-name: software-installations
      responses:
        '200':
          description: 'The software upgrade record was created successfully.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwareInstallationsResponse'
      x-codegen-request-body-name: software-installations
    patch:
      tags:
      - Software
      summary: Pure Storage Modify Software Upgrade
      description: 'Modifies a software upgrade by continuing, retrying, or aborting it.

        All `override_checks` are updated before the command is issued if

        `add_override_checks` is present.

        The `override_checks` parameter is valid when `command` is set to `continue` or `retry`.


        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Software_installation_command_required'
      - $ref: '#/components/parameters/Software_installation_current_step_idRequired'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SoftwareInstallationPatch'
        required: false
        x-codegen-request-body-name: software-installations
      responses:
        '200':
          description: 'The `command` was issued and/or `override_checks` was updated.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwareInstallationsResponse'
      x-codegen-request-body-name: software-installations
  /api/2.52/software-installation-steps:
    get:
      tags:
      - Software
      summary: Pure Storage List Software Upgrade Steps
      description: Displays a list of currently running and completed software upgrade steps.
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Continuation_token'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Ids'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Software_installation_ids'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Total_item_count'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwareInstallationStepsGetResponse'
  /api/2.52/software-patches:
    get:
      tags:
      - Software
      summary: Pure Storage List Software Patches
      description: 'Displays a list of software patches.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Ids'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Total_item_count'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwarePatchesGetResponse'
    post:
      tags:
      - Software
      summary: Pure Storage Create a Software Patch
      description: 'Creates software patch download and installation.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - name: allow_ha_reduction
        in: query
        description: 'If Software Patch has ha_reduction_required set to true, `allow_ha_reduction` must be

          set to `true` for Software Patch installation.


          '
        schema:
          type: boolean
      - name: name
        in: query
        description: Name of software patch to install
        required: true
        schema:
          type: string
      responses:
        '200':
          description: 'The software patch download was initiated. The download and installation will start soon.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwarePatchesResponse'
  /api/2.52/software-patches/catalog:
    get:
      tags:
      - Software
      summary: Pure Storage List Available Software Patches
      description: 'Displays a list of available software patches.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Total_item_count'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwarePatchesGetResponse'
  /api/2.52/software-versions:
    get:
      tags:
      - Software
      summary: Pure Storage List Software Versions
      description: 'Displays a list of software versions.


        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Total_item_count'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwareVersionsGetResponse'
  /api/2.26/software-bundle:
    get:
      x-pure-block-remote-execution: true
      tags:
      - Software
      summary: Pure Storage List Software-bundle
      description: 'Displays a list of software bundles including the downloads which did not succeed.

        '
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Continuation_token'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Ids_2'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Offset_2'
      - $ref: '#/components/parameters/Sort_2'
      - $ref: '#/components/parameters/Total_item_count'
      responses:
        '200':
          description: OK
          headers:
            X-Request-ID:
              description: Supplied by client during request or generated by server.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwareBundleGetResponse'
    post:
      x-pure-block-remote-execution: true
      tags:
      - Software
      summary: Pure Storage Create Software-bundle
      description: 'Creates and initiates a software bundle download. The upgrade won''t start automatically

        after the download finishes. Only one software is being downloaded at a time.

        Any previous currently running download will be cancelled. The endpoint is not idempotent.

        '
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SoftwareBundlePost_2'
        required: true
        x-codegen-request-body-name: source
      responses:
        '200':
          description: 'The software bundle has started downloading successfully.

            '
          headers:
            X-Request-ID:
              description: Supplied by client during request or generated by server.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwareBundleResponse'
      x-codegen-request-body-name: source
  /api/2.26/software-check:
    get:
      tags:
      - Software
      summary: Pure Storage List Software Check Tasks
      description: Displays a list of software check tasks.
      parameters:
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Ids_2'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      - $ref: '#/components/parameters/Offset_2'
      - $ref: '#/components/parameters/Software_names'
      - $ref: '#/components/parameters/Software_versions'
      - $ref: '#/components/parameters/Sort_2'
      - $ref: '#/components/parameters/Total_item_count'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwareChecksGetResponse'
    post:
      tags:
      - Software
      summary: Pure Storage Create a Software Check Task
      description: 'Creates a software check task.

        To create a task, use a software name and version.

        If a task is already running, an error is returned.

        '
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Software_names'
      - $ref: '#/components/parameters/Software_versions'
      responses:
        '200':
          description: 'The software check record was created successfully.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwareChecksResponse'
        '403':
          description: Another instance is already running
          content: {}
  /api/2.26/software-patches:
    get:
      tags:
      - Software
      summary: Pure Storage List Software Patches
      description: 'Displays a list of software patches.

        '
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Continuation_token'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Ids_2'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      - $ref: '#/components/parameters/Offset_2'
      - $ref: '#/components/parameters/Sort_2'
      - $ref: '#/components/parameters/Total_item_count'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwarePatchesGetResponse'
    post:
      tags:
      - Software
      summary: Pure Storage Create a Software Patch
      description: 'Creates software patch download and installation.

        '
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - name: allow_ha_reduction
        in: query
        description: 'If Software Patch has ha_reduction_required set to true, `allow_ha_reduction` must be

          set to `true` for Software Patch installation.

          '
        schema:
          type: boolean
      - name: name
        in: query
        description: Name of software patch to install
        required: true
        schema:
          type: string
      responses:
        '200':
          description: 'The software patch download was initiated. The download and installation will start soon.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SoftwarePatchesResponse'
components:
  schemas:
    SoftwareVersionsGetResponse:
      allOf:
      - $ref: '#/components/schemas/PageInfo'
      - $ref: '#/components/schemas/SoftwareVersionsResponse'
    SoftwareInstallationStepsGetResponse:
      allOf:
      - $ref: '#/components/schemas/PageInfo'
      - $ref: '#/components/schemas/SoftwareInstallationStepsResponse'
    SoftwareInstallationStep:
      allOf:
      - $ref: '#/components/schemas/_resourceFixedNonUniqueName'
      - $ref: '#/components/schemas/_start_end_time'
      - description: 'Step needed to complete an upgrade.

          '
        type: object
        properties:
          checks:
            description: 'A list of checks in this upgrade step.

              '
            type: array
            items:
              $ref: '#/components/schemas/_softwareInstallationStepsChecks'
          description:
            description: 'Detailed description of the step.

              '
            type: string
          details:
            description: 'Detailed result of the step used to diagnose step failures.

              '
            type: string
          hop_version:
            description: The version to which the current hop is upgrading.
            type: string
            example: 99.9.9
          installation:
            description: 'Referenced `software-installation` to which the step belongs.

              '
            title: Reference
            allOf:
            - $ref: '#/components/schemas/_reference'
          status:
            description: 'Status of the step. Valid values are `running` and `finished`.

              A status of `running` indicates that the step has not finished.

              A status of `finished` indicates that the check has finished.

              '
            type: string
    SoftwareBundleResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/SoftwareBundle'
    SoftwareResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/Software'
    _upgrade_parameters:
      type: object
      properties:
        name:
          description: 'The name of the upgrade parameter to be sent to the upgrade process.

            '
          type: string
        value:
          description: 'The value of the upgrade parameter to be sent to the upgrade process.

            '
          type: string
          maxLength: 1024
    SoftwareInstallationStepsResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/SoftwareInstallationStep'
    Software:
      allOf:
      - $ref: '#/components/schemas/_resourceFixedNonUniqueName'
      - description: Software to be installed on the array.
        type: object
        properties:
          details:
            description: 'The detailed reason for the `status`.

              '
            type: string
          payload_id:
            description: 'A checksum hash referring to the update bundle.

              '
            type: string
            example: 4f7b319106401d072ff94808535cb3ce
          progress:
            description: 'The progress of the software upgrade. Displayed in decimal format.

              '
            type: number
            format: float
          status:
            description: 'The status of the software package.

              Valid values are `available`, `downloaded`, `downloading`, `download_failed`, `checking`,

              `installing`, `new`, `paused`, `aborting`, `abort`, `canceled`, `partially_installed`, and

              `installed`.

              A status of `available` indicates that the package is available for download. This only

              applies if `automatic-download` is not enabled.

              A status of `downloaded` indicates that the package is downloaded and ready for

              installation.

              A status of `downloading` indicates that the package is currently downloading.

              A status of `download_failed` indicates that the download of the package failed.

              A status of `checking` indicates that the package is currently running in `check-only` mode.

              A status of `installing` indicates that the package is currently installing.

              A status of `new` indicates that Pure1 cloud is still building the package.

              A status of `paused` indicates that the upgrade is paused and waiting for user input to

              proceed.

              A status of `aborting` indicates that the upgrade is being aborted, due to an unrecoverable

              error or an `abort` command issued by the user.

              A status of `canceled` indicates that the upgrade has been canceled.

              A status of `partially_installed` indicates that the upgrade has been partially installed

              due to an `abort`. The array has been upgraded to an intermediate version and the `software`

              is no longer available for installation.

              A status of `installed` indicates that the upgrade has finished.

              '
            type: string
            example: Available
          upgrade_hops:
            description: 'The plan by which the upgrade will be conducted. The first element is the current

              version, the last element is the destination version, and the elements in

              between are intermediate versions.

              '
            type: array
            uniqueItems: true
            items:
              type: string
            example:
            - 5.0.0
            - 5.1.6
            - 5.2.3
          upgrade_plan:
            description: 'A list of steps that are planned to run during the upgrade in an optimal scenario

              (i.e., all upgrade checks pass, no step is retried, and the upgrade is not aborted).

              Steps are listed in the order that they should occur.

              '
            type: array
            items:
              $ref: '#/components/schemas/_softwareUpgradePlan'
          version:
            description: 'The version of the software package.

              '
            type: string
            example: 5.2.3
    SoftwareVersion:
      description: Version candidates for software upgrade.
      type: object
      properties:
        details:
          description: 'The description of the version.

            '
          type: string
        name:
          description: 'The name of the software.

            '
          type: string
          example: Purity//FA
        release_family:
          description: 'The major and minor release number of the version.

            '
          type: string
          example: 6.2.0
        upgrade_hops:
          description: 'The list of software versions the upgrade will go through.

            '
          type: array
          items:
            type: string
            description: 'A software version in the upgrade path.

              '
          example:
          - 6.1.3
          - 6.2.0
        version:
          description: 'The version of the software.

            '
          type: string
          example: 6.2.0
    SoftwareInstallationPost:
      description: Software upgrade attempt.
      type: object
      properties:
        mode:
          description: 'Mode that the upgrade is in. Valid values are `check-only`, `interactive`, `semi-interactive`,

            and `one-click`.

            The `check_only` mode is deprecated. Use `/software-checks`. In this mode, the upgrade only

            runs pre-upgrade checks and returns.

            In `interactive` mode, the upgrade pauses at several points, at which users must

            enter certain commands to proceed.

            In `semi-interactive` mode, the upgrade pauses if there are any upgrade check failures and

            functions like `one-click` mode otherwise.

            In `one-click` mode, the upgrade proceeds automatically without pausing.

            '
          type: string
          example: interactive
        override_checks:
          description: 'A list of upgrade checks whose failures are overridden during the upgrade.

            If any optional `args` are provided, they are validated later when the corresponding check

            script runs.

            '
          type: array
          items:
            $ref: '#/components/schemas/_override_check'
        upgrade_parameters:
          description: 'A list of parameters to be sent to the upgrade process. These parameters can be used to

            change the behavior of the upgrade process in specific ways such as enabling or disabling

            features in the target version or changing the attributes of the appliance at upgrade time.

            When there is a need or option to set an upgrade parameter, Pure Storage will provide

            documentation for the specific parameter. If you have been provided documentation

            related to a specific upgrade parameter,

            follow the instructions in the documentation.

            Otherwise, do not set any upgrade parameters.

            '
          type: array
          items:
            $ref: '#/components/schemas/_upgrade_parameters'
    SoftwareBundlePost_2:
      description: The source location of the software bundle.
      type: object
      required:
      - source
      properties:
        source:
          description: The source of the software bundle. Accepts HTTP, HTTPS, FTP or SFTP and paths.
          type: string
          example: ftp://local/upgrade_bundle.sh
    _softwareUpgradePlan:
      type: object
      properties:
        description:
          description: Description of the upgrade step.
          type: string
        hop_version:
          description: The version to which the step is upgrading.
          type: string
          example: 99.9.9
        step_name:
          description: Name of the upgrade step.
          type: string
          example: Pre-upgrade check
    _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
    SoftwareVersionsResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/SoftwareVersion'
    _resourceFixedNonUniqueName:
      description: 'A resource with a non-unique name.

        '
      type: object
      properties:
        id:
          description: 'A globally unique, system-generated ID. The ID cannot be modified.

            '
          type: string
          readOnly: true
        name:
          description: 'Name of the resource. The name cannot be modified.

            '
          type: string
          readOnly: true
    SoftwareBundlePost:
      description: The source of the software bundle.
      type: object
      properties:
        source:
          description: The source of the software bundle. Accepts HTTP, HTTPS or FTP, and paths.
          type: string
          example: ftp://local/upgrade_bundle.sh
    _override_check:
      type: object
      properties:
        args:
          description: 'The name of the specific check within the override check to ignore so that the system can

            continue with the software upgrade. The `name` parameter of the override check must be

            specified with the `args` parameter. For example, if the HostIOCheck check fails on

            hosts host01 and host02, the system displays a list of these host names in the failed

            check. To override the HostIOCheck checks for host01 and host02, set `name=HostIOCheck`,

            and set `args=host01,host02`. Enter multiple `args` in comma-separated format. Note that

            not all checks have `args` values.

            '
          type: string
          example: host1,host2,

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