> ## Documentation Index
> Fetch the complete documentation index at: https://docs.asksurf.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# On-Chain Indicator



## OpenAPI

````yaml openapi.json GET /gateway/v1/market/onchain-indicator
openapi: 3.1.0
info:
  title: Hermod
  version: 0.0.1
servers:
  - url: https://api.asksurf.ai
security: []
paths:
  /gateway/v1/market/onchain-indicator:
    get:
      tags:
        - Market
      summary: On-Chain Indicator
      description: >-
        Returns on-chain indicator time-series for BTC or ETH.


        **Available metrics:** `nupl`, `sopr`, `mvrv`, `puell-multiple`, `nvm`,
        `nvt`, `nvt-golden-cross`, `exchange-flows`
        (inflow/outflow/netflow/reserve).
      operationId: market-onchain-indicator
      parameters:
        - description: Token ticker symbol. Can be `BTC` or `ETH`.
          explode: false
          in: query
          name: symbol
          required: true
          schema:
            description: Token ticker symbol. Can be `BTC` or `ETH`.
            enum:
              - BTC
              - ETH
            examples:
              - BTC
            type: string
        - description: >-
            On-chain metric name. Can be `nupl`, `sopr`, `mvrv`,
            `puell-multiple`, `nvm`, `nvt`, `nvt-golden-cross`, or
            `exchange-flows/{inflow,outflow,netflow,reserve}`.
          explode: false
          in: query
          name: metric
          required: true
          schema:
            description: >-
              On-chain metric name. Can be `nupl`, `sopr`, `mvrv`,
              `puell-multiple`, `nvm`, `nvt`, `nvt-golden-cross`, or
              `exchange-flows/{inflow,outflow,netflow,reserve}`.
            enum:
              - nupl
              - sopr
              - mvrv
              - puell-multiple
              - nvm
              - nvt
              - nvt-golden-cross
              - exchange-flows/inflow
              - exchange-flows/outflow
              - exchange-flows/netflow
              - exchange-flows/reserve
            examples:
              - nupl
            type: string
        - description: Aggregation granularity.
          explode: false
          in: query
          name: granularity
          schema:
            default: day
            description: Aggregation granularity.
            enum:
              - day
            examples:
              - day
            type: string
        - description: >-
            Start of time range. Accepts Unix seconds or date string
            (YYYY-MM-DD). Defaults to 90 days ago when omitted. Maximum range is
            365 days.
          explode: false
          in: query
          name: from
          schema:
            description: >-
              Start of time range. Accepts Unix seconds or date string
              (YYYY-MM-DD). Defaults to 90 days ago when omitted. Maximum range
              is 365 days.
            examples:
              - '2026-01-01'
            type: string
        - description: >-
            End of time range. Accepts Unix seconds or date string (YYYY-MM-DD).
            Defaults to today when omitted. Maximum range is 365 days.
          explode: false
          in: query
          name: to
          schema:
            description: >-
              End of time range. Accepts Unix seconds or date string
              (YYYY-MM-DD). Defaults to today when omitted. Maximum range is 365
              days.
            examples:
              - '2026-03-01'
            type: string
        - description: >-
            Exchange filter (only applies to exchange-flow metrics). Can be
            `all_exchange`, `spot_exchange`, `derivative_exchange`, `binance`,
            `bybit`, `kraken`, or `okx`.
          explode: false
          in: query
          name: exchange
          schema:
            default: all_exchange
            description: >-
              Exchange filter (only applies to exchange-flow metrics). Can be
              `all_exchange`, `spot_exchange`, `derivative_exchange`, `binance`,
              `bybit`, `kraken`, or `okx`.
            enum:
              - all_exchange
              - spot_exchange
              - derivative_exchange
              - binance
              - bybit
              - kraken
              - okx
            examples:
              - all_exchange
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SimpleListResponseMarketMetricPoint'
          description: OK
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataAPIError'
          description: Error
      security:
        - AccessToken: []
components:
  schemas:
    SimpleListResponseMarketMetricPoint:
      additionalProperties: false
      properties:
        $schema:
          description: A URL to the JSON Schema for this object.
          examples:
            - >-
              https://example.com/schemas/SimpleListResponseMarketMetricPoint.json
          format: uri
          readOnly: true
          type: string
        data:
          items:
            $ref: '#/components/schemas/MarketMetricPoint'
          type:
            - array
            - 'null'
        meta:
          $ref: '#/components/schemas/ObjectResponseMeta'
      required:
        - data
        - meta
      type: object
    DataAPIError:
      additionalProperties: false
      properties:
        $schema:
          description: A URL to the JSON Schema for this object.
          examples:
            - https://example.com/schemas/DataAPIError.json
          format: uri
          readOnly: true
          type: string
        error:
          $ref: '#/components/schemas/DataAPIErrorDetail'
      required:
        - error
      type: object
    MarketMetricPoint:
      additionalProperties: false
      properties:
        metric:
          description: Metric name like `nupl`, `sopr`, or `price`
          type: string
        symbol:
          description: Token symbol this data point belongs to
          type: string
        timestamp:
          description: Unix timestamp in seconds for this data point
          format: int64
          type: integer
        value:
          description: Metric value at this timestamp
          format: double
          type: number
      required:
        - value
        - timestamp
      type: object
    ObjectResponseMeta:
      additionalProperties: false
      properties:
        cached:
          description: Whether this response was served from cache
          type: boolean
        credits_used:
          description: Credits deducted for this request
          format: int64
          type: integer
      required:
        - credits_used
        - cached
      type: object
    DataAPIErrorDetail:
      additionalProperties: false
      properties:
        code:
          type: string
        message:
          type: string
      required:
        - code
        - message
      type: object

````