Binance Tokenized Securities Info Skill

SkillCommerce & finance

Lets your agent look up data on tokenized US stocks on Binance, like prices, trading status, and company info.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Binance Tokenized Securities Info Skill skill

About this capability

Query Ondo tokenized US stock data on Binance Web3. Covers: supported stock token list, RWA metadata (company info, attestation reports), market and per-asset trading status (with corporate action codes for earnings, dividends, splits), real-time on-chain data (token price, holders, circulating supp

What this skill tells your AI

The instructions your AI receives, as published by ccxt/ccxt in .agents/skills/binance-tokenized-securities-info/SKILL.md and read by ahel’s review.

Overview

APIFunctionUse Case
Token Symbol ListList all tokenized stocksBrowse Ondo supported tickers, filter by type
RWA MetaTokenized stock metadataCompany info, concepts, attestation reports
Market StatusOverall market open/closeCheck if Ondo market is currently trading
Asset Market StatusPer-asset trading statusDetect corporate actions (earnings, dividends, splits, mergers)
RWA Dynamic V2Full real-time dataOn-chain price, holders, US stock fundamentals, order limits
Token K-LineCandlestick chartsOHLC data for on-chain token price technical analysis

Recommended Workflows

ScenarioSteps
Look up a stock's fundamentals and on-chain dataAPI 1 (get chainId + contractAddress by ticker) → API 5 (dynamic data)
Check if a stock token is tradableAPI 3 (overall market status) → API 4 (per-asset status with reason code)
Research a tokenized stockAPI 1 (find token) → API 2 (company metadata + attestation reports)
Get K-Line chart dataAPI 1 (find token) → API 6 (K-Line with interval)

Use Cases

  1. List Supported Stocks: Get all Ondo tokenized tickers with chain and contract info
  2. Company Research: Get company metadata, CEO, industry, concept tags, and attestation reports
  3. Market Status Check: Determine if the Ondo market is open, closed, or in pre/post-market session
  4. Corporate Action Detection: Check if a specific asset is paused or limited due to earnings, dividends, stock splits, mergers, or maintenance
  5. Real-Time Data: Get on-chain price, holder count, circulating supply, US stock P/E, dividend yield, 52-week range, and order limits
  6. Technical Analysis: Fetch token K-Line (candlestick) data with configurable intervals and time ranges

Key Concept: Token ≠ Share

Each token represents multiplier shares of the underlying stock, not exactly 1 share. Most tokens have a multiplier near 1.0 (cumulative dividend adjustment), but stock-split tokens can be 5.0 or 10.0 (e.g. multiplier = 10.0 means 1 token = 10 shares).

referencePrice = tokenInfo.price ÷ sharesMultiplier

See Notes §6 for common multiplier categories.

Supported Chains

ChainchainId
Ethereum1
BSC56

API 1: Token Symbol List

Method: GET

URL:

https://www.binance.com/bapi/defi/v1/public/wallet-direct/buw/wallet/market/token/rwa/stock/detail/list/ai

Request Parameters:

ParameterTypeRequiredDescription
typeintegerNoFilter by platform: 1 = Ondo Finance (currently the only supported tokenized stock provider). Omit to return all platforms. Use type=1 to retrieve only Ondo tokens.

Headers: Accept-Encoding: identity

Example:

curl 'https://www.binance.com/bapi/defi/v1/public/wallet-direct/buw/wallet/market/token/rwa/stock/detail/list/ai' \
  -H 'Accept-Encoding: identity' \
  -H 'User-Agent: binance-web3/1.1 (Skill)'

Response:

{
  "code": "000000",
  "data": [
    {
      "chainId": "1",
      "contractAddress": "<CONTRACT_ADDRESS>",
      "symbol": "<TOKEN_SYMBOL_ON>",
      "ticker": "<UNDERLYING_TICKER>",
      "type": 1,
      "multiplier": "1.021663864228987186"
    },
    {
      "chainId": "56",
      "contractAddress": "<CONTRACT_ADDRESS>",
      "symbol": "<TOKEN_SYMBOL_ON>",
      "ticker": "<UNDERLYING_TICKER>",
      "type": 1,
      "multiplier": "1.010063782256545489"
    }
  ],
  "success": true
}

Response Fields (each item in data):

FieldTypeDescription
chainIdstringChain ID (1 = Ethereum, 56 = BSC)
contractAddressstringToken contract address
symbolstringToken symbol (ticker + on suffix, e.g. <TOKEN_SYMBOL_ON>)
tickerstringUnderlying US stock ticker
typeintegerPlatform type: 1 = Ondo
multiplierstringShares multiplier (see Key Concept above, Notes §6)

API 2: RWA Meta

Method: GET

URL:

https://www.binance.com/bapi/defi/v1/public/wallet-direct/buw/wallet/market/token/rwa/meta/ai

Request Parameters:

ParameterTypeRequiredDescription
chainIdstringYesChain ID (e.g. 56 for BSC, 1 for Ethereum)
contractAddressstringYesToken contract address

Headers: Accept-Encoding: identity

Example:

curl 'https://www.binance.com/bapi/defi/v1/public/wallet-direct/buw/wallet/market/token/rwa/meta/ai?chainId=56&contractAddress=<CONTRACT_ADDRESS>' \
  -H 'Accept-Encoding: identity' \
  -H 'User-Agent: binance-web3/1.1 (Skill)'

Response:

{
  "code": "000000",
  "data": {
    "tokenId": "<TOKEN_ID>",
    "name": "<TOKEN_DISPLAY_NAME>",
    "symbol": "<TOKEN_SYMBOL_ON>",
    "ticker": "<UNDERLYING_TICKER>",
    "icon": "/images/web3-data/public/token/logos/<TOKEN_ID>.png",
    "dailyAttestationReports": "/images/web3-data/public/token/ondo/pdf/daily-<DATE>.pdf",
    "monthlyAttestationReports": "/images/web3-data/public/token/ondo/pdf/monthly-<MONTH>.pdf",
    "companyInfo": {
      "companyName": "<COMPANY_NAME_EN>",
      "companyNameZh": "<公司名称>",
      "homepageUrl": "",
      "description": "<COMPANY_DESCRIPTION_EN>",
      "descriptionZh": "<COMPANY_DESCRIPTION_CN>",
      "ceo": "<CEO_NAME>",
      "industry": "<INDUSTRY>",
      "industryKey": "<INDUSTRY_KEY>",
      "conceptsCn": ["概念标签A", "概念标签B", "概念标签C"],
      "conceptsEn": ["Concept Tag A", "Concept Tag B", "Concept Tag C"]
    },
    "decimals": 18
  },
  "success": true
}

Response Fields (data):

FieldTypeDescription
tokenIdstringToken unique ID
namestringFull token name (e.g. <TOKEN_DISPLAY_NAME>)
symbolstringToken symbol (e.g. <TOKEN_SYMBOL_ON>)
tickerstringUnderlying stock ticker (e.g. <UNDERLYING_TICKER>)
iconstringIcon image relative path. To get the full URL, prepend https://bin.bnbstatic.com (e.g. https://bin.bnbstatic.com/images/web3-data/public/token/logos/<TOKEN_ID>.png)
dailyAttestationReportsstringDaily attestation report relative path. Prepend https://bin.bnbstatic.com to get the full URL
monthlyAttestationReportsstringMonthly attestation report relative path. Prepend https://bin.bnbstatic.com to get the full URL
companyInfoobjectCompany details (see below)
decimalsintegerToken decimals (typically 18)

Company Info Fields (data.companyInfo):

FieldTypeDescription
companyNamestringCompany name in English
companyNameZhstringCompany name in Chinese
homepageUrlstringCompany homepage URL
descriptionstringCompany description (English)
descriptionZhstringCompany description (Chinese)
ceostringCEO name
industrystringIndustry classification
industryKeystringIndustry i18n key
conceptsCnstring[]Concept/theme tags in Chinese
conceptsEnstring[]Concept/theme tags in English (e.g. Concept Tag A, Concept Tag B)

API 3: Market Status

Method: GET

URL:

https://www.binance.com/bapi/defi/v1/public/wallet-direct/buw/wallet/market/token/rwa/market/status/ai

Request Parameters: None

Headers: Accept-Encoding: identity

Example:

curl 'https://www.binance.com/bapi/defi/v1/public/wallet-direct/buw/wallet/market/token/rwa/market/status/ai' \
  -H 'Accept-Encoding: identity' \
  -H 'User-Agent: binance-web3/1.1 (Skill)'

Response:

{
  "code": "000000",
  "data": {
    "openState": false,
    "reasonCode": "MARKET_PAUSED",
    "reasonMsg": "Paused for session transition",
    "nextOpen": "2026-03-23T08:01:00Z",
    "nextClose": "2026-03-23T13:29:00Z",
    "nextOpenTime": 1774252860000,
    "nextCloseTime": 1774272540000
  },
  "success": true
}

Note: The sample above is captured with openState=false (market closed/paused), so nextOpen is earlier than nextClose.

Response Fields (data):

FieldTypeDescription
openStatebooleanWhether the Ondo market is currently open for trading
reasonCodestring|nullReason code if market is not in normal trading state (see Reason Codes)
reasonMsgstring|nullHuman-readable reason message
nextOpenstringNext market open time from current state (ISO 8601 UTC)
nextClosestringNext market close time from current state (ISO 8601 UTC)
nextOpenTimenumberNext market open time from current state (Unix timestamp in ms)
nextCloseTimenumberNext market close time from current state (Unix timestamp in ms)

Interpretation: These fields are state-dependent. When openState=true, nextClose is expected to be earlier than nextOpen (market closes before the next open). When openState=false, nextOpen is expected to be earlier than nextClose (market opens before the next close).


API 4: Asset Market Status

Method: GET

URL:

https://www.binance.com/bapi/defi/v1/public/wallet-direct/buw/wallet/market/token/rwa/asset/market/status/ai

Request Parameters:

ParameterTypeRequiredDescription
chainIdstringYesChain ID
contractAddressstringYesToken contract address

Headers: Accept-Encoding: identity

Example:

curl 'https://www.binance.com/bapi/defi/v1/public/wallet-direct/buw/wallet/market/token/rwa/asset/market/status/ai?chainId=56&contractAddress=<CONTRACT_ADDRESS>' \
  -H 'Accept-Encoding: identity' \
  -H 'User-Agent: binance-web3/1.1 (Skill)'

Response:

{
  "code": "000000",
  "data": {
    "openState": false,
    "marketStatus": "closed",
    "reasonCode": "MARKET_CLOSED",
    "reasonMsg": null,
    "nextOpenTime": 1774252860000,
    "nextCloseTime": 1774272540000
  },
  "success": true
}

Response Fields (data):

FieldTypeDescription
openStatebooleanWhether this specific asset is available for trading
marketStatusstringCurrent session: premarket, regular, postmarket, overnight, closed, pause
reasonCodestringStatus reason code (see Reason Codes below)
reasonMsgstring|nullHuman-readable reason message (populated when paused/limited)
nextOpenTimenumberNext open time (Unix timestamp in ms)
nextCloseTimenumberNext close time (Unix timestamp in ms)

Reason Codes

reasonCodeDescription
TRADINGNormal trading
MARKET_CLOSEDMarket is closed (outside trading hours)
MARKET_PAUSEDMarket-wide trading halt
ASSET_PAUSEDThis specific asset is paused (see Corporate Actions below)
ASSET_LIMITEDThis specific asset has trading restrictions (see Corporate Actions below)
UNSUPPORTEDAsset is not supported
MARKET_MAINTENANCESystem maintenance

Corporate Actions (when ASSET_PAUSED or ASSET_LIMITED)

When an asset is paused or limited, the reasonMsg field indicates the specific corporate action:

reasonCodereasonMsgDescription
ASSET_PAUSEDcash_dividendCash dividend distribution
ASSET_PAUSEDstock_dividendStock dividend distribution
ASSET_PAUSEDstock_splitStock split
ASSET_PAUSEDmergerCompany merger
ASSET_PAUSEDacquisitionCompany acquisition
ASSET_PAUSEDspinoffCorporate spinoff
ASSET_PAUSEDmaintenanceAsset-level maintenance
ASSET_PAUSEDcorporate actionOther corporate action
ASSET_LIMITEDearningsEarnings release — trading restricted but not fully paused

API 5: RWA Dynamic V2

Method: GET

URL:

https://www.binance.com/bapi/defi/v2/public/wallet-direct/buw/wallet/market/token/rwa/dynamic/ai

Request Parameters:

ParameterTypeRequiredDescription
chainIdstringYesChain ID
contractAddressstringYesToken contract address

Headers: Accept-Encoding: identity

Example:

curl 'https://www.binance.com/bapi/defi/v2/public/wallet-direct/buw/wallet/market/token/rwa/dynamic/ai?chainId=56&contractAddress=<CONTRACT_ADDRESS>' \
  -H 'Accept-Encoding: identity' \
  -H 'User-Agent: binance-web3/1.1 (Skill)'

Response:

{
  "code": "000000",
  "data": {
    "symbol": "<TOKEN_SYMBOL_ON>",
    "ticker": "<UNDERLYING_TICKER>",
    "tokenInfo": {
      "price": "310.384196924055952519",
      "priceChange24h": "1.09518626611014170",
      "priceChangePct24h": "0.354098021064624509",
      "totalHolders": "1023",
      "sharesMultiplier": "1.001084338309087472",
      "volume24h": "8202859508.959922580629343392",
      "marketCap": "7116321.021286604958613714702150000306622972",
      "fdv": "7116321.021286604958613714702150000306622972",
      "circulatingSupply": "22927.459232171569002788",
      "maxSupply": "22927.459232171569002788"
    },
    "stockInfo": {
      "price": null,
      "priceHigh52w": "328.83",
      "priceLow52w": "140.53",
      "volume": "26429618",
      "averageVolume": "36255295",
      "sharesOutstanding": "5818000000",
      "marketCap": "1805815257704.157531755542",
      "turnoverRate": "0.4543",
      "amplitude": null,
      "priceToEarnings": "29.93",
      "dividendYield": "0.27",
      "priceToBook": null,
      "lastCashAmount": null
    },
    "statusInfo": {
      "openState": null,
      "marketStatus": null,
      "reasonCode": null,
      "reasonMsg": null,
      "nextOpenTime": null,
      "nextCloseTime": null
    },
    "limitInfo": {
      "maxAttestationCount": "1500",
      "maxActiveNotionalValue": "450000"
    }
  },
  "success": true
}

Response Fields

Top-level (data):

FieldTypeDescription
symbolstringToken symbol (e.g. <TOKEN_SYMBOL_ON>)
tickerstringUnderlying stock ticker (e.g. <UNDERLYING_TICKER>)
tokenInfoobjectOn-chain token data
stockInfoobjectUS stock fundamentals
statusInfoobjectMarket/asset trading status (same schema as API 4)
limitInfoobjectOrder limit information

Token Info (data.tokenInfo):

FieldTypeDescription
pricestringOn-chain token price (USD) — per-token, not per-share (see Key Concept above)
priceChange24hstring24h price change (USD)
priceChangePct24hstring24h price change (%)
totalHoldersstringNumber of on-chain holders
sharesMultiplierstringSame as multiplier in API 1 (see Key Concept above, Notes §6)
volume24hstring⚠️ Misleading: This is the US stock trading volume in USD, NOT on-chain DEX volume
marketCapstringOn-chain market cap (USD) = circulatingSupply × price
fdvstringFully diluted valuation (USD)
circulatingSupplystringCirculating supply (token units)
maxSupplystringMaximum supply (token units)

Stock Info (data.stockInfo):

FieldTypeDescription
pricestring|nullUS stock price (USD). May be null outside trading hours
priceHigh52wstring52-week high price (USD)
priceLow52wstring52-week low price (USD)
volumestring⚠️ US stock volume in shares (not USD). Multiply by price to get USD value
averageVolumestringAverage daily volume (shares)
sharesOutstandingstringTotal shares outstanding
marketCapstringUS stock total market cap (USD)
turnoverRatestringTurnover rate (%)
amplitudestring|nullIntraday amplitude (%)
priceToEarningsstringP/E ratio (TTM)
dividendYieldstringDividend yield (TTM, percentage value: 0.27 means 0.27%)
priceToBookstring|nullP/B ratio
lastCashAmountstring|nullMost recent cash dividend amount per share (USD)

Status Info (data.statusInfo):

Same schema as API 4 response. See Asset Market Status for field details and reason codes.

Limit Info (data.limitInfo):

Shortened here. Read the whole file on GitHub.

Signals

GitHub stars
44k
Forks
9k
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
binance-tokenized-securities-info
Source
github.com/ccxt/ccxt