Celestia Node Share API

JSON-RPC methods in the share module of celestia-node. Provides direct access to Celestia's share-level data, the extended data square (EDS), namespaced shares, and share proofs via share.SharesAvailable, share.GetShare, share.GetEDS, share.GetNamespaceData, share.GetRange, and share.GetSamples.

Celestia Node Share API is one of 10 APIs that celestia publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 1 machine-runnable capability that can be deployed as REST, MCP, or Agent Skill surfaces via Naftiko.

Tagged areas include Celestia, DataAvailability, JSONRPC, and Share. The published artifact set on APIs.io includes API documentation, an OpenAPI specification, sample payloads, and 1 Naftiko capability spec.

OpenAPI Specification

celestia-share-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Celestia Node Share API
  version: 0.30.x
  description: |
    JSON-RPC methods in the `share` module of celestia-node. Provides direct access
    to Celestia's share-level data: namespaced shares, share proofs, range proofs,
    and the extended data square (EDS) for any height. Used by light nodes performing
    data availability sampling and by rollups verifying inclusion of namespaced data.
  license:
    name: Apache-2.0
servers:
  - url: http://localhost:26658
tags:
  - name: Share
    description: Share-level data access, EDS retrieval, and namespace proofs.
paths:
  /:
    post:
      tags: [Share]
      summary: Invoke Share JSON-RPC Method
      description: |
        Exposes the `share.*` namespace including `share.SharesAvailable`,
        `share.GetShare`, `share.GetEDS`, `share.GetNamespaceData`, `share.GetRange`,
        and `share.GetSamples`.
      security:
        - BearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/JsonRpcRequest'
      responses:
        '200':
          description: JSON-RPC response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonRpcResponse'
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
  schemas:
    JsonRpcRequest:
      type: object
      required: [jsonrpc, method, id]
      properties:
        jsonrpc:
          type: string
          enum: ["2.0"]
        id:
          oneOf: [{type: integer}, {type: string}]
        method:
          type: string
          enum:
            - share.SharesAvailable
            - share.GetShare
            - share.GetEDS
            - share.GetNamespaceData
            - share.GetRange
            - share.GetSamples
        params:
          type: array
    JsonRpcResponse:
      type: object
      properties:
        jsonrpc: {type: string}
        id: {}
        result: {}
        error:
          type: object
          properties:
            code: {type: integer}
            message: {type: string}