Pure Storage Protection Group Snapshots API

Protection group snapshots capture the content of all volumes on the source array for the specified protection group at a single point in time.

Operations 12

GET /api/2.52/protection-group-snapshots Pure Storage List Protection Group Snapshots
POST /api/2.52/protection-group-snapshots Pure Storage Create a Protection Group Snapshot and Create Tags.
DELETE /api/2.52/protection-group-snapshots Pure Storage Delete a Protection Group Snapshot
PATCH /api/2.52/protection-group-snapshots Pure Storage Modify a Protection Group Snapshot
POST /api/2.52/protection-group-snapshots/replica Pure Storage Create an Action to Send Protection Group Snapshots
GET /api/2.52/protection-group-snapshots/tags Pure Storage List Tags
DELETE /api/2.52/protection-group-snapshots/tags Pure Storage Delete Tags
PUT /api/2.52/protection-group-snapshots/tags/batch Pure Storage Update Tags
POST /api/2.52/protection-group-snapshots/test Pure Storage Create an Attempt to Take Protection Group Snapshot
GET /api/2.52/protection-group-snapshots/transfer Pure Storage List Protection Group Snapshots with Transfer Statistics
GET /api/1.5/protection-group-snapshots Pure Storage Get Protection Group Snapshots
GET /api/1.5/protection-group-snapshots/transfer Pure Storage Get Protection Group Snapshots with Transfer Statistics

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-protection-group-snapshots-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-protection-group-snapshots-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: FlashArray REST Active Directory Protection Group Snapshots 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: Protection Group Snapshots
  description: 'Protection group snapshots capture the content of all volumes on the source array for the

    specified protection group at a single point in time.

    '
