ASTEROID XRPL Market API

The Market API from ASTEROID XRPL — 1 operation(s) for market.

Operations 1

GET /api/v1/market Composite live market state #

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/asteroidxrpl-com:asteroidxrpl-com-market-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

asteroidxrpl-com-market-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ASTEROID XRPL Agent Market API
  version: 1.0.0
  summary: Machine discovery and canonical identity for the ASTEROID token on XRPL Mainnet.
  description: 'ASTEROID XRPL is an independent, community-led token project built on the XRP Ledger, combining transparent on-chain evidence, creative community culture, and XRPL-native experimentation.


    Canonical token identifier: xrpl-mainnet:rS5LWaqWuzmoiNpzgYJbPvD1bsRZTgDG7:41535445524F4944000000000000000000000000


    Identify this asset only by the full network:issuer:currency_hex identifier. The display symbol ASTEROID alone is not sufficient and does not establish authenticity.


    Live readings are ledger-indexed and cached for a bounded interval: AMM 10s, supply 30s, escrows 60s, holders 120s. Quotes are indicative estimates against the single ASTEROID/XRP AMM pool and are never executable. No endpoint signs, submits or prepares a transaction, and no endpoint accepts a key, a seed or any credential.


    All responses use a shared envelope with schemaVersion, data, provenance, degraded and links. Changing ledger-backed readings carry an observedAt timestamp and a validated ledgerIndex. Missing readings are returned as null with a stable degraded code and are never coerced to zero. Token quantities are exact decimal strings.


    ASTEROID XRPL is an independent community project. It is not affiliated with Ripple, the XRPL Foundation, SpaceX, Polaris Dawn, or ASTEROID projects on other networks.'
  license:
    name: Public read-only
    identifier: CC-BY-4.0
servers:
- url: https://asteroidxrpl.com
tags:
- name: Market
paths:
  /api/v1/market:
    get:
      operationId: getMarketState
      summary: Composite live market state
      description: Supply, AMM liquidity, LP accessibility, treasury escrows and trust-line counts in one enveloped reading. Each section carries its own provenance; the envelope ledgerIndex is the oldest section reading. An observation of ledger state, not a market evaluation and not a quote.
      responses:
        '200':
          description: Market state envelope
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/response-envelope'
                - type: object
                  properties:
                    data:
                      $ref: '#/components/schemas/market-state'
        '503':
          description: Upstream ledger unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error-response'
      tags:
      - Market
