Obol System API

System related endpoints.

Operations 4

GET / Redirect to the API docs #
GET /v1/_health Check the API health #
GET /eth-apr Get network ETH APR #
GET /v1/eth-apr Get network ETH APR #

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/obol-system-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

obol-system-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Obol Address System API
  description: "## What is this API?\n\nThis API is for creating and managing [Distributed Validators](https://docs.obol.tech/docs/int/key-concepts#distributed-validator). This API works in tandem with Obol's [Distributed Validator Launchpad](https://hoodi.launchpad.obol.org), a dapp designed to allow people to authenticate their counterparties and agree to the terms of a Distributed Validator Cluster. This API will be made more easy for code-only interaction in the coming quarters with the release of the Obol-SDK. \n\nRead more about Obol and how to use the [launchpad](https://hoodi.launchpad.obol.org) on our [docs site](https://docs.obol.tech/). \n\nFor enquiries:"
  version: v1.0.0-local
  contact:
    name: Obol Labs
    url: https://obol.tech
    email: support@obol.tech
servers:
- url: https://api.obol.tech
  description: Production environment
- url: http://localhost:3000
  description: Local development server
- url: https://localhost:3000
  description: HTTPS Local development server
tags:
- name: System
  description: System related endpoints.
paths:
  /:
    get:
      description: Hitting the root of the domain redirects to /docs and a swagger deployment.
      operationId: AppController_redirect
      parameters: []
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
      summary: Redirect to the API docs
      tags:
      - System
  /v1/_health:
    get:
      description: This endpoint reports the API and its dependencies health.
      operationId: HealthController_check_v1
      parameters: []
      responses:
        '200':
          description: The Health Check is successful
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: ok
                  info:
                    type:
                    - object
                    - 'null'
                    example:
                      database:
                        status: up
                    additionalProperties:
                      type: object
                      required:
                      - status
                      properties:
                        status:
                          type: string
                      additionalProperties: true
                  error:
                    type:
                    - object
                    - 'null'
                    example: {}
                    additionalProperties:
                      type: object
                      required:
                      - status
                      properties:
                        status:
                          type: string
                      additionalProperties: true
                  details:
                    type: object
                    example:
                      database:
                        status: up
                    additionalProperties:
                      type: object
                      required:
                      - status
                      properties:
                        status:
                          type: string
                      additionalProperties: true
        '503':
          description: The Health Check is not successful
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: error
                  info:
                    type:
                    - object
                    - 'null'
                    example:
                      database:
                        status: up
                    additionalProperties:
                      type: object
                      required:
                      - status
                      properties:
                        status:
                          type: string
                      additionalProperties: true
                  error:
                    type:
                    - object
                    - 'null'
                    example:
                      redis:
                        status: down
                        message: Could not connect
                    additionalProperties:
                      type: object
                      required:
                      - status
                      properties:
                        status:
                          type: string
                      additionalProperties: true
                  details:
                    type: object
                    example:
                      database:
                        status: up
                      redis:
                        status: down
                        message: Could not connect
                    additionalProperties:
                      type: object
                      required:
                      - status
                      properties:
                        status:
                          type: string
                      additionalProperties: true
      summary: Check the API health
      tags:
      - System
  /eth-apr:
    get:
      description: Proxies Beaconcha.in ethstore/latest to avoid CORS. Returns mainnet network APR.
      operationId: EthAprController_getEthApr[0]
      parameters: []
      responses:
        '200':
          description: ETH APR data from Beaconcha.in
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EthAprResponse'
      summary: Get network ETH APR
      tags:
      - System
  /v1/eth-apr:
    get:
      description: Proxies Beaconcha.in ethstore/latest to avoid CORS. Returns mainnet network APR.
      operationId: EthAprController_getEthApr[1]_v1
      parameters: []
      responses:
        '200':
          description: ETH APR data from Beaconcha.in
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EthAprResponse'
      summary: Get network ETH APR
      tags:
      - System
components:
  schemas:
    EthAprResponse:
      type: object
      properties:
        apr:
          type: number
          description: Network-wide ETH staking APR as a decimal (e.g. 0.029 = 2.9%). Sourced from Beaconcha.in ethstore/latest.
          example: 0.029
      required:
      - apr
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http