paths:
  /api/2.52/protection-group-snapshots:
    get:
      tags:
      - Protection Group Snapshots
      summary: Pure Storage List Protection Group Snapshots
      description: 'Displays a list of protection group snapshots, including those pending eradication.

        '
      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/Filter'
      - $ref: '#/components/parameters/Ids'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Source_ids'
      - $ref: '#/components/parameters/Source_names'
      - $ref: '#/components/parameters/Total_item_count'
      - $ref: '#/components/parameters/Total_only'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProtectionGroupSnapshotGetResponse'
        '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/ProtectionGroupSnapshotGetResponse'
    post:
      tags:
      - Protection Group Snapshots
      summary: Pure Storage Create a Protection Group Snapshot and Create Tags.
      description: 'Creates a point-in-time snapshot of the contents of a protection group.

        The `source_ids` or `source_names` parameter is required, but they cannot be set together.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Allow_throttle_snapshot'
      - $ref: '#/components/parameters/Apply_retention'
      - $ref: '#/components/parameters/Context_names'
      - $ref: '#/components/parameters/For_replication'
      - $ref: '#/components/parameters/Replicate'
      - $ref: '#/components/parameters/Replicate_now'
      - $ref: '#/components/parameters/Source_ids'
      - $ref: '#/components/parameters/Source_names'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProtectionGroupSnapshotPost'
        required: false
        x-codegen-request-body-name: protection-group-snapshot
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProtectionGroupSnapshotResponse'
      x-codegen-request-body-name: protection-group-snapshot
    delete:
      tags:
      - Protection Group Snapshots
      summary: Pure Storage Delete a Protection Group Snapshot
      description: 'Deletes a protection group snapshot that has been destroyed and is pending eradication.

        Eradicating a protection group snapshot eradicates all of its protection group snapshots

        and cannot be recovered.

        Protection group snapshots are destroyed through the `PATCH` method.

        The `names` or `ids` 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'
      - $ref: '#/components/parameters/Names'
      responses:
        '200':
          description: OK
          content: {}
    patch:
      tags:
      - Protection Group Snapshots
      summary: Pure Storage Modify a Protection Group Snapshot
      description: 'Modifies a protection group snapshot so that it can be destroyed.

        To destroy a volume, set `destroyed=true`.

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

        The `names` or `ids` 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'
      - $ref: '#/components/parameters/Names'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProtectionGroupSnapshotPatch'
        required: true
        x-codegen-request-body-name: protection-group-snapshot
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProtectionGroupSnapshotResponse'
      x-codegen-request-body-name: protection-group-snapshot
  /api/2.52/protection-group-snapshots/replica:
    post:
      tags:
      - Protection Group Snapshots
      summary: Pure Storage Create an Action to Send Protection Group Snapshots
      description: 'Creates an action to send protection group snapshots to protection pgroup targets.

        When the `on` option is used, only specified targets will recieve the

        protection group snapshots.


        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Context_names'
      - $ref: '#/components/parameters/Convert_source_to_baseline'
      - $ref: '#/components/parameters/Ids'
      - $ref: '#/components/parameters/Names'
      - $ref: '#/components/parameters/On_as_target'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProtectionGroupSnapshotReplicaResponse'
  /api/2.52/protection-group-snapshots/tags:
    get:
      tags:
      - Protection Group Snapshots
      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/Continuation_token'
      - $ref: '#/components/parameters/Filter'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Namespaces'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Resource_destroyed'
      - $ref: '#/components/parameters/Resource_ids'
      - $ref: '#/components/parameters/Resource_names'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Total_item_count'
      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:
      - Protection Group Snapshots
      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'
      - $ref: '#/components/parameters/Resource_names'
      responses:
        '200':
          description: OK
          content: {}
  /api/2.52/protection-group-snapshots/tags/batch:
    put:
      tags:
      - Protection Group Snapshots
      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'
      - $ref: '#/components/parameters/Resource_names'
      requestBody:
        description: A list of tags to be created or, if already existing, 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.52/protection-group-snapshots/test:
    post:
      tags:
      - Protection Group Snapshots
      summary: Pure Storage Create an Attempt to Take Protection Group Snapshot
      description: 'Creates an attempt to take the protection group snapshot, without

        actually taking it, to test if the snapshot can be successfully taken.

        '
      parameters:
      - $ref: '#/components/parameters/Authorization'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Allow_throttle_snapshot'
      - $ref: '#/components/parameters/Apply_retention'
      - $ref: '#/components/parameters/Context_names'
      - $ref: '#/components/parameters/For_replication'
      - $ref: '#/components/parameters/Replicate'
      - $ref: '#/components/parameters/Replicate_now'
      - $ref: '#/components/parameters/Source_ids'
      - $ref: '#/components/parameters/Source_names'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProtectionGroupSnapshotPost'
        required: false
        x-codegen-request-body-name: protection-group-snapshot
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TestResultWithResourceWithIdPostResponse'
      x-codegen-request-body-name: protection-group-snapshot
  /api/2.52/protection-group-snapshots/transfer:
    get:
      tags:
      - Protection Group Snapshots
      summary: Pure Storage List Protection Group Snapshots with Transfer Statistics
      description: 'Displays a list of protection group snapshots and corresponding transfer statistics.

        '
      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/Filter'
      - $ref: '#/components/parameters/Ids'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Names'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Source_ids'
      - $ref: '#/components/parameters/Source_names'
      - $ref: '#/components/parameters/Total_item_count'
      - $ref: '#/components/parameters/Total_only'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProtectionGroupSnapshotTransferGetResponse'
        '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/ProtectionGroupSnapshotTransferGetResponse'
  /api/1.5/protection-group-snapshots:
    get:
      tags:
      - Protection Group Snapshots
      summary: Pure Storage Get Protection Group Snapshots
      description: 'Retrieves information about snapshots of protection groups

        '
      parameters:
      - $ref: '#/components/parameters/Authorization_2'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Continuation_token_2'
      - $ref: '#/components/parameters/Filter_2'
      - $ref: '#/components/parameters/Ids_2'
      - $ref: '#/components/parameters/Limit_2'
      - $ref: '#/components/parameters/Names_2'
      - $ref: '#/components/parameters/Offset_2'
      - $ref: '#/components/parameters/Sort_2'
      - $ref: '#/components/parameters/Source_ids_2'
      - $ref: '#/components/parameters/Source_names_2'
      responses:
        '200':
          description: OK
          headers:
            X-Request-ID:
              description: Supplied by client during request or generated by server.
              schema:
                type: string
            X-RateLimit-Remaining-second:
              description: 'The number of requests remaining for the organization in that second.

                '
              schema:
                type: integer
            X-RateLimit-Remaining-minute:
              description: 'The number of requests remaining for the organization in that minute.

                '
              schema:
                type: integer
            X-RateLimit-Limit-second:
              description: The number of requests available per second.
              schema:
                type: integer
            X-RateLimit-Limit-minute:
              description: The number of requests available per minute.
              schema:
                type: integer
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProtectionGroupSnapshotGetResponse_2'
        '400':
          $ref: '#/components/responses/Error400'
        '403':
          $ref: '#/components/responses/Error403'
        '404':
          $ref: '#/components/responses/Error404'
        '429':
          $ref: '#/components/responses/Error429'
        '500':
          $ref: '#/components/responses/Error500'
  /api/1.5/protection-group-snapshots/transfer:
    get:
      tags:
      - Protection Group Snapshots
      summary: Pure Storage Get Protection Group Snapshots with Transfer Statistics
      description: 'Retrieves information about snapshots of protection groups

        '
      parameters:
      - $ref: '#/components/parameters/Authorization_2'
      - $ref: '#/components/parameters/XRequestId'
      - $ref: '#/components/parameters/Continuation_token_2'
      - $ref: '#/components/parameters/Filter_2'
      - $ref: '#/components/parameters/Ids_2'
      - $ref: '#/components/parameters/Limit_2'
      - $ref: '#/components/parameters/Names_2'
      - $ref: '#/components/parameters/Offset_2'
      - $ref: '#/components/parameters/Sort_2'
      - $ref: '#/components/parameters/Source_ids_2'
      - $ref: '#/components/parameters/Source_names_2'
      responses:
        '200':
          description: OK
          headers:
            X-Request-ID:
              description: Supplied by client during request or generated by server.
              schema:
                type: string
            X-RateLimit-Remaining-second:
              description: 'The number of requests remaining for the organization in that second.

                '
              schema:
                type: integer
            X-RateLimit-Remaining-minute:
              description: 'The number of requests remaining for the organization in that minute.

                '
              schema:
                type: integer
            X-RateLimit-Limit-second:
              description: The number of requests available per second.
              schema:
                type: integer
            X-RateLimit-Limit-minute:
              description: The number of requests available per minute.
              schema:
                type: integer
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProtectionGroupSnapshotTransferGetResponse_2'
        '400':
          $ref: '#/components/responses/Error400'
        '403':
          $ref: '#/components/responses/Error403'
        '404':
          $ref: '#/components/responses/Error404'
        '429':
          $ref: '#/components/responses/Error429'
        '500':
          $ref: '#/components/responses/Error500'
