Babylon Labs v1 API

Babylon Phase-1 API endpoints (Deprecated)

Operations 8

GET /v1/delegation
GET /v1/finality-providers Get Active Finality Providers (Deprecated)
GET /v1/global-params
GET /v1/staker/delegations
GET /v1/stats Get Overall Stats (Deprecated)
GET /v1/stats/staker Get Staker Stats (Deprecated)
POST /v1/unbonding Unbond phase-1 delegation
GET /v1/unbonding/eligibility Check unbonding eligibility

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/babylon-labs-v1-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

babylon-labs-v1-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    email: contact@babylonlabs.io
  description: 'The Babylon Staking API offers information about the state of the Babylon BTC Staking system.

    Your access and use is governed by the API Access License linked to below.'
  license:
    name: API Access License
    url: https://docs.babylonlabs.io/assets/files/api-access-license.pdf
  title: Babylon Staking shared V1 API
  version: '2.0'
servers:
- url: https://staking-api.babylonlabs.io/
tags:
- description: Babylon Phase-1 API endpoints (Deprecated)
  name: v1
paths:
  /v1/delegation:
    get:
      deprecated: true
      description: '[DEPRECATED] Retrieves a delegation by a given transaction hash. Please use /v2/delegation instead.'
      parameters:
      - description: Staking transaction hash in hex format
        in: query
        name: staking_tx_hash_hex
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Delegation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/handler.PublicResponse-v1service_DelegationPublic'
        '400':
          description: 'Error: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/github_com_babylonlabs-io_staking-api-service_internal_shared_types.Error'
      tags:
      - v1
  /v1/finality-providers:
    get:
      deprecated: true
      description: '[DEPRECATED] Fetches details of all active finality providers sorted by their active total value locked (ActiveTvl) in descending order. Please use /v2/finality-providers instead.'
      parameters:
      - description: Public key of the finality provider to fetch
        in: query
        name: fp_btc_pk
        schema:
          type: string
      - description: Pagination key to fetch the next page of finality providers
        in: query
        name: pagination_key
        schema:
          type: string
      responses:
        '200':
          description: A list of finality providers sorted by ActiveTvl in descending order
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/handler.PublicResponse-array_v1service_FpDetailsPublic'
      summary: Get Active Finality Providers (Deprecated)
      tags:
      - v1
  /v1/global-params:
    get:
      deprecated: true
      description: '[DEPRECATED] Retrieves the global parameters for Babylon, including finality provider details. Please use /v2/network-info instead.'
      responses:
        '200':
          description: Global parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/handler.PublicResponse-v1service_GlobalParamsPublic'
      tags:
      - v1
  /v1/staker/delegations:
    get:
      description: 'Retrieves phase-1 delegations for a given staker. This endpoint will be deprecated once all phase-1 delegations are either withdrawn or registered into phase-2.

        This endpoint is only used to show legacy phase-1 delegations for the purpose of unbonding or registering into phase-2.'
      parameters:
      - description: Staker BTC Public Key
        in: query
        name: staker_btc_pk
        required: true
        schema:
          type: string
      - description: Only return delegations with pending actions which include active, unbonding, unbonding_requested, unbonded
        in: query
        name: pending_action
        schema:
          type: boolean
      - description: Pagination key to fetch the next page of delegations
        in: query
        name: pagination_key
        schema:
          type: string
      responses:
        '200':
          description: List of delegations and pagination token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/handler.PublicResponse-array_v1service_DelegationPublic'
        '400':
          description: 'Error: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/github_com_babylonlabs-io_staking-api-service_internal_shared_types.Error'
      tags:
      - v1
  /v1/stats:
    get:
      deprecated: true
      description: '[DEPRECATED] Fetches overall stats for babylon staking including tvl, total delegations, active tvl, active delegations and total stakers. Please use /v2/stats instead.'
      responses:
        '200':
          description: Overall stats for babylon staking
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/handler.PublicResponse-v1service_OverallStatsPublic'
      summary: Get Overall Stats (Deprecated)
      tags:
      - v1
  /v1/stats/staker:
    get:
      deprecated: true
      description: '[DEPRECATED] Fetches staker stats for babylon staking including tvl, total delegations, active tvl and active delegations. Please use /v2/staker/stats instead.

        If staker_btc_pk query parameter is provided, it will return stats for the specific staker.

        Otherwise, it will return the top stakers ranked by active tvl.'
      parameters:
      - description: Public key of the staker to fetch
        in: query
        name: staker_btc_pk
        schema:
          type: string
      - description: Pagination key to fetch the next page of top stakers
        in: query
        name: pagination_key
        schema:
          type: string
      responses:
        '200':
          description: List of top stakers by active tvl
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/handler.PublicResponse-array_v1service_StakerStatsPublic'
        '400':
          description: 'Error: Bad Request'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/github_com_babylonlabs-io_staking-api-service_internal_shared_types.Error'
      summary: Get Staker Stats (Deprecated)
      tags:
      - v1
  /v1/unbonding:
    post:
      description: 'Unbonds a phase-1 delegation by processing the provided transaction details. This endpoint will be deprecated once all phase-1 delegations are either withdrawn or registered into phase-2.

        This is an async operation.'
      responses:
        '202':
          description: Request accepted and will be processed asynchronously
        '400':
          description: Invalid request payload
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/github_com_babylonlabs-io_staking-api-service_internal_shared_types.Error'
      summary: Unbond phase-1 delegation
      tags:
      - v1
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1handlers.UnbondDelegationRequestPayload'
        description: Unbonding Request Payload
        required: true
  /v1/unbonding/eligibility:
    get:
      description: Checks if a delegation identified by its staking transaction hash is eligible for unbonding. This endpoint will be deprecated once all phase-1 delegations are either withdrawn or registered into phase-2.
      parameters:
      - description: Staking Transaction Hash Hex
        in: query
        name: staking_tx_hash_hex
        required: true
        schema:
          type: string
      responses:
        '200':
          description: The delegation is eligible for unbonding
        '400':
          description: Missing or invalid 'staking_tx_hash_hex' query parameter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/github_com_babylonlabs-io_staking-api-service_internal_shared_types.Error'
      summary: Check unbonding eligibility
      tags:
      - v1
