Skip to content
openapi-v1.yaml 76.7 KiB
Newer Older
    PalletStorageType:
      type: object
      description: Info about the data structure used for storage.
      example:
          Map:
              hasher: "Twox64Concat"
              key:
                example: "ReferendumIndex"
              value: "ReferendumInfo"
              linked: false
    PalletStorageItemMetadata:
      type: object
      properties:
        name:
          type: string
          example: "ReferendumInfoOf"
          description: The storage item's name (which is the same as the storage item's ID).
        modifier:
          type: string
          example: "Optional"
        type:
          $ref: '#/components/schemas/PalletStorageType'
        fallback:
          type: string
          example: "0x00"
        documentation:
          type: string
          example: " Information concerning any given referendum.\n\n TWOX-NOTE: SAFE as indexes are not under an attacker’s control."
      description: Metadata of a storage item from a FRAME pallet.
    PalletStorageItem:
      type: object
      properties:
        at:
          $ref: '#/components/schemas/BlockIdentifiers'
        pallet:
          type: string
          description: Name of the pallet.
          example: "democracy"
        palletIndex:
          type: string
          description: Index of the pallet for looking up storage.
          example: "15"
        storageItem:
          type: string
          description: Name of the storage item.
          example: "referendumInfoOf"
        key1:
          type: string
          description: Key1 query param. Will not show up in response unless it was passed as part of the URI.
          example: "2"
        key2:
          type: string
          description: Key2 query param. Will not show up in response if not defined in URI.
          example: ""
        value:
          type: object
          description: Value returned by this storage query.
          example:
            Ongoing:
              end: "1612800"
              proposalHash: "0x7de70fc8be782076d0b5772be77153d172a5381c72dd56d3385e25f62abf507e"
              threshold: "Supermajorityapproval"
              delay: "403200"
              tally:
                ayes: "41925212461400000"
                nays: "214535586500000"
                turnout: "34485320658000000"
        metadata:
          $ref: '#/components/schemas/PalletStorageItemMetadata'
    PalletStorage:
      type: object
      properties:
        pallet:
          type: string
          description: Name of the pallet.
          example: "democracy"
        palletIndex:
          type: string
          description: Index of the pallet for looking up storage.
          example: "15"
        items:
          type: array
          items:
            $ref: '#/components/schemas/PalletStorageItemMetadata'
          description: Array containing metadata for each storage entry of the pallet.
    ParaLifecycle:
      type: string
      enum:
      - onboarding
      - parathread
      - parachain
      - upgradingParathread
      - downgradingParachain
      - offboardingParathread
      - offboardingParachain
      description: |
        The possible states of a para, to take into account delayed lifecycle
        changes.
    OnboardingAs:
      type: string
      enum:
      - parachain
      - parathread
      description: |
        This property only shows up when `paraLifecycle=onboarding`. It
        describes if a particular para is onboarding as a `parachain` or a
        `parathread`.
    Para:
      type: object
      properties:
        paraId:
          type: string
          format: unsignedInteger
        paraLifecycle:
          $ref: '#/components/schemas/ParaLifecycle'
        onboardingAs:
          $ref: '#/components/schemas/OnboardingAs'
    Paras:
      type: object
      properties:
        at:
          $ref: '#/components/schemas/BlockIdentifiers'
        paras:
          type: array
          items:
            $ref: '#/components/schemas/Para'
    ParasLeasesCurrent:
      type: object
      properties:
        at:
          $ref: '#/components/schemas/BlockIdentifiers'
        leasePeriodIndex:
          type: string
          format: unsignedInteger
          description: Current lease period index.
        endOfLeasePeriod:
          type: string
          format: unsignedInteger
          description: Last block (number) of the current lease period.
        currentLeaseHolders:
          type: array
          items:
            type: string
            format: unsignedInteger
          description: List of `paraId`s that currently hold a lease.
    WinningData:
      type: object
      properties:
        bid:
          type: object
          properties:
            accountId:
              type: string
            paraId:
              type: string
              format: unsignedInteger
            amount:
              type: string
              format: unsignedInteger
        leaseSet:
          type: array
          items:
            type: string
            format: unsignedInteger
      description: |
        A currently winning bid and the set of lease periods the bid is for. The
        `amount` of the bid is per lease period. The `bid` property will be `null`
        if no bid has been made for the corresponding `leaseSet`.
    ParasAuctionsCurrent:
      type: object
      properties:
        at:
          $ref: '#/components/schemas/BlockIdentifiers'
        beginEnd:
          type: string
          format: unisgnedInteger or $null
          description: |
            Fist block (number) of the auction ending phase. `null` if there is no ongoing
            auction.
        finishEnd:
          type: string
          format: unisgnedInteger or $null
          description: |
            Last block (number) of the auction ending phase. `null` if there is no ongoing
            auction.
        phase:
          type: string
          enum:
          - opening
          - ending
          description: |
            Whether the auction is in the `opening` or `ending` phase. The
            `ending` phase is where the eventual winners are retroactively
            picked from. `null` if there is no ongoing auction.
        auctionIndex:
          type: string
          format: unsignedInteger
          description: |
            The auction number. If there is no current auction this will be the number
            of the previous auction.
        leasePeriods:
          type: array
          items:
            type: string
            format: unsignedInteger
          description: |
            Lease period indexes that may be bid on in this auction. `null` if
            there is no ongoing auction.
        winning:
          type: array
          items:
            $ref: '#/components/schemas/WinningData'
    FundInfo:
      type: object
      properties:
        depositor:
          type: string
        verifier:
          type: string
        deposit:
          type: string
          format: unsignedInteger
        raised:
          type: string
          format: unsignedInteger
        end:
          type: string
          format: unsignedInteger
        cap:
          type: string
          format: unsignedInteger
        lastConstribution:
          type: string
          enum:
          - preEnding
          - ending
        firstSlot:
          type: string
          format: unsignedInteger
        lastSlot:
          type: string
          format: unsignedInteger
        trieIndex:
          type: string
          format: unsignedInteger
    ParasCrowdloans:
      type: object
      properties:
        at:
          $ref: '#/components/schemas/BlockIdentifiers'
        funds:
          type: array
          items:
            type: object
            properties:
              paraId:
                type: string
                format: unsignedInteger
              fundInfo:
                $ref: '#/components/schemas/FundInfo'
          description: |
            List of paras that have crowdloans.
    ParasCrowdloanInfo:
      type: object
      properties:
        at:
          $ref: '#/components/schemas/BlockIdentifiers'
        fundInfo:
          $ref: '#/components/schemas/FundInfo'
        leasePeriods:
          type: array
          items:
            type: string
            format: unsignedInteger
          description: Lease periods the crowdloan can bid on.
    ParasLeaseInfo:
      type: object
      properties:
        at:
          $ref: '#/components/schemas/BlockIdentifiers'
        paraLifecycle:
          $ref: '#/components/schemas/ParaLifecycle'
        onboardingAs:
          $ref: '#/components/schemas/OnboardingAs'
        leases:
          type: array
          items:
            type: object
            properties:
              leasePeriodIndex:
                type: string
                format: unsignedInteger
              account:
                type: string
              deposit:
                type: string
                format: unsignedInteger
          description: |
            List of lease periods for which the `paraId` holds a lease along with
            the deposit held and the associated `accountId`.
  requestBodies:
    Transaction:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Transaction'
      required: true