Ping Identity Snapshots API

Operations for managing configuration management snapshots.

OpenAPI Specification

ping-identity-snapshots-api-openapi.yml Raw ↑
openapi: 3.1.1
info:
  title: PingOne Platform Configuration Management Snapshots API
  version: 2026.01.07-beta
  description: PingOne is a cloud-based framework for secure identity access management. The PingOne API gives developers the tools to integrate enterprise and third-party applications with the PingOne platform.
  contact:
    name: Ping Identity Developer Experiences
    url: https://developer.pingidentity.com
    email: devex@pingidentity.com
  license:
    identifier: Apache-2.0
    name: Apache 2.0
servers:
- url: https://api.pingone.{tld}/{basePath}
  variables:
    basePath:
      default: v1
    tld:
      enum:
      - eu
      - com
      - asia
      - com.au
      - ca
      - sg
      default: com
security:
- bearerAuth: []
- oauth2: []
tags:
- name: Snapshots
  description: Operations for managing configuration management snapshots.
paths:
  /environments/{environmentID}/snapshots:
    post:
      operationId: createSnapshot
      parameters:
      - $ref: '#/components/parameters/com.pingidentity.path.environments.environmentID'
      - name: expand
        in: query
        required: false
        schema:
          type: string
      - $ref: '#/components/parameters/com.pingidentity.header.ExternalSessionID'
      - $ref: '#/components/parameters/com.pingidentity.header.ExternalTransactionID'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/com.pingidentity.pingone.configmanagement.snapshots.data.SnapshotRequest'
        required: true
      responses:
        '201':
          description: Created
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/com.pingidentity.pingone.configmanagement.snapshots.data.SnapshotView'
        '400':
          $ref: '#/components/responses/http.400.BadRequest'
        '401':
          $ref: '#/components/responses/http.401.Unauthorized'
        '403':
          $ref: '#/components/responses/http.403.Forbidden.P14C63085.DOCS8830'
        '429':
          $ref: '#/components/responses/http.429.TooManyRequests'
        '500':
          $ref: '#/components/responses/http.500.InternalServerError'
        '502':
          $ref: '#/components/responses/http.502.BadGateway'
        '503':
          $ref: '#/components/responses/http.503.ServiceUnavailable'
      x-feature-flag: p1ax-1984-configuration-promotion
      x-permission: promotion:create:snapshot
      tags:
      - Snapshots
  /environments/{environmentID}/snapshots/{snapshotID}:
    get:
      operationId: getSnapshotById
      parameters:
      - $ref: '#/components/parameters/com.pingidentity.path.environments.environmentID'
      - $ref: '#/components/parameters/com.pingidentity.path.environments.snapshots.snapshotID'
      - name: expand
        in: query
        required: false
        schema:
          type: string
      - name: filter
        in: query
        schema:
          type: string
      - $ref: '#/components/parameters/com.pingidentity.header.ExternalSessionID'
      - $ref: '#/components/parameters/com.pingidentity.header.ExternalTransactionID'
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/com.pingidentity.pingone.configmanagement.snapshots.data.SnapshotView'
        '400':
          $ref: '#/components/responses/http.400.BadRequest'
        '401':
          $ref: '#/components/responses/http.401.Unauthorized'
        '403':
          $ref: '#/components/responses/http.403.Forbidden.P14C63085.DOCS8830'
        '429':
          $ref: '#/components/responses/http.429.TooManyRequests'
        '500':
          $ref: '#/components/responses/http.500.InternalServerError'
        '502':
          $ref: '#/components/responses/http.502.BadGateway'
        '503':
          $ref: '#/components/responses/http.503.ServiceUnavailable'
      x-feature-flag: p1ax-1984-configuration-promotion
      x-permission: promotion:read:snapshot
      tags:
      - Snapshots
  /environments/{environmentID}/snapshots/{snapshotID}/versions:
    get:
      operationId: getVersionsBySnapshotId
      parameters:
      - $ref: '#/components/parameters/com.pingidentity.path.environments.environmentID'
      - $ref: '#/components/parameters/com.pingidentity.path.environments.snapshots.snapshotID'
      - $ref: '#/components/parameters/com.pingidentity.header.ExternalSessionID'
      - $ref: '#/components/parameters/com.pingidentity.header.ExternalTransactionID'
      responses:
        '200':
          description: OK
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/com.pingidentity.pingone.configmanagement.snapshots.data.SnapshotsVersionsResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/com.pingidentity.pingone.configmanagement.snapshots.data.SnapshotsVersionsResponse'
        '400':
          $ref: '#/components/responses/http.400.BadRequest'
        '401':
          $ref: '#/components/responses/http.401.Unauthorized'
        '403':
          $ref: '#/components/responses/http.403.Forbidden.P14C63085'
        '429':
          $ref: '#/components/responses/http.429.TooManyRequests'
        '500':
          $ref: '#/components/responses/http.500.InternalServerError'
        '502':
          $ref: '#/components/responses/http.502.BadGateway'
        '503':
          $ref: '#/components/responses/http.503.ServiceUnavailable'
      x-feature-flag: p1ax-1984-configuration-promotion
      x-permission: promotion:read:snapshot
      tags:
      - Snapshots
  /environments/{environmentID}/snapshots/{snapshotID}/versions/{versionID}:
    get:
      operationId: getVersionByIdUsingSnapshotId
      parameters:
      - $ref: '#/components/parameters/com.pingidentity.path.environments.environmentID'
      - $ref: '#/components/parameters/com.pingidentity.path.environments.snapshots.snapshotID'
      - $ref: '#/components/parameters/com.pingidentity.path.environments.snapshots.versions.versionID'
      - name: expand
        in: query
        required: false
        schema:
          type: string
      - name: attributes
        in: query
        required: true
        schema:
          type: string
      - name: filter
        in: query
        schema:
          type: string
      - $ref: '#/components/parameters/com.pingidentity.header.ExternalSessionID'
      - $ref: '#/components/parameters/com.pingidentity.header.ExternalTransactionID'
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/com.pingidentity.pingone.configmanagement.snapshots.data.SnapshotView'
        '400':
          $ref: '#/components/responses/http.400.BadRequest'
        '401':
          $ref: '#/components/responses/http.401.Unauthorized'
        '403':
          $ref: '#/components/responses/http.403.Forbidden.P14C63085'
        '429':
          $ref: '#/components/responses/http.429.TooManyRequests'
        '500':
          $ref: '#/components/responses/http.500.InternalServerError'
        '502':
          $ref: '#/components/responses/http.502.BadGateway'
        '503':
          $ref: '#/components/responses/http.503.ServiceUnavailable'
      x-feature-flag: p1ax-1984-configuration-promotion
      x-permission: promotion:read:snapshot
      tags:
      - Snapshots
