XSKY dp-sites API

DpSiteController API /dp-sites/

Operations 8

GET /dp-sites/ #
POST /dp-sites/ #
GET /dp-sites/{site_id} #
DELETE /dp-sites/{site_id} #
PATCH /dp-sites/{site_id} #
GET /dp-sites/{site_id}/backup-block-snapshots #
GET /dp-sites/{site_id}/backup-block-volumes #
GET /dp-sites/{site_id}/backup-clusters #

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/xsky-dp-sites-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

xsky-dp-sites-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: XMS is the controller of distributed storage system
  version: SDS_4.2.000.0.200302
  title: XMS access-paths Dp Sites API
  contact: {}
  license:
    name: Commercial
servers:
- url: /v1
tags:
- name: dp-sites
  description: 'DpSiteController API /dp-sites/

    '
paths:
  /dp-sites/:
    get:
      tags:
      - dp-sites
      description: List data protection sites
      operationId: ListDpSites
      parameters:
      - name: limit
        in: query
        description: paging param
        required: false
        x-exportParamName: Limit
        schema:
          type: integer
          format: int64
      - name: offset
        in: query
        description: paging param
        required: false
        x-exportParamName: Offset
        schema:
          type: integer
          format: int64
      - name: q
        in: query
        description: query param of search
        required: false
        x-exportParamName: Q
        schema:
          type: string
      - name: sort
        in: query
        description: sort param of search
        required: false
        x-exportParamName: Sort
        schema:
          type: string
      - name: protection_type
        in: query
        description: protection type
        required: false
        x-exportParamName: ProtectionType
        schema:
          type: string
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DpSitesResp'
        500:
          description: InternalServerError
      security:
      - tokenInQuery: []
      - tokenInHeader: []
    post:
      tags:
      - dp-sites
      description: Create a data protection site
      operationId: CreateDpSite
      responses:
        201:
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DpSiteResp'
        400:
          description: BadRequest
        409:
          description: Conflict
        500:
          description: InternalServerError
      security:
      - tokenInQuery: []
      - tokenInHeader: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DpSiteCreateReq'
        description: dp site info
        required: true
  /dp-sites/{site_id}:
    get:
      tags:
      - dp-sites
      description: Get data protection site
      operationId: GetDpSite
      parameters:
      - name: site_id
        in: path
        description: protection site id
        required: true
        x-exportParamName: SiteId
        schema:
          type: integer
          format: int64
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DpSiteResp'
        500:
          description: InternalServerError
      security:
      - tokenInQuery: []
      - tokenInHeader: []
    delete:
      tags:
      - dp-sites
      description: Delete data protection site
      operationId: DeleteDpSite
      parameters:
      - name: site_id
        in: path
        description: dp site id
        required: true
        x-exportParamName: SiteId
        schema:
          type: integer
          format: int64
      responses:
        204:
          description: No Content
        404:
          description: NotFound
        409:
          description: Conflict
        500:
          description: InternalServerError
      security:
      - tokenInHeader: []
      - tokenInQuery: []
    patch:
      tags:
      - dp-sites
      description: Update a data protection site
      operationId: UpdateDpSite
      parameters:
      - name: site_id
        in: path
        description: dp site id
        required: true
        x-exportParamName: SiteId
        schema:
          type: integer
          format: int64
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DpSiteResp'
        400:
          description: BadRequest
        404:
          description: NotFound
        409:
          description: Conflict
        500:
          description: InternalServerError
      security:
      - tokenInQuery: []
      - tokenInHeader: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DpSiteUpdateReq'
        description: dp site info
        required: true
  /dp-sites/{site_id}/backup-block-snapshots:
    get:
      tags:
      - dp-sites
      description: List snapshots of a volume stored on a dp site
      operationId: GetBackupBlockSnapshots
      parameters:
      - name: site_id
        in: path
        description: dp site id
        required: true
        x-exportParamName: SiteId
        schema:
          type: integer
          format: int64
      - name: dp_gateway_id
        in: query
        description: the dp gateway to execute the query
        required: true
        x-exportParamName: DpGatewayId
        schema:
          type: integer
          format: int64
      - name: cluster_fs_id
        in: query
        description: cluster fs id
        required: true
        x-exportParamName: ClusterFsId
        schema:
          type: string
      - name: block_volume_name
        in: query
        description: block volume name
        required: true
        x-exportParamName: BlockVolumeName
        schema:
          type: string
      - name: after
        in: query
        description: continuation token
        required: false
        x-exportParamName: After
        schema:
          type: string
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DpBackupBlockSnapshotsResp'
        400:
          description: BadRequest
        403:
          description: Forbidden
        404:
          description: NotFound
        500:
          description: InternalServerError
      security:
      - tokenInQuery: []
      - tokenInHeader: []
  /dp-sites/{site_id}/backup-block-volumes:
    get:
      tags:
      - dp-sites
      description: List volumes of a cluster stored on a dp site
      operationId: GetBackupBlockVolumes
      parameters:
      - name: site_id
        in: path
        description: dp site id
        required: true
        x-exportParamName: SiteId
        schema:
          type: integer
          format: int64
      - name: dp_gateway_id
        in: query
        description: the dp gateway to execute the query
        required: true
        x-exportParamName: DpGatewayId
        schema:
          type: integer
          format: int64
      - name: cluster_fs_id
        in: query
        description: cluster fs id
        required: true
        x-exportParamName: ClusterFsId
        schema:
          type: string
      - name: after
        in: query
        description: continuation token
        required: false
        x-exportParamName: After
        schema:
          type: string
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DpBackupBlockVolumesResp'
        400:
          description: BadRequest
        403:
          description: Forbidden
        404:
          description: NotFound
        500:
          description: InternalServerError
      security:
      - tokenInHeader: []
      - tokenInQuery: []
  /dp-sites/{site_id}/backup-clusters:
    get:
      tags:
      - dp-sites
      description: List clusters stored on a dp site
      operationId: GetBackupClusters
      parameters:
      - name: site_id
        in: path
        description: dp site id
        required: true
        x-exportParamName: SiteId
        schema:
          type: integer
          format: int64
      - name: dp_gateway_id
        in: query
        description: the dp gateway to execute the query
        required: true
        x-exportParamName: DpGatewayId
        schema:
          type: integer
          format: int64
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DpBackupClustersResp'
        400:
          description: BadRequest
        403:
          description: Forbidden
        404:
          description: NotFound
        500:
          description: InternalServerError
      security:
      - tokenInQuery: []
      - tokenInHeader: []