components:
  parameters:
    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
    Destroyed:
      name: destroyed
      in: query
      description: 'If set to `true`, lists only destroyed objects that are in the eradication pending state.

        If set to `false`, lists only objects that are not destroyed.

        If not set, lists both objects that are destroyed and those that are not destroyed.


        For destroyed objects, the time remaining is displayed in milliseconds.


        If object name(s) or id(s) are specified, then each object referenced must exist.

        If `destroyed` is set to `true`, then each object referenced must also be destroyed.

        If `destroyed` is set to `false`, then each object referenced must also not be destroyed.

        An error is returned if any of these conditions are not met.

        '
      schema:
        type: boolean
    Filter_2:
      name: filter
      in: query
      description: 'Exclude resources that don''t match the specified criteria.

        Single quotes are required around all strings inside the filters.

        '
      schema:
        type: string
    Replicate:
      name: replicate
      in: query
      description: 'If set to `true`, queues up and begins replicating to each allowed target after all

        earlier replication sessions for the same protection group have been

        completed to that target. The `replicate` and `replicate_now` parameters cannot be used together.

        '
      schema:
        type: boolean
    Names_2:
      name: names
      in: query
      description: 'A comma-separated list of resource names.

        If there is not at least one resource that matches each `name` element,

        an error is returned.

        Single quotes are required around all strings.

        '
      style: form
      explode: false
      schema:
        type: array
        items:
          type: string
        x-quoted: true
      x-quoted: true
    On_as_target:
      name: 'on'
      in: query
      description: 'Performs the operation locally with the target names specified as the

        destinations of the operation.

        Enter multiple target names in comma-separated format.

        For example, `targetName01,targetName02`.

        '
      style: form
      explode: false
      schema:
        type: array
        items:
          type: string
    Source_names_2:
      name: source_names
      in: query
      description: 'A comma-separated list of names for the source of the object.

        If there is not at least one resource that matches each `source_name` element,

        an error is returned.

        Single quotes are required around all strings.

        '
      style: form
      explode: false
      schema:
        type: array
        items:
          type: string
        x-quoted: true
      x-quoted: true
    Allow_throttle_snapshot:
      name: allow_throttle
      in: query
      description: 'If set to `true`, allows snapshot to fail if array health is not optimal.

        '
      schema:
        type: boolean
    Resource_names:
      name: resource_names
      in: query
      description: 'A comma-separated list of resource names.

        The `resource_ids` or `resource_names` parameter is required, but they cannot be set together.

        '
      style: form
      explode: false
      schema:
        type: array
        items:
          type: string
    Source_ids_2:
      name: source_ids
      in: query
      description: 'A comma-separated list of ids for the source of the object.

        If there is not at least one resource that matches each `source_id` element,

        an error is returned.

        Single quotes are required around all strings.

        '
      style: form
      explode: false
      schema:
        type: array
        items:
          type: string
        x-quoted: true
      x-quoted: true
    Continuation_token_2:
      name: continuation_token
      in: query
      description: 'An opaque token used to iterate over a collection.

        The token to use on the next request is returned in the

        `continuation_token` field of the result.

        Single quotes are required around all strings.

        '
      schema:
        type: string
        x-quoted: true
      x-quoted: true
    For_replication:
      name: for_replication
      in: query
      description: 'If `true`, destroys and eradicates the snapshot after 1 hour.

        '
      schema:
        type: boolean
    Resource_destroyed:
      name: resource_destroyed
      in: query
      description: 'If set to `true`, returns only objects from destroyed resources. Returns an error if

        the name of a live resource is specified in the `resource_names` query parameter.

        If set to `false`, returns only objects from live resources. Returns an error if the

        name of a destroyed resource is specified in the `resource_names` query parameter.

        '
      schema:
        type: boolean
    Namespaces:
      name: namespaces
      in: query
      description: 'A comma-separated list of namespaces.

        '
      style: form
      explode: false
      schema:
        type: array
        items:
          type: string
    Ids_2:
      name: ids
      in: query
      description: 'A comma-separated list of resource IDs.

        If there is not at least one resource that matches each `id` element,

        an error is returned.

        Single quotes are required around all strings.

        '
      style: form
      explode: false
      schema:
        type: array
        items:
          type: string
        x-quoted: true
      x-quoted: true
    Total_item_count:
      name: total_item_count
      in: query
      description: 'If set to `true`, the `total_item_count` matching the

        specified query parameters is calculated and returned in

        the response. If set to `false`, the `total_item_count`

        is `null` in the response. This may speed up queries

        where the `total_item_count` is large. If not specified,

        defaults to `false`.

        '
      schema:
        type: boolean
    Replicate_now:
      name: replicate_now
      in: query
      description: 'If set to `true`, replicates the snapshots to each allowed target.

        The `replicate` and `replicate_now` parameters cannot be used together.

        '
      schema:
        type: boolean
    Source_ids:
      name: source_ids
      in: query
      description: 'Performs the operation on the source ID specified.

        Enter multiple source IDs in comma-separated format.

        '
      style: form
      explode: false
      schema:
        type: array
        items:
          type: string
    Namespaces_delete:
      name: namespaces
      in: query
      description: 'A comma-separated list of namespaces. Only one namespace is allowed per delete request.

        '
      style: form
      explode: false
      schema:
        type: array
        items:
          type: string
    Allow_errors:
      name: allow_errors
      in: query
      description: 'If set to `true`, the API will allow the operation to continue even if there are errors.

        Any errors will be returned in the `errors` field of the response.

        If set to `false`, the operation will fail if there are any errors.

        '
      schema:
        type: boolean
        default: false
    Source_names:
      name: source_names
      in: query
      description: 'Performs the operation on the source name specified.

        Enter multiple source names in comma-separated format. For example, `name01,name02`.

        '
      style: form
      explode: false
      schema:
        type: array
        items:
          type: string
    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
    Limit_2:
      name: limit
      in: query
      description: 'Limit the size of the response to the specified number of resources.

        A limit of 0 can be used to get the number of resources without getting

        all of the resources. It will be returned in the total_item_count field.

        If a client asks for a page size larger than the maximum number, the request

        is still valid. In that case the server just returns the maximum number of

        items, disregarding the client''s page size request. If not specified, defaults

        to 1000.

        '
      schema:
        type: integer
        format: int32
    Keys:
      name: keys
      in: query
      description: 'A comma-separated list of tag keys.

        '
      style: form
      explode: false
      schema:
        type: array
        items:
          type: string
    Ids:
      name: ids
      in: query
      description: "A comma-separated list of unique resource IDs. At least one resource must match\n each specified ID, otherwise an error is returned. This parameter is required\n  if ids or names is not provided, but it cannot be used together with name or names.\n"
      style: form
      explode: false
      schema:
        type: array
        items:
          type: string
    Offset_2:
      name: offset
      in: query
      description: 'The offset of the first resource to return from a collection.

        '
      schema:
        type: integer
        format: int32
        minimum: 0
    Resource_ids:
      name: resource_ids
      in: query
      description: 'A comma-separated list of resource IDs.

        The `resource_ids` or `resource_names` parameter is required, but they cannot be set together.

        '
      style: form
      explode: false
      schema:
        type: array
        items:
          type: string
    Context_names:
      name: context_names
      in: query
      description: 'Performs the operation on the context specified.


        If specified, the context names must be an array of size 1, and the single element

        must be the name of an array in the same fleet or the name of the fleet itself. If

        not specified, the context will default to the array that received this request.


        Other parameters provided with the request, such as names of volumes or snapshots,

        are resolved relative to the provided `context`.

        '
      style: form
      explode: false
      schema:
        type: array
        items:
          type: string
    Filter:
      name: filter
      in: query
      description: 'Narrows down the results to only the response objects

        that satisfy the filter criteria.

        '
      schema:
        type: string
    Authorization:
      name: Authorization
      in: header
      description: 'Access token (in JWT format) required to use any API

        endpoint (except `/oauth2`, `/login`, and `/logout`)

        '
      schema:
        type: string
    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
    XRequestId:
      name: X-Request-ID
      in: header
      description: 'Supplied by client during request or generated by server.

        '
      schema:
        type: string
    Context_names_get:
      name: context_names
      in: query
      description: 'Performs the operation on the unique contexts specified.


        If specified, each context name must be the name of an array in the same fleet or

        the name of the fleet itself.


        If not specified, the context will default to the array that received this request.


        Other parameters provided with the request, such as names of volumes or snapshots,

        are resolved relative to the provided `context`.


        Enter multiple names in comma-separated format.

        For example, `name01,name02`.

        '
      style: form
      explode: false
      schema:
        type: array
        items:
          type: string
    Offset:
      name: offset
      in: query
      description: 'The starting position based on the results of the query

        in relation to the full set of response objects returned.

        '
      schema:
        type: integer
        format: int32
        minimum: 0
      example: 10
    Apply_retention:
      name: apply_retention
      in: query
      description: 'If `true`, applies the local and remote retention policy to the snapshots.

        '
      schema:
        type: boolean
    Continuation_token:
      name: continuation_token
      in: query
      description: 'A token used to retrieve the next page of data

        with some consistency guaranteed.

        The token is a Base64 encoded value.

        Set `continuation_token` to the system-generated token taken from the `x-next-token`

        header field of the response.

        A query has reached its last page when the response does not include a token.

        Pagination requires the `limit` and `continuation_token`

        query parameters.

        '
      schema:
        type: string
    Authorization_2:
      name: Authorization
      in: header
      description: 'Access token (in JWT format) required to use any API endpoint (except `/oauth2`)

        '
      schema:
        type: string
    Convert_source_to_baseline:
      name: convert_source_to_baseline
      in: query
      description: 'Set to `true` to have the snapshot be eradicated when it is no longer baseline on source.

        '
      schema:
        type: boolean
    Sort_2:
      name: sort
      in: query
      description: 'Sort the response by the specified fields (in descending order if ''-''

        is appended to the field name).

        If you provide a sort you will not g

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