Kusama Paras API

The paras API from Kusama — 9 operation(s) for paras.

Operations 9

GET /paras [DEPRECATION NOTE: PHASED OUT ENDPOINT IN FAVOR OF CORETIME] List all… #
GET /paras/leases/current [DEPRECATION NOTE: PHASED OUT ENDPOINT IN FAVOR OF CORETIME] Get general… #
GET /paras/auctions/current [DEPRECATION NOTE: PHASED OUT ENDPOINT IN FAVOR OF CORETIME] Get the status of… #
GET /paras/crowdloans [DEPRECATION NOTE: PHASED OUT ENDPOINT IN FAVOR OF CORETIME] List all stored… #
GET /paras/{paraId}/crowdloan-info [DEPRECATION NOTE: PHASED OUT ENDPOINT IN FAVOR OF CORETIME] Get crowdloan… #
GET /paras/{paraId}/lease-info [DEPRECATION NOTE: PHASED OUT ENDPOINT IN FAVOR OF CORETIME] Get current and… #
GET /paras/head/included-candidates [DEPRECATION NOTE: PHASED OUT ENDPOINT IN FAVOR OF CORETIME] Get the heads of… #
GET /paras/head/backed-candidates [DEPRECATION NOTE: PHASED OUT ENDPOINT IN FAVOR OF CORETIME] Get the heads of… #
GET /paras/{number}/inclusion Get relay chain inclusion information for a specific parachain block #

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/kusama-paras-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