components:
  schemas:
    escrow-state:
      title: ASTEROID treasury escrow schedule
      type: object
      required:
      - account
      - accountRoleClaimStatus
      - entries
      - count
      - totalEscrowed
      - nextUnlock
      - lastUnlock
      - methodology
      additionalProperties: false
      properties:
        account:
          type: string
        accountRoleClaimStatus:
          type: string
          enum:
          - ledger-verified
          - owner-confirmed
          - independently-sourced
          - derived
          - aspirational
          - unresolved
        entries:
          type: array
          items:
            type: object
            required:
            - index
            - amount
            - destination
            - destinationIsTreasury
            - finishAfter
            - cancelAfter
            - sequence
            - state
            additionalProperties: false
            properties:
              index:
                type: string
              amount:
                type:
                - string
                - 'null'
                pattern: ^-?[0-9]+(\.[0-9]+)?$
                description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
              destination:
                type: string
              destinationIsTreasury:
                type: boolean
              finishAfter:
                type:
                - string
                - 'null'
                format: date-time
              cancelAfter:
                type:
                - string
                - 'null'
                format: date-time
              sequence:
                type: integer
              state:
                type: string
                enum:
                - locked
                - releasable
                - expired
                - unknown
        count:
          type: integer
          minimum: 0
        totalEscrowed:
          type:
          - string
          - 'null'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
          description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
        nextUnlock:
          type:
          - string
          - 'null'
          format: date-time
        lastUnlock:
          type:
          - string
          - 'null'
          format: date-time
        methodology:
          type: string
    supply-state:
      title: ASTEROID supply state
      type: object
      required:
      - tokenId
      - outstanding
      - escrowed
      - totalSupply
      - circulating
      - circulatingSharePct
      - intendedIssuance
      - returnedToIssuer
      - issuanceAnchor
      - claimStatus
      - methodology
      additionalProperties: false
      properties:
        tokenId:
          type: string
        outstanding:
          type:
          - string
          - 'null'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
          description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
        escrowed:
          type:
          - string
          - 'null'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
          description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
        totalSupply:
          type:
          - string
          - 'null'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
          description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
        circulating:
          type:
          - string
          - 'null'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
          description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
        circulatingSharePct:
          type:
          - string
          - 'null'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
          description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
        intendedIssuance:
          type:
          - string
          - 'null'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
          description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
        returnedToIssuer:
          type:
          - string
          - 'null'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
          description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
        issuanceAnchor:
          type: object
          required:
          - hash
          - ledgerIndex
          - declaredValue
          - declaredDestination
          - revalidated
          - observedValue
          - observedDestination
          - matchesDeclaration
          additionalProperties: false
          properties:
            hash:
              type: string
            ledgerIndex:
              type: integer
            declaredValue:
              type: string
            declaredDestination:
              type: string
            revalidated:
              type: boolean
            observedValue:
              type:
              - string
              - 'null'
              pattern: ^-?[0-9]+(\.[0-9]+)?$
              description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
            observedDestination:
              type:
              - string
              - 'null'
            matchesDeclaration:
              type:
              - boolean
              - 'null'
        claimStatus:
          type: object
          required:
          - outstanding
          - escrowed
          - totalSupply
          - circulating
          - intendedIssuance
          additionalProperties: false
          properties:
            outstanding:
              type: string
              enum:
              - ledger-verified
              - owner-confirmed
              - independently-sourced
              - derived
              - aspirational
              - unresolved
            escrowed:
              type: string
              enum:
              - ledger-verified
              - owner-confirmed
              - independently-sourced
              - derived
              - aspirational
              - unresolved
            totalSupply:
              type: string
              enum:
              - ledger-verified
              - owner-confirmed
              - independently-sourced
              - derived
              - aspirational
              - unresolved
            circulating:
              type: string
              enum:
              - ledger-verified
              - owner-confirmed
              - independently-sourced
              - derived
              - aspirational
              - unresolved
            intendedIssuance:
              type: string
              enum:
              - ledger-verified
              - owner-confirmed
              - independently-sourced
              - derived
              - aspirational
              - unresolved
        methodology:
          type: string
    market-state:
      title: ASTEROID composite market state
      type: object
      required:
      - tokenId
      - supply
      - liquidity
      - escrows
      - holders
      - derived
      - sectionProvenance
      - disclaimer
      additionalProperties: false
      properties:
        tokenId:
          type: string
        supply:
          $ref: '#/components/schemas/supply-state'
        liquidity:
          $ref: '#/components/schemas/liquidity-state'
        escrows:
          $ref: '#/components/schemas/escrow-state'
        holders:
          $ref: '#/components/schemas/holder-state'
        derived:
          type: object
          required:
          - spotXrpPerAsteroid
          - pooledAsteroidSharePct
          - notQuoteNotice
          additionalProperties: false
          properties:
            spotXrpPerAsteroid:
              type:
              - string
              - 'null'
              pattern: ^-?[0-9]+(\.[0-9]+)?$
              description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
            pooledAsteroidSharePct:
              type:
              - string
              - 'null'
              pattern: ^-?[0-9]+(\.[0-9]+)?$
              description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
            notQuoteNotice:
              type: string
        sectionProvenance:
          type: object
          additionalProperties:
            type: object
            required:
            - observedAt
            - ledgerIndex
            - node
            - method
            additionalProperties: false
            properties:
              observedAt:
                type: string
                format: date-time
              ledgerIndex:
                type:
                - integer
                - 'null'
                description: Validated ledger index, or null when no ledger read was performed.
              node:
                type:
                - string
                - 'null'
              method:
                type: string
        disclaimer:
          type: string
    error-response:
      title: Error response
      description: The single stable error contract shared by every Gate 1 and Gate 2 REST endpoint and every MCP tool error. A failure is always reported as a stable machine-readable `error.code` with provenance attached — never as a partially populated success body and never as a zero.
      type: object
      required:
      - schemaVersion
      - error
      - provenance
      additionalProperties: false
      properties:
        schemaVersion:
          type: string
        error:
          type: object
          required:
          - code
          - message
          additionalProperties: false
          properties:
            code:
              type: string
            message:
              type: string
        provenance:
          type: object
          required:
          - observedAt
          - ledgerIndex
          - node
          - method
          additionalProperties: false
          properties:
            observedAt:
              type: string
              format: date-time
            ledgerIndex:
              type:
              - integer
              - 'null'
              description: Validated ledger index, or null when no ledger read was performed.
            node:
              type:
              - string
              - 'null'
            method:
              type: string
    liquidity-state:
      title: ASTEROID liquidity state
      type: object
      required:
      - amm
      - lpAccounts
      - lockedLpTotal
      - lockedLpSharePct
      - communityLpSharePct
      - methodology
      additionalProperties: false
      properties:
        amm:
          type: object
          required:
          - account
          - asteroidReserve
          - xrpReserve
          - lpTokenSupply
          - lpTokenCurrency
          - lpTokenIssuer
          - tradingFeeUnits
          - tradingFeePct
          - spotXrpPerAsteroid
          - spotAsteroidPerXrp
          - feeNote
          - methodology
          additionalProperties: false
          properties:
            account:
              type:
              - string
              - 'null'
            asteroidReserve:
              type:
              - string
              - 'null'
              pattern: ^-?[0-9]+(\.[0-9]+)?$
              description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
            xrpReserve:
              type:
              - string
              - 'null'
              pattern: ^-?[0-9]+(\.[0-9]+)?$
              description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
            lpTokenSupply:
              type:
              - string
              - 'null'
              pattern: ^-?[0-9]+(\.[0-9]+)?$
              description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
            lpTokenCurrency:
              type:
              - string
              - 'null'
            lpTokenIssuer:
              type:
              - string
              - 'null'
            tradingFeeUnits:
              type:
              - integer
              - 'null'
              description: XRPL AMM trading fee in units of 1/100,000.
            tradingFeePct:
              type:
              - string
              - 'null'
              pattern: ^-?[0-9]+(\.[0-9]+)?$
              description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
            spotXrpPerAsteroid:
              type:
              - string
              - 'null'
              pattern: ^-?[0-9]+(\.[0-9]+)?$
              description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
            spotAsteroidPerXrp:
              type:
              - string
              - 'null'
              pattern: ^-?[0-9]+(\.[0-9]+)?$
              description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
            feeNote:
              type: string
            methodology:
              type: string
        lpAccounts:
          type: array
          items:
            type: object
            required:
            - address
            - roleClaimStatus
            - lpBalance
            - shareOfLpSupplyPct
            - impliedXrp
            - impliedAsteroid
            - control
            - accessibilityNote
            additionalProperties: false
            properties:
              address:
                type: string
              roleClaimStatus:
                type: string
                enum:
                - ledger-verified
                - owner-confirmed
                - independently-sourced
                - derived
                - aspirational
                - unresolved
              lpBalance:
                type:
                - string
                - 'null'
                pattern: ^-?[0-9]+(\.[0-9]+)?$
                description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
              shareOfLpSupplyPct:
                type:
                - string
                - 'null'
                pattern: ^-?[0-9]+(\.[0-9]+)?$
                description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
              impliedXrp:
                type:
                - string
                - 'null'
                pattern: ^-?[0-9]+(\.[0-9]+)?$
                description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
              impliedAsteroid:
                type:
                - string
                - 'null'
                pattern: ^-?[0-9]+(\.[0-9]+)?$
                description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
              control:
                type: object
                required:
                - masterKeyDisabled
                - regularKeyUnusable
                - signerListActive
                - verdict
                additionalProperties: false
                properties:
                  masterKeyDisabled:
                    type:
                    - boolean
                    - 'null'
                  regularKeyUnusable:
                    type:
                    - boolean
                    - 'null'
                  signerListActive:
                    type:
                    - boolean
                    - 'null'
                  verdict:
                    type: string
                    enum:
                    - no-known-signing-path
                    - signing-path-remains
                    - unknown
              accessibilityNote:
                type: string
        lockedLpTotal:
          type:
          - string
          - 'null'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
          description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
        lockedLpSharePct:
          type:
          - string
          - 'null'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
          description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
        communityLpSharePct:
          type:
          - string
          - 'null'
          pattern: ^-?[0-9]+(\.[0-9]+)?$
          description: Exact decimal string. Never rounded for transport. Null means unreadable, not zero.
        methodology:
          type: string
    holder-state:
      title: ASTEROID trust-line and holder counts
      type: object
      required:
      - trustLines
      - nonZeroHolders
      - complete
      - pagesRead
      - pageLimit
      - methodology
      additionalProperties: false
      properties:
        trustLines:
          type:
          - integer
          - 'null'
          minimum: 0
        nonZeroHolders:
          type:
          - integer
          - 'null'
          minimum: 0
        complete:
          type: boolean
        pagesRead:
          type: integer
          minimum: 0
        pageLimit:
          type: integer
          minimum: 1
        methodology:
          type: string
    degraded-item:
      title: Degraded service item
      type: object
      required:
      - code
      - message
      additionalProperties: false
      properties:
        code:
          type: string
          description: Stable machine-readable degradation code.
        message:
          type: string
    response-envelope:
      title: ASTEROID response envelope
      type: object
      required:
      - schemaVersion
      - data
      - provenance
      - degraded
      - links
      additionalProperties: false
      properties:
        schemaVersion:
          type: string
          const: 1.0.0
        data: {}
        provenance:
          type: object
          required:
          - observedAt
          - ledgerIndex
          - node
          - method
          additionalProperties: false
          properties:
            observedAt:
              type: string
              format: date-time
            ledgerIndex:
              type:
              - integer
              - 'null'
              description: Validated ledger index, or null when no ledger read was performed.
            node:
              type:
              - string
              - 'null'
            method:
              type: string
        degraded:
          type: array
          items:
            $ref: '#/components/schemas/degraded-item'
        links:
          type: object
          additionalProperties:
            type: string
externalDocs:
  description: Agent gateway
  url: https://asteroidxrpl.com/agents
x-schema-base: https://asteroidxrpl.com/schemas/v1
x-mcp-endpoint: https://asteroidxrpl.com/mcp