Celestia Node DA API

JSON-RPC methods in the da module of celestia-node implementing the modular Data Availability interface used by Rollkit, Optimism Alt-DA, Arbitrum Nitro DAS, and other rollup frameworks. Exposes da.Submit, da.Get, da.GetIDs, da.GetProofs, da.Commit, da.Validate, and da.MaxBlobSize.

Celestia Node DA 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 Rollup. The published artifact set on APIs.io includes API documentation, an OpenAPI specification, sample payloads, and 1 Naftiko capability spec.

OpenAPI Specification

celestia-da-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Celestia Node DA API
  version: 0.30.x
  description: |
    JSON-RPC methods in the `da` module of celestia-node. Implements the modular
    Data Availability interface (https://github.com/rollkit/go-da) so that rollups
    and other execution layers can post blobs to and retrieve them from Celestia
    without coupling to celestia-node internals.
  license:
    name: Apache-2.0
servers:
  - url: http://localhost:26658
tags:
  - name: DA
    description: Modular DA interface for blob submit, get, commit, and validate.
paths:
  /:
    post:
      tags: [DA]
      summary: Invoke DA JSON-RPC Method
      description: |
        Exposes the `da.*` namespace including `da.MaxBlobSize`, `da.Get`, `da.GetIDs`,
        `da.GetProofs`, `da.Commit`, `da.Validate`, and `da.Submit`. Compatible with the
        modular DA interface used by Rollkit, Optimism Alt-DA, Arbitrum Nitro DAS,
        and other rollup frameworks.
      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:
            - da.MaxBlobSize
            - da.Get
            - da.GetIDs
            - da.GetProofs
            - da.Commit
            - da.Validate
            - da.Submit
        params:
          type: array
    JsonRpcResponse:
      type: object
      properties:
        jsonrpc: {type: string}
        id: {}
        result: {}
        error:
          type: object
          properties:
            code: {type: integer}
            message: {type: string}