kusama-paras-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Substrate API Sidecar Paras API
  description: '> ⚠️ **Deprecation Notice** — `substrate-api-sidecar` is deprecated in favor of

    > `polkadot-rest-api`, a ground-up Rust rewrite

    > built on `subxt` with 1:1 API compatibility (endpoints

    > served under `/v1/`, e.g.'
  contact:
    url: https://github.com/paritytech/substrate-api-sidecar
  license:
    name: GPL-3.0-or-later
    url: https://github.com/paritytech/substrate-api-sidecar/blob/master/LICENSE
  version: 20.14.1
servers:
- url: https://polkadot-public-sidecar.parity-chains.parity.io/
  description: Polkadot Parity public sidecar
- url: https://kusama-public-sidecar.parity-chains.parity.io/
  description: Kusama Parity public sidecar
- url: https://polkadot-asset-hub-public-sidecar.parity-chains.parity.io/
  description: Polkadot Asset Hub Parity public sidecar
- url: https://kusama-asset-hub-public-sidecar.parity-chains.parity.io/
  description: Kusama Asset Hub Parity public sidecar
- url: http://localhost:8080
  description: Localhost
tags:
- name: paras
paths:
  /paras:
    get:
      tags:
      - paras
      summary: '[DEPRECATION NOTE: PHASED OUT ENDPOINT IN FAVOR OF CORETIME] List all…'
      description: Returns all registered parachains and parathreads with lifecycle info.
      parameters:
      - name: at
        in: query
        description: Block at which to retrieve paras list at.
        required: false
        schema:
          type: string
          description: Block identifier, as the block height or block hash.
          format: unsignedInteger or $hex
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Paras'
      operationId: getParas
      x-operation-id-source: derived
  /paras/leases/current:
    get:
      tags:
      - paras
      summary: '[DEPRECATION NOTE: PHASED OUT ENDPOINT IN FAVOR OF CORETIME] Get general…'
      description: Returns an overview of the current lease period, including lease holders.
      parameters:
      - name: at
        in: query
        description: Block at which to retrieve current lease period info at.
        required: false
        schema:
          type: string
          description: Block identifier, as the block height or block hash.
          format: unsignedInteger or $hex
      - name: currentLeaseHolders
        in: query
        description: 'Wether or not to include the `currentLeaseHolders` property. Inclusion

          of the property will likely result in a larger payload and increased

          response time.

          '
        required: false
        schema:
          type: boolean
          default: true
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ParasLeasesCurrent'
      operationId: getParasLeasesCurrent
      x-operation-id-source: derived
  /paras/auctions/current:
    get:
      tags:
      - paras
      summary: '[DEPRECATION NOTE: PHASED OUT ENDPOINT IN FAVOR OF CORETIME] Get the status of…'
      description: 'Returns an overview of the current auction. There is only one auction

        at a time. If there is no auction most fields will be `null`. If the current

        auction phase is in `vrfDelay` and you are looking to retrieve the latest winning

        bids, it is advised to query one block before `finishEnd` in the `endingPeriod` phase

        for that auction as there technically are no winners during the `vrfDelay` and thus

        the field is `null`.'
      parameters:
      - name: at
        in: query
        description: Block at which to retrieve auction progress at.
        required: false
        schema:
          type: string
          description: Block identifier, as the block height or block hash.
          format: unsignedInteger or $hex
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ParasAuctionsCurrent'
      operationId: getParasAuctionsCurrent
      x-operation-id-source: derived
  /paras/crowdloans:
    get:
      tags:
      - paras
      summary: '[DEPRECATION NOTE: PHASED OUT ENDPOINT IN FAVOR OF CORETIME] List all stored…'
      description: Returns a list of all the crowdloans and their associated paraIds.
      parameters:
      - name: at
        in: query
        description: Block at which to retrieve the list of paraIds that have crowdloans at.
        required: false
        schema:
          type: string
          description: Block identifier, as the block height or block hash.
          format: unsignedInteger or $hex
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ParasCrowdloans'
      operationId: getParasCrowdloans
      x-operation-id-source: derived
  /paras/{paraId}/crowdloan-info:
    get:
      tags:
      - paras
      summary: '[DEPRECATION NOTE: PHASED OUT ENDPOINT IN FAVOR OF CORETIME] Get crowdloan…'
      description: 'Returns crowdloan''s `fundInfo` and the set of `leasePeriods` the crowdloan`

        covers.'
      parameters:
      - name: paraId
        in: path
        description: paraId to query the crowdloan information of.
        required: true
        schema:
          type: number
      - name: at
        in: query
        description: Block at which to retrieve info at.
        required: false
        schema:
          type: string
          description: Block identifier, as the block height or block hash.
          format: unsignedInteger or $hex
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ParasCrowdloanInfo'
      operationId: getParasByParaIdCrowdloanInfo
      x-operation-id-source: derived
  /paras/{paraId}/lease-info:
    get:
      tags:
      - paras
      summary: '[DEPRECATION NOTE: PHASED OUT ENDPOINT IN FAVOR OF CORETIME] Get current and…'
      description: 'Returns a list of leases that belong to the `paraId` as well as the

        `paraId`''s current lifecycle stage.'
      parameters:
      - name: paraId
        in: path
        description: paraId to query the crowdloan information of.
        required: true
        schema:
          type: number
      - name: at
        in: query
        description: Block at which to retrieve para's leases at.
        required: false
        schema:
          type: string
          description: Block identifier, as the block height or block hash.
          format: unsignedInteger or $hex
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ParasLeaseInfo'
      operationId: getParasByParaIdLeaseInfo
      x-operation-id-source: derived
  /paras/head/included-candidates:
    get:
      tags:
      - paras
      summary: '[DEPRECATION NOTE: PHASED OUT ENDPOINT IN FAVOR OF CORETIME] Get the heads of…'
      description: Returns an object with all the parachain id's as keys, and their headers as values.
      parameters:
      - name: at
        in: query
        description: Block at which to retrieve para's heads at.
        required: false
        schema:
          type: string
          description: Block identifier, as the block height or block hash.
          format: unsignedInteger or $hex
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ParasHeaders'
      operationId: getParasHeadIncludedCandidates
      x-operation-id-source: derived
  /paras/head/backed-candidates:
    get:
      tags:
      - paras
      summary: '[DEPRECATION NOTE: PHASED OUT ENDPOINT IN FAVOR OF CORETIME] Get the heads of…'
      description: Returns an object with all the parachain id's as keys, and their headers as values.
      parameters:
      - name: at
        in: query
        description: Block at which to retrieve para's heads at.
        required: false
        schema:
          type: string
          description: Block identifier, as the block height or block hash.
          format: unsignedInteger or $hex
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ParasHeaders'
      operationId: getParasHeadBackedCandidates
      x-operation-id-source: derived
  /paras/{number}/inclusion:
    get:
      tags:
      - paras
      summary: Get relay chain inclusion information for a specific parachain block
      description: 'Returns the relay chain block number where a parachain block was included,

        along with the relay parent number used during production. This endpoint helps

        track the lifecycle of parachain blocks from production to inclusion.


        **Note**: This endpoint requires a multi-chain connection (both parachain and relay chain APIs).'
      parameters:
      - name: number
        in: path
        description: Parachain block number to find inclusion information for.
        required: true
        schema:
          type: string
          format: unsignedInteger
      - name: depth
        in: query
        description: Maximum number of relay chain blocks to search for inclusion (must be divisible by 5, max 100).
        required: false
        schema:
          type: integer
          minimum: 5
          maximum: 100
          multipleOf: 5
          default: 10
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ParachainInclusion'
        '400':
          description: Invalid depth parameter
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    example: Depth parameter must be divisible by 5 for optimal performance.
      operationId: getParasByNumberInclusion
      x-operation-id-source: derived
components:
  schemas:
    BlockIdentifiers:
      type: object
      properties:
        hash:
          type: string
          description: The block's hash.
          format: hex
        height:
          type: string
          description: The block's height.
          format: unsignedInteger
    ParasLeasesCurrent:
      type: object
      properties:
        at:
          $ref: '#/components/schemas/BlockIdentifiers'
        leasePeriodIndex:
          type: string
          format: unsignedInteger
          description: Current lease period index. This value may be null when the current block now, substracted by the leaseOffset is less then zero.
        endOfLeasePeriod:
          type: string
          format: unsignedInteger
          description: Last block (number) of the current lease period. This value may be null when `leasePeriodIndex` is null.
        currentLeaseHolders:
          type: array
          items:
            type: string
            format: unsignedInteger
          description: List of `paraId`s that currently hold a lease.
    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.
    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.

            '
    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:
          - startPeriod
          - endPeriod
          - vrfDelay
          description: 'An auction can be in one of 4 phases. Both `startingPeriod` () and `endingPeriod` indicate

            an ongoing auction, while `vrfDelay` lines up with the `AuctionStatus::VrfDelay` . Finally, a value of `null`

            indicates there is no ongoing auction. Keep in mind the that the `finishEnd` field is the block number the

            `endingPeriod` finishes and the `vrfDelay` period begins. The `vrfDelay` period is typically about an

            epoch long and no crowdloan contributions are accepted.

            '
        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'
    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`.

            '
    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`.

        '
    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`.

        '
    ParachainInclusion:
      type: object
      properties:
        parachainBlock:
          type: integer
          description: The parachain block number that was searched for.
        parachainBlockHash:
          type: string
          format: hex
          description: The hash of the parachain block.
        parachainId:
          type: integer
          description: The parachain ID.
        relayParentNumber:
          type: integer
          description: The relay chain block number used as parent during parachain block production.
        inclusionNumber:
          type:
          - integer
          - 'null'
          description: The relay chain block number where the parachain block was included (null if not found).
        found:
          type: boolean
          description: Whether the inclusion was found within the search depth.
      required:
      - parachainBlock
      - parachainBlockHash
      - parachainId
      - relayParentNumber
      - inclusionNumber
      - found
    Paras:
      type: object
      properties:
        at:
          $ref: '#/components/schemas/BlockIdentifiers'
        paras:
          type: array
          items:
            $ref: '#/components/schemas/Para'
    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.

        '
    ParasHeaders:
      type: object
      properties:
        at:
          $ref: '#/components/schemas/BlockIdentifiers'
        paraId:
          type: object
          description: "The key is not named `paraId` and will be the number of the parachain. There is technically no limit to the number of paraId keys there can be. \n"
          properties:
            hash:
              type: string
              description: The block's hash.
              format: hex
            number:
              type: string
              description: The block's height.
              format: unsignedInteger
            parentHash:
              type: string
              description: The hash of the parent block.
              format: hex
            stateRoot:
              type: string
              description: The state root after executing this block.
              format: hex
            extrinsicsRoot:
              type: string
              description: The Merkle root of the extrinsics.
              format: hex
            digest:
              type: object
              properties:
                logs:
                  type: array
                  items:
                    $ref: '#/components/schemas/DigestItem'
                  description: Array of `DigestItem`s associated with the block.
    DigestItem:
      type: object
      properties:
        type:
          type: string
        index:
          type: string
          format: unsignedInteger
        value:
          type: array
          items:
            type: string
    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
        firstPeriod:
          type: string
          format: unsignedInteger
        lastPeriod:
          type: string
          format: unsignedInteger
        trieIndex:
          type: string
          format: unsignedInteger
    Para:
      type: object
      properties:
        paraId:
          type: string
          format: unsignedInteger
        paraLifecycle:
          $ref: '#/components/schemas/ParaLifecycle'
        onboardingAs:
          $ref: '#/components/schemas/OnboardingAs'