Pure Storage Clients API

Displays an NFS client’s performance metrics on the array for read, write, and meta operations.

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-clients-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: FlashArray REST Active Directory Clients 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: Clients
  description: Displays an NFS client’s performance metrics on the array for read, write, and meta operations.
paths:
  /api/2.26/arrays/clients/performance:
    get:
      tags:
      - Clients
      summary: Pure Storage GET Clients-performance
      description: List client performance metrics.
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      - $ref: '#/components/parameters/Protocol_clients'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Total_only'
      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/ClientsPerformanceGetResponse'
        '207':
          description: 'Partial success. Some resources were returned, but there

            were also errors possibly preventing some resources from

            being returned.

            '
          headers:
            X-Request-ID:
              description: Supplied by client during request or generated by server.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClientsPerformanceGetResponse'
  /api/2.26/arrays/clients/s3-specific-performance:
    get:
      tags:
      - Clients
      summary: Pure Storage GET Clients-performance
      description: List S3 client performance performance metrics.
      parameters:
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Total_only'
      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/ClientsS3SpecificPerformanceGetResponse'
components:
  schemas:
    ClientsPerformanceGetResponse:
      allOf:
      - $ref: '#/components/schemas/PageInfo'
      - type: object
        properties:
          items:
            description: A list of client performance metrics objects.
            type: array
            items:
              $ref: '#/components/schemas/ClientsPerformance'
          total:
            description: 'Total of all records after filtering.

              If `total_only` query param is `true`, then no items will be returned.

              '
            type: array
            items:
              $ref: '#/components/schemas/ClientsPerformance'
      - $ref: '#/components/schemas/_errorContextResponse'
    _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
    ClientsS3SpecificPerformanceGetResponse:
      allOf:
      - $ref: '#/components/schemas/PageInfo'
      - type: object
        properties:
          items:
            description: A list of S3 specific array performance metrics objects.
            type: array
            items:
              $ref: '#/components/schemas/ClientsS3SpecificPerformance'
          total:
            description: Total of all records after filtering. If `total_only` query param is `true`, then no items will be returned.
            type: array
            items:
              $ref: '#/components/schemas/ClientsS3SpecificPerformance'
    _builtInNoId:
      type: object
      properties:
        name:
          description: Name of the object (e.g., a file system or snapshot).
          type: string
          readOnly: true
    _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'
    _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'
        message:
          description: A description of the error which occurred.
          type: string
          example: Resource does not exist.
    _fixedReference:
      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
    ClientsPerformance:
      allOf:
      - $ref: '#/components/schemas/_builtInNoId'
      - type: object
        properties:
          bytes_per_op:
            description: 'Average operation size (read bytes+write bytes/read ops+write ops).

              '
            type: number
            format: double
            minimum: 0
            readOnly: true
          bytes_per_read:
            description: Average read size in bytes per read operation.
            type: number
            format: double
            minimum: 0
            readOnly: true
          bytes_per_write:
            description: Average write size in bytes per write operation.
            type: number
            format: double
            minimum: 0
            readOnly: true
          others_per_sec:
            description: Other operations processed per second.
            type: number
            format: double
            minimum: 0
            readOnly: true
          read_bytes_per_sec:
            description: Bytes read per second.
            type: number
            format: double
            minimum: 0
            readOnly: true
          reads_per_sec:
            description: Read requests processed per second.
            type: number
            format: double
            minimum: 0
            readOnly: true
          time:
            description: Sample time in milliseconds since UNIX epoch.
            type: integer
            format: int64
            readOnly: true
          usec_per_other_op:
            description: 'Average time, measured in microseconds, it takes the array to process

              other operations.

              '
            type: number
            format: double
            minimum: 0
            readOnly: true
          usec_per_read_op:
            description: 'Average time, measured in microseconds, it takes the array to process

              a read request.

              '
            type: number
            format: double
            minimum: 0
            readOnly: true
          usec_per_write_op:
            description: 'Average time, measured in microseconds, it takes the array to process

              a write request.

              '
            type: number
            format: double
            minimum: 0
            readOnly: true
          write_bytes_per_sec:
            description: Bytes written per second.
            type: number
            format: double
            minimum: 0
            readOnly: true
          writes_per_sec:
            description: Write requests processed per second.
            type: number
            format: double
            minimum: 0
            readOnly: true
        x-readOnly: true
    ClientsS3SpecificPerformance:
      allOf:
      - $ref: '#/components/schemas/_builtInNoId'
      - type: object
        properties:
          others_per_sec:
            description: Other operations processed per second.
            type: number
            format: double
            minimum: 0
          read_buckets_per_sec:
            description: Read buckets requests processed per second.
            type: number
            format: double
            minimum: 0
          read_objects_per_sec:
            description: Read object requests processed per second.
            type: number
            format: double
            minimum: 0
          time:
            description: Sample time in milliseconds since UNIX epoch.
            type: integer
            format: int64
          usec_per_other_op:
            description: 'Average time, measured in microseconds, it takes the array to process

              other operations.

              '
            type: number
            format: double
            minimum: 0
          usec_per_read_bucket_op:
            description: 'Average time, measured in microseconds, it takes the array to process

              a read bucket request.

              '
            type: number
            format: double
            minimum: 0
          usec_per_read_object_op:
            description: 'Average time, measured in microseconds, it takes the array to process

              a read object request.

              '
            type: number
            format: double
            minimum: 0
          usec_per_write_bucket_op:
            description: 'Average time, measured in microseconds, it takes the array to process

              a write bucket request.

              '
            type: number
            format: double
            minimum: 0
          usec_per_write_object_op:
            description: 'Average time, measured in microseconds, it takes the array to process

              a write object request.

              '
            type: number
            format: double
            minimum: 0
          write_buckets_per_sec:
            description: Write buckets requests processed per second.
            type: number
            format: double
            minimum: 0
          write_objects_per_sec:
            description: Write object requests processed per second.
            type: number
            format: double
            minimum: 0
    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:
    Total_only:
      name: total_only
      in: query
      description: 'If set to `true`, returns the aggregate value of all items after filtering.

        Where it makes more sense, the average value is displayed instead.

        The values are displayed for each name where meaningful.

        If `total_only=true`, the `items` list will be empty.

        '
      schema:
        type: boolean
    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
    Protocol_clients:
      name: protocol
      in: query
      description: 'Display the performance of a specified protocol.

        Valid values are `NFS`, and `S3`.

        If not specified, defaults to `NFS`.

        '
      schema:
        type: string
    Filter:
      name: filter
      in: query
      description: 'Narrows down the results to only the response objects

        that satisfy the filter criteria.

        '
      schema:
        type: string
    XRequestId:
      name: X-Request-ID
      in: header
      description: 'Supplied by client during request or generated by server.

        '
      schema:
        type: string
    Limit:
      name: limit
      in: query
      description: 'Limits the size of the response to the specified number of objects on each page.

        To return the total number of resources, set `limit=0`.

        The total number of resources is returned as a `total_item_count` value.

        If the page size requested is larger than the system maximum limit,

        the server returns the maximum limit, disregarding the requested page size.

        '
      schema:
        type: integer
        format: int32
        minimum: 0
      example: 10
    Sort:
      name: sort
      in: query
      description: 'Sort the response by the specified fields (in descending order if ''-''

        is appended to the field name).

        NOTE: If you provide a sort you will not get a `continuation_token` in

        the response.

        '
      style: form
      explode: false
      schema:
        type: array
        items:
          pattern: ^[a-z]+(_[a-z]+)*-?
          type: string