BurstIQ System Wallet APIs API

System wallets are used for non-humans to perform functions in the platform; ie custodian, etc

OpenAPI Specification

burstiq-system-wallet-apis-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: LifeGraph APIs BlastAI APIs System Wallet APIs API
  description: LifeGraph API descriptions
  license:
    name: BurstIQ, Inc.
    url: https://www.burstiq.com
  version: 2.42.0
servers:
- url: https://api.burstiq.com
  description: Generated server url
tags:
- name: System Wallet APIs
  description: System wallets are used for non-humans to perform functions in the platform; ie custodian, etc
paths:
  /api/metadata/system/wallet/{id}:
    get:
      tags:
      - System Wallet APIs
      description: <b>Allowed user roles:</b><br/><ul><li>sdzAdmin</li><li>sdzReadOnly</li><li>sdzUser</li></ul><br/><br/>get the system's wallet in the secure data zone
      operationId: getSystemWalletById
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SystemWalletResponse'
    put:
      tags:
      - System Wallet APIs
      description: <b>Allowed user roles:</b><br/><ul><li>sdzAdmin</li><li>sdzGovernance</li></ul><br/><br/>put (update) the system's wallet into the secure data zone
      operationId: putUpdateSystemWallet
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SystemWalletUpdateRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SystemWalletResponse'
    delete:
      tags:
      - System Wallet APIs
      description: <b>Allowed user roles:</b><br/><ul><li>sdzAdmin</li><li>sdzGovernance</li></ul><br/><br/>delete the system's wallet in the secure data zone
      operationId: deleteSystemWallet
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
  /api/metadata/system/wallet:
    get:
      tags:
      - System Wallet APIs
      description: <b>Allowed user roles:</b><br/><ul><li>sdzAdmin</li><li>sdzReadOnly</li><li>sdzUser</li></ul><br/><br/>query system wallets from the secure data zone
      operationId: getQuerySystemWallets
      parameters:
      - name: description
        in: query
        required: false
        schema:
          type: string
      - name: type
        in: query
        required: false
        schema:
          type: string
          enum:
          - CUSTODIAN_OWNER
          - CUSTODIAN_LIMITED_OWNER
          - TENANT_OWNER
          - TENANT_LIMITED_OWNER
      - name: orderBy
        in: query
        required: false
        schema:
          type: array
          items:
            type: string
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          format: int32
      - name: skip
        in: query
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SystemWalletResponse'
    post:
      tags:
      - System Wallet APIs
      description: <b>Allowed user roles:</b><br/><ul><li>sdzAdmin</li><li>sdzGovernance</li></ul><br/><br/>create a system's wallet into the secure data zone
      operationId: postCreateSystemWallet
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SystemWalletCreateRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/SystemWalletResponse'
  /api/metadata/system/wallet/{id}/history:
    get:
      tags:
      - System Wallet APIs
      description: <b>Allowed user roles:</b><br/><ul><li>sdzAdmin</li><li>sdzReadOnly</li><li>sdzUser</li></ul><br/><br/>gets the history of a systemWallet
      operationId: getHistory_3
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SystemWalletResponse'
  /api/metadata/system/wallet/self:
    get:
      tags:
      - System Wallet APIs
      description: <b>Allowed user roles:</b><br/><ul><li>sdzAdmin</li><li>sdzReadOnly</li><li>sdzUser</li></ul><br/><br/>query system wallets from the secure data zone the the user is a member of
      operationId: getUserMemberSystemWallets
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SystemWalletResponse'
  /api/metadata/system/wallet/search:
    get:
      tags:
      - System Wallet APIs
      description: <b>Allowed user roles:</b><br/><ul><li>sdzAdmin</li><li>sdzReadOnly</li><li>sdzUser</li></ul><br/><br/>search for terms
      operationId: getSearch_3
      parameters:
      - name: terms
        in: query
        required: true
        schema:
          type: array
          items:
            type: string
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SystemWallet'
                uniqueItems: true
components:
  schemas:
    SystemWalletCreateRequest:
      type: object
      properties:
        description:
          type: string
          minLength: 1
        type:
          type: string
          enum:
          - CUSTODIAN_OWNER
          - CUSTODIAN_LIMITED_OWNER
          - TENANT_OWNER
          - TENANT_LIMITED_OWNER
        writeUserGroup:
          type: string
          format: uuid
        accessControlUserGroup:
          type: string
          format: uuid
      required:
      - accessControlUserGroup
      - description
      - type
    SystemWalletResponse:
      type: object
      properties:
        id:
          type: string
          format: uuid
        description:
          type: string
          minLength: 1
        type:
          type: string
          enum:
          - CUSTODIAN_OWNER
          - CUSTODIAN_LIMITED_OWNER
          - TENANT_OWNER
          - TENANT_LIMITED_OWNER
        accessControlUserGroup:
          type: string
          format: uuid
        writeUserGroup:
          type: string
          format: uuid
        hash:
          type: string
        author:
          type: string
          format: uuid
        timestamp:
          type: string
          format: date-time
      required:
      - accessControlUserGroup
      - description
      - id
      - type
    SystemWallet:
      type: object
      properties:
        id:
          type: string
          format: uuid
        privateKey:
          type: string
          minLength: 1
        publicKey:
          type: string
          minLength: 1
        type:
          type: string
          enum:
          - CUSTODIAN_OWNER
          - CUSTODIAN_LIMITED_OWNER
          - TENANT_OWNER
          - TENANT_LIMITED_OWNER
        description:
          type: string
          minLength: 1
        writeUserGroup:
          type: string
          format: uuid
        accessControlUserGroup:
          type: string
          format: uuid
      required:
      - accessControlUserGroup
      - description
      - id
      - privateKey
      - publicKey
      - type
    SystemWalletUpdateRequest:
      type: object
      properties:
        description:
          type: string
        type:
          type: string
          enum:
          - CUSTODIAN_OWNER
          - CUSTODIAN_LIMITED_OWNER
          - TENANT_OWNER
          - TENANT_LIMITED_OWNER
        writeUserGroup:
          type: string
          format: uuid
        accessControlUserGroup:
          type: string
          format: uuid
      required:
      - type