components:
  schemas:
    DpSiteUpdateReq:
      type: object
      properties:
        dp_site:
          $ref: '#/components/schemas/DpSiteUpdateReq_Site'
      title: DpSiteUpdateReq
      example:
        dp_site:
          name: name
          config:
            block_snapshot_replication:
              remote_gateway: remote_gateway
            block_snapshot_backup:
              bucket: bucket
              secret_key: secret_key
              mount_path: mount_path
              password: password
              port: 0
              access_key: access_key
              region: region
              app_id: app_id
              username: username
            block_volume_replication:
              destination: destination
              local_gateways:
              - local_gateways
              - local_gateways
              remote_gateways:
              - remote_gateways
              - remote_gateways
    DpSiteUpdateReq_Site:
      type: object
      properties:
        config:
          description: dp site config
          $ref: '#/components/schemas/DpSiteConfig'
        name:
          type: string
          description: dp site name
      title: DpSiteUpdateReq_Site
      example:
        name: name
        config:
          block_snapshot_replication:
            remote_gateway: remote_gateway
          block_snapshot_backup:
            bucket: bucket
            secret_key: secret_key
            mount_path: mount_path
            password: password
            port: 0
            access_key: access_key
            region: region
            app_id: app_id
            username: username
          block_volume_replication:
            destination: destination
            local_gateways:
            - local_gateways
            - local_gateways
            remote_gateways:
            - remote_gateways
            - remote_gateways
    DpBackupBlockVolumesResp:
      type: object
      required:
      - backup_block_volumes
      properties:
        backup_block_volumes:
          type: array
          description: block volumes
          items:
            $ref: '#/components/schemas/DpBackupBlockVolume'
      title: DpBackupBlockVolumesResp
      example:
        backup_block_volumes:
        - size: 5
          format: 1
          name: name
          volume_name: volume_name
        - size: 5
          format: 1
          name: name
          volume_name: volume_name
    DpSiteCreateReq_Site:
      type: object
      required:
      - config
      - name
      - platform
      - protection_type
      - service
      properties:
        address:
          type: string
          description: site address
        config:
          description: extra config
          $ref: '#/components/schemas/DpSiteConfig'
        crypto_key_id:
          type: integer
          format: int64
          description: crypto key
        name:
          type: string
          description: site name
        platform:
          type: string
          description: platform of site
        protection_type:
          type: string
          description: protection type
        remote_cluster_id:
          type: integer
          format: int64
          description: remote cluster
        service:
          type: string
          description: service of site
      title: DpSiteCreateReq_Site
      example:
        address: address
        remote_cluster_id: 6
        service: service
        name: name
        protection_type: protection_type
        config:
          block_snapshot_replication:
            remote_gateway: remote_gateway
          block_snapshot_backup:
            bucket: bucket
            secret_key: secret_key
            mount_path: mount_path
            password: password
            port: 0
            access_key: access_key
            region: region
            app_id: app_id
            username: username
          block_volume_replication:
            destination: destination
            local_gateways:
            - local_gateways
            - local_gateways
            remote_gateways:
            - remote_gateways
            - remote_gateways
        crypto_key_id: 0
        platform: platform
    CryptoKey_Nestview:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
      title: CryptoKey_Nestview
      example:
        name: name
        id: 6
    DpBackupCluster:
      type: object
      properties:
        fs_id:
          type: string
        name:
          type: string
      title: DpBackupCluster
      description: DpBackupCluster is a cluster stored on a site
      example:
        name: name
        fs_id: fs_id
    SnapshotReplicationConfig:
      type: object
      properties:
        remote_gateway:
          type: string
      title: SnapshotReplicationConfig
      description: SnapshotReplicationConfig contains config for snapshot replication
      example:
        remote_gateway: remote_gateway
    DpBackupBlockSnapshot:
      type: object
      properties:
        backup_type:
          type: string
        create:
          type: string
          format: date-time
        size:
          type: integer
          format: int64
        volume_size:
          type: integer
          format: int64
      title: DpBackupBlockSnapshot
      description: DpBackupBlockSnapshot is a block snapshot stored on a site
      example:
        size: 0
        backup_type: backup_type
        create: '2000-01-23T04:56:07.000+00:00'
        volume_size: 6
    DpBackupBlockVolume:
      type: object
      properties:
        format:
          type: integer
          format: int64
        name:
          type: string
        size:
          type: integer
          format: int64
        volume_name:
          type: string
      title: DpBackupBlockVolume
      description: DpBackupBlockVolume is a block volume stored on a site
      example:
        size: 5
        format: 1
        name: name
        volume_name: volume_name
    DpSiteConfig:
      type: object
      properties:
        block_snapshot_backup:
          $ref: '#/components/schemas/SnapshotBackupConfig'
        block_snapshot_replication:
          $ref: '#/components/schemas/SnapshotReplicationConfig'
        block_volume_replication:
          $ref: '#/components/schemas/BlockReplicationConfig'
      title: DpSiteConfig
      description: DpSiteConfig contains config of different sites in dpg
      example:
        block_snapshot_replication:
          remote_gateway: remote_gateway
        block_snapshot_backup:
          bucket: bucket
          secret_key: secret_key
          mount_path: mount_path
          password: password
          port: 0
          access_key: access_key
          region: region
          app_id: app_id
          username: username
        block_volume_replication:
          destination: destination
          local_gateways:
          - local_gateways
          - local_gateways
          remote_gateways:
          - remote_gateways
          - remote_gateways
    RemoteCluster_Nestview:
      type: object
      properties:
        fs_id:
          type: string
        id:
          type: integer
          format: int64
        name:
          type: string
        url:
          type: string
      title: RemoteCluster_Nestview
      example:
        name: name
        id: 2
        fs_id: fs_id
        url: url
    DpSiteResp:
      type: object
      required:
      - dp_site
      properties:
        dp_site:
          description: data protection site
          $ref: '#/components/schemas/DpSite'
      title: DpSiteResp
      example:
        dp_site:
          crypto_key:
            name: name
            id: 6
          address: address
          remote_cluster:
            name: name
            id: 2
            fs_id: fs_id
            url: url
          service: service
          name: name
          create: '2000-01-23T04:56:07.000+00:00'
          update: '2000-01-23T04:56:07.000+00:00'
          protection_type: protection_type
          id: 1
          config:
            block_snapshot_replication:
              remote_gateway: remote_gateway
            block_snapshot_backup:
              bucket: bucket
              secret_key: secret_key
              mount_path: mount_path
              password: password
              port: 0
              access_key: access_key
              region: region
              app_id: app_id
              username: username
            block_volume_replication:
              destination: destination
              local_gateways:
              - local_gateways
              - local_gateways
              remote_gateways:
              - remote_gateways
              - remote_gateways
          platform: platform
          status: status
    DpBackupClustersResp:
      type: object
      required:
      - backup_clusters
      properties:
        backup_clusters:
          type: array
          description: clusters
          items:
            $ref: '#/components/schemas/DpBackupCluster'
      title: DpBackupClustersResp
      example:
        backup_clusters:
        - name: name
          fs_id: fs_id
        - name: name
          fs_id: fs_id
    BlockReplicationConfig:
      type: object
      properties:
        destination:
          type: string
        local_gateways:
          type: array
          items:
            type: string
        remote_gateways:
          type: array
          items:
            type: string
      title: BlockReplicationConfig
      description: BlockReplicationConfig contains config for block replication
      example:
        destination: destination
        local_gateways:
        - local_gateways
        - local_gateways
        remote_gateways:
        - remote_gateways
        - remote_gateways
    DpBackupBlockSnapshotsResp:
      type: object
      required:
      - backup_block_snapshots
      properties:
        backup_block_snapshots:
          type: array
          description: block snapshots
          items:
            $ref: '#/components/schemas/DpBackupBlockSnapshot'
      title: DpBackupBlockSnapshotsResp
      example:
        backup_block_snapshots:
        - size: 0
          backup_type: backup_type
          create: '2000-01-23T04:56:07.000+00:00'
          volume_size: 6
        - size: 0
          backup_type: backup_type
          create: '2000-01-23T04:56:07.000+00:00'
          volume_size: 6
    DpSite:
      type: object
      properties:
        address:
          type: string
        config:
          $ref: '#/components/schemas/DpSiteConfig'
        create:
          type: string
          format: date-time
        crypto_key:
          $ref: '#/components/schemas/CryptoKey_Nestview'
        id:
          type: integer
          format: int64
        name:
          type: string
        platform:
          type: string
        protection_type:
          type: string
        remote_cluster:
          $ref: '#/components/schemas/RemoteCluster_Nestview'
        service:
          type: string
        status:
          type: string
        update:
          type: string
          format: date-time
      title: DpSite
      description: DpSite is a site to storage data protection data
      example:
        crypto_key:
          name: name
          id: 6
        address: address
        remote_cluster:
          name: name
          id: 2
          fs_id: fs_id
          url: url
        service: service
        name: name
        create: '2000-01-23T04:56:07.000+00:00'
        update: '2000-01-23T04:56:07.000+00:00'
        protection_type: protection_type
        id: 1
        config:
          block_snapshot_replication:
            remote_gateway: remote_gateway
          block_snapshot_backup:
            bucket: bucket
            secret_key: secret_key
            mount_path: mount_path
            password: password
            port: 0
            access_key: access_key
            region: region
            app_id: app_id
            username: username
          block_volume_replication:
            destination: destination
            local_gateways:
            - local_gateways
            - local_gateways
            remote_gateways:
            - remote_gateways
            - remote_gateways
        platform: platform
        status: status
    DpSiteCreateReq:
      type: object
      properties:
        dp_site:
          $ref: '#/components/schemas/DpSiteCreateReq_Site'
      title: DpSiteCreateReq
      example:
        dp_site:
          address: address
          remote_cluster_id: 6
          service: service
          name: name
          protection_type: protection_type
          config:
            block_snapshot_replication:
              remote_gateway: remote_gateway
            block_snapshot_backup:
              bucket: bucket
              secret_key: secret_key
              mount_path: mount_path
              password: password
              port: 0
              access_key: access_key
              region: region
              app_id: app_id
              username: username
            block_volume_replication:
              destination: destination
              local_gateways:
              - local_gateways
              - local_gateways
              remote_gateways:
              - remote_gateways
              - remote_gateways
          crypto_key_id: 0
          platform: platform
    SnapshotBackupConfig:
      type: object
      properties:
        access_key:
          type: string
        app_id:
          type: string
        bucket:
          type: string
        mount_path:
          type: string
        password:
          type: string
        port:
          type: integer
          format: int64
        region:
          type: string
        secret_key:
          type: string
        username:
          type: string
      title: SnapshotBackupConfig
      description: SnapshotBackupConfig contains config for snapshot backup
      example:
        bucket: bucket
        secret_key: secret_key
        mount_path: mount_path
        password: password
        port: 0
        access_key: access_key
        region: region
        app_id: app_id
        username: username
    DpSitesResp:
      type: object
      required:
      - dp_sites
      properties:
        dp_sites:
          type: array
          description: data protection sites
          items:
            $ref: '#/components/schemas/DpSite'
      title: DpSitesResp
      example:
        dp_sites:
        - crypto_key:
            name: name
            id: 6
          address: address
          remote_cluster:
            name: name
            id: 2
            fs_id: fs_id
            url: url
          service: service
          name: name
          create: '2000-01-23T04:56:07.000+00:00'
          update: '2000-01-23T04:56:07.000+00:00'
          protection_type: protection_type
          id: 1
          config:
            block_snapshot_replication:
              remote_gateway: remote_gateway
            block_snapshot_backup:
              bucket: bucket
              secret_key: secret_key
              mount_path: mount_path
              password: password
              port: 0
              access_key: access_key
              region: region
              app_id: app_id
              username: username
            block_volume_replication:
              destination: destination
              local_gateways:
              - local_gateways
              - local_gateways
              remote_gateways:
              - remote_gateways
              - remote_gateways
          platform: platform
          status: status
        - crypto_key:
            name: name
            id: 6
          address: address
          remote_cluster:
            name: name
            id: 2
            fs_id: fs_id
            url: url
          service: service
          name: name
          create: '2000-01-23T04:56:07.000+00:00'
          update: '2000-01-23T04:56:07.000+00:00'
          protection_type: protection_type
          id: 1
          config:
            block_snapshot_replication:
              remote_gateway: remote_gateway
            block_snapshot_backup:
              bucket: bucket
              secret_key: secret_key
              mount_path: mount_path
              password: password
              port: 0
              access_key: access_key
              region: region
              app_id: app_id
              username: username
            block_volume_replication:
              destination: destination
              local_gateways:
              - local_gateways
              - local_gateways
              remote_gateways:
              - remote_gateways
              - remote_gateways
          platform: platform
          status: status
  securitySchemes:
    tokenInHeader:
      description: auth by token
      type: apiKey
      name: Xms-Auth-Token
      in: header
    tokenInQuery:
      description: auth by token
      type: apiKey
      name: token
      in: query