components:
  parameters:
    com.pingidentity.path.environments.snapshots.versions.versionID:
      name: versionID
      in: path
      required: true
      schema:
        type: string
        format: uuid
    com.pingidentity.path.environments.snapshots.snapshotID:
      name: snapshotID
      in: path
      required: true
      schema:
        type: string
        format: uuid
    com.pingidentity.path.environments.environmentID:
      name: environmentID
      in: path
      required: true
      schema:
        type: string
        format: uuid
    com.pingidentity.header.ExternalSessionID:
      schema:
        type: string
        minLength: 1
      name: X-Ping-External-Session-ID
      in: header
    com.pingidentity.header.ExternalTransactionID:
      schema:
        type: string
        minLength: 1
      name: X-Ping-External-Transaction-ID
      in: header
  responses:
    http.403.Forbidden.P14C63085:
      description: 'Forbidden - Note: This may occur if the environment doesn''t exist. Check for environment existence with GET /environments/{environmentID} first.'
      content:
        '*/*':
          schema:
            $ref: '#/components/schemas/com.pingidentity.ApiErrorResponse.403'
      x-pingone-p14c-63085: true
    http.502.BadGateway:
      description: Bad Gateway
      content:
        '*/*':
          schema:
            $ref: '#/components/schemas/com.pingidentity.ApiErrorResponse'
    http.403.Forbidden.P14C63085.DOCS8830:
      description: 'Forbidden - Note: This may occur if the environment doesn''t exist. Check for environment existence with GET /environments/{environmentID} first. - Note: This may be due to eventual consistency if the environment was recently created. Try again after a short delay.'
      content:
        '*/*':
          schema:
            $ref: '#/components/schemas/com.pingidentity.ApiErrorResponse.403'
      x-pingone-p14c-63085: true
      x-pingone-docs-8830: true
    http.400.BadRequest:
      description: Bad Request
      content:
        '*/*':
          schema:
            $ref: '#/components/schemas/com.pingidentity.ApiErrorResponse.400'
    http.503.ServiceUnavailable:
      description: Service Unavailable
      headers:
        Retry-After:
          $ref: '#/components/headers/http.RetryAfter'
      content:
        '*/*':
          schema:
            $ref: '#/components/schemas/com.pingidentity.ApiErrorResponse'
    http.401.Unauthorized:
      description: Unauthorized
      content:
        '*/*':
          schema:
            $ref: '#/components/schemas/com.pingidentity.ApiErrorResponse.401'
    http.500.InternalServerError:
      description: Internal Server Error
      content:
        '*/*':
          schema:
            $ref: '#/components/schemas/com.pingidentity.ApiErrorResponse.500'
    http.429.TooManyRequests:
      description: Too Many Requests
      headers:
        Retry-After:
          $ref: '#/components/headers/http.RetryAfter'
      content:
        '*/*':
          schema:
            $ref: '#/components/schemas/com.pingidentity.ApiErrorResponse.429'
  schemas:
    com.pingidentity.ApiErrorResponse:
      type: object
      properties:
        code:
          type: string
          title: General Error Code
        details:
          type: array
          items:
            $ref: '#/components/schemas/com.pingidentity.ErrorDetail'
          title: General Error Details
        id:
          type: string
          title: General Error Id
        message:
          type: string
          title: General Error Message
      title: General Error
    com.pingidentity.ApiErrorResponse.400:
      $schema: http://json-schema.org/draft/2020-12/schema#
      type: object
      properties:
        id:
          type: string
          format: uuid
          minLength: 1
          title: Bad Request Error Id
        code:
          type: string
          enum:
          - INVALID_DATA
          - INVALID_REQUEST
          - REQUEST_FAILED
          minLength: 1
          title: Bad Request Error Code
        message:
          type: string
          minLength: 1
          title: Bad Request Error Message
        details:
          type: array
          items:
            type: object
            properties:
              code:
                type: string
                enum:
                - ACCOUNT_NOT_USABLE
                - CONSTRAINT_VIOLATION
                - EMPTY_VALUE
                - INVALID_FILTER
                - INVALID_OTP
                - INVALID_PARAMETER
                - INVALID_VALUE
                - MFA_AUTH_METHODS_CONFLICT
                - NO_PASSWORD
                - OUT_OF_RANGE
                - REQUIRED_VALUE
                - SIZE_LIMIT_EXCEEDED
                - UNIQUENESS_VIOLATION
                minLength: 1
                title: Bad Request Error Detail Code
              message:
                type: string
                minLength: 1
                title: Bad Request Error Detail Message
              innerError:
                type: object
                properties:
                  allowedPattern:
                    type: string
                    title: Bad Request Error Detail Inner Error Allowed Pattern
                  allowedValues:
                    type: array
                    items:
                      type: string
                      title: Bad Request Error Detail Inner Error Allowed Value
                    title: Bad Request Error Detail Inner Error Allowed Values
                  claim:
                    type: string
                    title: Bad Request Error Detail Inner Error Claim
                  existingId:
                    type: string
                    format: uuid
                    title: Bad Request Error Detail Inner Error Existing Id
                  maximumValue:
                    type: number
                    title: Bad Request Error Detail Inner Error Maximum Value
                  quotaLimit:
                    type: number
                    title: Bad Request Error Detail Inner Error Quota Limit
                  quotaResetTime:
                    type: string
                    format: date-time
                    title: Bad Request Error Detail Inner Error Quota Reset Time
                  rangeMaximumValue:
                    type: number
                    title: Bad Request Error Detail Inner Error Range Maximum Value
                  rangeMinimumValue:
                    type: number
                    title: Bad Request Error Detail Inner Error Range Minimum Value
                  supportedAttributes:
                    type: array
                    items:
                      type: string
                      title: Bad Request Error Detail Inner Error Supported Attribute
                    title: Bad Request Error Detail Inner Error Supported Attributes
                  supportedOperators:
                    type: array
                    items:
                      type: string
                      title: Bad Request Error Detail Inner Error Supported Operator
                    title: Bad Request Error Detail Inner Error Supported Operators
                additionalProperties: true
                title: Bad Request Error Detail Inner Error
              target:
                type: string
                title: Bad Request Error Detail Target
            required:
            - code
            - message
            title: Bad Request Error Detail
          title: Bad Request Error Details
      required:
      - id
      - code
      - message
      title: Bad Request Error
    com.pingidentity.ErrorDetail:
      type: object
      properties:
        code:
          type: string
          title: General Error Detail Code
        innerError:
          type: object
          additionalProperties:
            type: object
            title: General Error Detail Inner Error Additional Properties
          title: General Error Detail Inner Error
        message:
          type: string
          title: General Error Detail Message
        target:
          type: string
          title: General Error Detail Target
      title: General Error Detail
    com.pingidentity.ApiErrorResponse.403:
      $schema: http://json-schema.org/draft/2020-12/schema#
      type: object
      properties:
        code:
          type: string
          enum:
          - ACCESS_FAILED
          minLength: 1
          title: Forbidden Error Code
        message:
          type: string
          minLength: 1
          title: Forbidden Error Message
        details:
          type: array
          items:
            type: object
            properties:
              code:
                type: string
                enum:
                - INSUFFICIENT_PERMISSIONS
                - LICENSE_EXCEEDED
                minLength: 1
                title: Forbidden Error Detail Code
              message:
                type: string
                minLength: 1
                title: Forbidden Error Detail Message
              innerError:
                type: object
                properties:
                  quotaLimit:
                    type: number
                    title: Forbidden Error Detail Inner Error Quota Limit
                additionalProperties: true
                title: Forbidden Error Detail Inner Error
              target:
                type: string
                title: Forbidden Error Detail Target
            required:
            - code
            - message
            title: Forbidden Error Detail
          title: Forbidden Error Details
        id:
          type: string
          format: uuid
          title: Forbidden Error Id
      required:
      - code
      - message
      title: Forbidden Error
    com.pingidentity.pingone.configmanagement.snapshots.data.SnapshotRequest:
      required:
      - baseResourceURL
      type: object
      properties:
        baseResourceURL:
          type: string
          minLength: 1
          title: Snapshot Request Base Resource URL
      title: Snapshot Request
    com.pingidentity.pingone.configmanagement.snapshots.data.SnapshotsVersionsResponse:
      type: object
      properties:
        _embedded:
          type: object
          properties:
            versions:
              type: array
              items:
                allOf:
                - $ref: '#/components/schemas/com.pingidentity.pingone.configmanagement.snapshots.data.SnapshotView'
                title: Snapshot Version Collection Response _embedded Version
              title: Snapshot Version Collection Response _embedded Versions
          title: Snapshot Version Collection Response _embedded
        _links:
          type: object
          properties:
            self:
              $ref: '#/components/schemas/com.pingidentity.api.response.Link'
          additionalProperties:
            $ref: '#/components/schemas/com.pingidentity.api.response.Link'
          title: Snapshot Version Collection Response _links
        count:
          type: integer
          format: int32
          title: Snapshot Version Collection Response Count
        size:
          type: integer
          format: int32
          title: Snapshot Version Collection Response Size
      title: Snapshot Version Collection Response
    com.pingidentity.api.response.Link:
      type: object
      properties:
        href:
          type: string
          format: uri
          minLength: 1
          title: JSON HAL Link Href
        name:
          type: string
          title: JSON HAL Link Name
        profile:
          type: string
          format: uri
          title: JSON HAL Link Profile
        title:
          type: string
          format: uri
          title: JSON HAL Link Title
        type:
          type: string
          title: JSON HAL Link Type
      required:
      - href
      readOnly: true
      title: JSON HAL Link
    com.pingidentity.api.Relationship.PingOne.RO:
      type: object
      properties:
        id:
          type: string
          format: uuid
          readOnly: true
          minLength: 1
          title: Resource Relationship Read-Only Id
      required:
      - id
      title: Resource Relationship Read-Only
    com.pingidentity.pingone.configmanagement.snapshots.data.ResourceInformation:
      type: object
      properties:
        category:
          type: string
          title: Snapshot Resource Information Category
        id:
          type: string
          title: Snapshot Resource Information Id
        name:
          type: string
          title: Snapshot Resource Information Name
      title: Snapshot Resource Information
    com.pingidentity.pingone.configmanagement.snapshots.data.SnapshotView:
      type: object
      properties:
        _embedded:
          type: object
          additionalProperties:
            type: object
            readOnly: true
            title: Snapshot View _embedded Additional Properties
          readOnly: true
          title: Snapshot View _embedded
        _links:
          type: object
          properties:
            self:
              $ref: '#/components/schemas/com.pingidentity.api.response.Link'
          additionalProperties:
            $ref: '#/components/schemas/com.pingidentity.api.response.Link'
          readOnly: true
          title: Snapshot View _links
        completedAt:
          type: string
          format: date-time
          title: Snapshot View Completed At
        configuration:
          type: string
          title: Snapshot View Configuration
        createdAt:
          type: string
          format: date-time
          title: Snapshot View Created At
        environment:
          $ref: '#/components/schemas/com.pingidentity.api.Relationship.PingOne.RO'
        error:
          type: string
          title: Snapshot View Error
        errorCode:
          type: integer
          format: int32
          title: Snapshot View Error Code
        id:
          type: string
          format: uuid
          readOnly: true
          title: Snapshot View Id
        importMetadata:
          type: object
          additionalProperties:
            type: object
            title: Snapshot View Import Metadata Additional Properties
          title: Snapshot View Import Metadata
        referencedResources:
          uniqueItems: true
          type: array
          items:
            type: string
            title: Snapshot View Referenced Resource
          title: Snapshot View Referenced Resources
        resource:
          $ref: '#/components/schemas/com.pingidentity.pingone.configmanagement.snapshots.data.ResourceInformation'
        resourceUrl:
          type: string
          title: Snapshot View Resource Url
        snapshotId:
          type: string
          format: uuid
          title: Snapshot View Snapshot Id
        startedAt:
          type: string
          format: date-time
          title: Snapshot View Started At
        status:
          type: string
          enum:
          - COMPLETE
          - ERROR
          - IN_PROGRESS
          - WAITING
          title: Snapshot View Status
        versionedAt:
          type: string
          format: date-time
          title: Snapshot View Versioned At
      title: Snapshot View
    com.pingidentity.ApiErrorResponse.500:
      $schema: http://json-schema.org/draft/2020-12/schema#
      type: object
      properties:
        id:
          type: string
          format: uuid
          minLength: 1
          title: Internal Server Error Id
        code:
          type: string
          enum:
          - UNEXPECTED_ERROR
          minLength: 1
          title: Internal Server Error Code
        message:
          type: string
          minLength: 1
          title: Internal Server Error Message
        details:
          type: array
          items:
            type: object
            properties:
              code:
                type: string
                minLength: 1
                title: Internal Server Error Detail Code
              message:
                type: string
                minLength: 1
                title: Internal Server Error Detail Message
              innerError:
                type: object
                additionalProperties: true
                title: Internal Server Error Detail Inner Error
              target:
                type: string
                title: Internal Server Error Detail Target
            required:
            - code
            - message
            title: Internal Server Error Detail
          title: Internal Server Error Details
      required:
      - id
      - code
      - message
      title: Internal Server Error
    com.pingidentity.ApiErrorResponse.401:
      $schema: http://json-schema.org/draft/2020-12/schema#
      type: object
      properties:
        id:
          type: string
          format: uuid
          minLength: 1
          title: Unauthorized Error Id
        code:
          type: string
          enum:
          - ACCESS_FAILED
          minLength: 1
          title: Unauthorized Error Code
        message:
          type: string
          minLength: 1
          title: Unauthorized Error Message
        details:
          type: array
          items:
            type: object
            properties:
              code:
                type: string
                enum:
                - INSUFFICIENT_PERMISSIONS
                - INVALID_TOKEN
                minLength: 1
                title: Unauthorized Error Detail Code
              message:
                type: string
                minLength: 1
                title: Unauthorized Error Detail Message
              innerError:
                type: object
                additionalProperties: true
                title: Unauthorized Error Detail Inner Error
              target:
                type: string
                title: Unauthorized Error Detail Target
            required:
            - code
            - message
            title: Unauthorized Error Detail
          title: Unauthorized Error Details
      required:
      - id
      - code
      - message
      title: Unauthorized Error
    com.pingidentity.ApiErrorResponse.429:
      $schema: http://json-schema.org/draft/2020-12/schema#
      type: object
      properties:
        code:
          type: string
          enum:
          - REQUEST_LIMITED
          minLength: 1
          title: Too Many Requests Error Code
        message:
          type: string
          minLength: 1
          title: Too Many Requests Error Message
        details:
          type: array
          items:
            type: object
            properties:
              code:
                type: string
                enum:
                - LIMIT_EXCEEDED
                - QUOTA_EXCEEDED
                minLength: 1
                title: Too Many Requests Error Detail Code
              message:
                type: string
                minLength: 1
                title: Too Many Requests Error Detail Message
              innerError:
                type: object
                properties:
                  quotaLimit:
                    type: number
                    title: Too Many Requests Error Detail Inner Error Quota Limit
                  quotaResetTime:
                    type: string
                    format: date-time
                    title: Too Many Requests Error Detail Inner Error Quota Reset Time
                  retryAfter:
                    type: string
                    format: date-time
                    title: Too Many Requests Error Detail Inner Error Retry After
                additionalProperties: true
                title: Too Many Requests Error Detail Inner Error
              target:
                type: string
                title: Too Many Requests Error Detail Target
            required:
            - code
            - message
            title: Too Many Requests Error Detail
          title: Too Many Requests Error Details
        id:
          type: string
          format: uuid
          title: Too Many Requests Error Id
      required:
      - code
      - message
      title: Too Many Requests Error
  headers:
    http.RetryAfter:
      schema:
        oneOf:
        - type: integer
          format: int32
        - type: string
        title: Retry-After Header
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
    oauth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: /as/token
          scopes: {}
        authorizationCode:
          authorizationUrl: /as/authorize
          tokenUrl: /as/token
          refreshUrl: /as/token
          scopes: {}
x-permissions:
- name: davinci:create:applications
- name: davinci:create:connections
- name: davinci:create:constructs
- name: davinci:create:dvFlows
- name: davinci:create:flowPolicies
- name: davinci:delete:applications
- name: davinci:delete:connections
- name: davinci:delete:constructs
- name: davinci:delete:dvFlows
- name: davinci:delete:flowPolicies
- name: davinci:delete:flowVersions
- name: davinci:read:applications
- name: davinci:read:connections
- name: davinci:read:connectors
- name: davinci:read:constructs
- name: davinci:read:dvFlows
- name: davinci:read:flowPolicies
- name: davinci:read:flowVersions
- name: davinci:update:applications
- name: davinci:update:connections
- name: davinci:update:constructs
- name: davinci:update:dvFlows
- name: davinci:update:flowPolicies
- name: davinci:update:flowVersions
- name: flowPolicies:read:flowPolicy
- name: orgmgt:create:environment
- name: orgmgt:delete:environment
- name: orgmgt:read:environment
- name: orgmgt:update:environment
- name: promotion:create:snapshot
- name: promotion:read:snapshot