components:
  schemas:
    handler.PublicResponse-v1service_OverallStatsPublic:
      properties:
        data:
          $ref: '#/components/schemas/v1service.OverallStatsPublic'
        pagination:
          $ref: '#/components/schemas/handler.paginationResponse'
      type: object
    v1service.DelegationPublic:
      properties:
        finality_provider_pk_hex:
          type: string
        is_eligible_for_transition:
          type: boolean
        is_overflow:
          type: boolean
        is_slashed:
          type: boolean
        staker_pk_hex:
          type: string
        staking_tx:
          $ref: '#/components/schemas/v1service.TransactionPublic'
        staking_tx_hash_hex:
          type: string
        staking_value:
          type: integer
        state:
          $ref: '#/components/schemas/types.DelegationState'
        unbonding_tx:
          $ref: '#/components/schemas/v1service.TransactionPublic'
      type: object
    types.DelegationState:
      enum:
      - active
      - unbonding_requested
      - unbonding
      - unbonded
      - withdrawable
      - withdrawn
      - transitioned
      - slashed
      type: string
      x-enum-varnames:
      - Active
      - UnbondingRequested
      - Unbonding
      - Unbonded
      - Withdrawable
      - Withdrawn
      - Transitioned
      - Slashed
    handler.PublicResponse-v1service_DelegationPublic:
      properties:
        data:
          $ref: '#/components/schemas/v1service.DelegationPublic'
        pagination:
          $ref: '#/components/schemas/handler.paginationResponse'
      type: object
    handler.paginationResponse:
      properties:
        next_key:
          type: string
      type: object
    v1handlers.UnbondDelegationRequestPayload:
      properties:
        staker_signed_signature_hex:
          type: string
        staking_tx_hash_hex:
          type: string
        unbonding_tx_hash_hex:
          type: string
        unbonding_tx_hex:
          type: string
      type: object
    handler.PublicResponse-array_v1service_FpDetailsPublic:
      properties:
        data:
          items:
            $ref: '#/components/schemas/v1service.FpDetailsPublic'
          type: array
        pagination:
          $ref: '#/components/schemas/handler.paginationResponse'
      type: object
    handler.PublicResponse-array_v1service_DelegationPublic:
      properties:
        data:
          items:
            $ref: '#/components/schemas/v1service.DelegationPublic'
          type: array
        pagination:
          $ref: '#/components/schemas/handler.paginationResponse'
      type: object
    v1service.GlobalParamsPublic:
      properties:
        versions:
          items:
            $ref: '#/components/schemas/v1service.VersionedGlobalParamsPublic'
          type: array
      type: object
    v1service.OverallStatsPublic:
      properties:
        active_delegations:
          type: integer
        active_tvl:
          type: integer
        btc_price_usd:
          description: Optional field
          type: number
        pending_tvl:
          type: integer
        total_delegations:
          type: integer
        total_stakers:
          type: integer
        total_tvl:
          type: integer
        unconfirmed_tvl:
          type: integer
      type: object
    v1service.FpDescriptionPublic:
      properties:
        details:
          type: string
        identity:
          type: string
        moniker:
          type: string
        security_contact:
          type: string
        website:
          type: string
      type: object
    handler.PublicResponse-array_v1service_StakerStatsPublic:
      properties:
        data:
          items:
            $ref: '#/components/schemas/v1service.StakerStatsPublic'
          type: array
        pagination:
          $ref: '#/components/schemas/handler.paginationResponse'
      type: object
    v1service.TransactionPublic:
      properties:
        output_index:
          type: integer
        start_height:
          type: integer
        start_timestamp:
          type: string
        timelock:
          type: integer
        tx_hex:
          type: string
      type: object
    types.ErrorCode:
      enum:
      - INTERNAL_SERVICE_ERROR
      - VALIDATION_ERROR
      - NOT_FOUND
      - BAD_REQUEST
      - FORBIDDEN
      - UNPROCESSABLE_ENTITY
      - REQUEST_TIMEOUT
      type: string
      x-enum-varnames:
      - InternalServiceError
      - ValidationError
      - NotFound
      - BadRequest
      - Forbidden
      - UnprocessableEntity
      - RequestTimeout
    v1service.VersionedGlobalParamsPublic:
      properties:
        activation_height:
          type: integer
        cap_height:
          type: integer
        confirmation_depth:
          type: integer
        covenant_pks:
          items:
            type: string
          type: array
        covenant_quorum:
          type: integer
        max_staking_amount:
          type: integer
        max_staking_time:
          type: integer
        min_staking_amount:
          type: integer
        min_staking_time:
          type: integer
        staking_cap:
          type: integer
        tag:
          type: string
        unbonding_fee:
          type: integer
        unbonding_time:
          type: integer
        version:
          type: integer
      type: object
    v1service.FpDetailsPublic:
      properties:
        active_delegations:
          type: integer
        active_tvl:
          type: integer
        btc_pk:
          type: string
        commission:
          type: string
        description:
          $ref: '#/components/schemas/v1service.FpDescriptionPublic'
        total_delegations:
          type: integer
        total_tvl:
          type: integer
      type: object
    handler.PublicResponse-v1service_GlobalParamsPublic:
      properties:
        data:
          $ref: '#/components/schemas/v1service.GlobalParamsPublic'
        pagination:
          $ref: '#/components/schemas/handler.paginationResponse'
      type: object
    v1service.StakerStatsPublic:
      properties:
        active_delegations:
          type: integer
        active_tvl:
          type: integer
        staker_pk_hex:
          type: string
        total_delegations:
          type: integer
        total_tvl:
          type: integer
      type: object
    github_com_babylonlabs-io_staking-api-service_internal_shared_types.Error:
      properties:
        err: {}
        errorCode:
          $ref: '#/components/schemas/types.ErrorCode'
        statusCode:
          type: integer
      type: object