Com APIchinamoney.com.cn ↗
Access CNY central parity rates, SHIBOR, LPR, RMB FX spot quotes, and interbank market bulletins from chinamoney.com.cn via a structured JSON API.
What is the Com API?
This API exposes 10 endpoints covering China's interbank and foreign exchange market data from the China Foreign Exchange Trade System (CFETS) and National Interbank Funding Center. You can retrieve live SHIBOR rates across all eight tenors via get_shibor_rates, pull CNY central parity history with date-range pagination, fetch 1-year and 5-year Loan Prime Rates, and access RMB exchange rate indices for the CFETS, BIS, and SDR baskets.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/aab16bd2-93d6-4449-94d8-5764464da33d/get_cny_central_parity_rate' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace chinamoney-com-cn-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""China Money API - Walkthrough: exchange rates, SHIBOR, LPR, and FX quotes."""
from parse_apis.china_money_api import ChinaMoney, RateNotFound
client = ChinaMoney()
# Latest central parity rates — all major pairs against CNY.
for rate in client.parityrates.list(limit=5):
print(rate.vrt_e_name, rate.price, rate.bp_double)
# Historical parity rates for USD/CNY over a date range.
for record in client.parityrates.history(currency="USD/CNY", start_date="2026-06-01", end_date="2026-06-10", limit=3):
print(record.date, record.values)
# SHIBOR rates across all tenors.
for shibor in client.shiborrates.list(limit=8):
print(shibor.term_code, shibor.shibor, shibor.shib_id_up_down)
# FX spot quotes — bid/ask for interbank pairs.
quote = client.fxspotquotes.list(limit=1).first()
if quote:
print(quote.ccy_pair, quote.bid_prc, quote.ask_prc)
# Reference rate history with typed error handling.
try:
for hist in client.referencerates.history(currency="CNY/AOA", start_date="2026-01-01", end_date="2026-03-01", limit=1):
print(hist.pair, hist.ratelist)
except RateNotFound as exc:
print(f"Currency not found: {exc}")
print("exercised: parityrates.list / parityrates.history / shiborrates.list / fxspotquotes.list / referencerates.history")
Fetch the latest CNY central parity rates published by CFETS. Returns rates for all major currency pairs against CNY as of the most recent trading day. Each record includes the pair name, rate, and basis point change from the previous day.
No input parameters required.
{
"type": "object",
"fields": {
"data": "object with lastDate and pairChange info",
"head": "object containing API metadata (version, rep_code, timestamp)",
"records": "array of rate records with vrtEName (pair name), price, bp (basis points change)"
},
"sample": {
"data": {
"data": {
"lastDate": "2026-06-11 9:15",
"lastDateEn": "11/06/2026 9:15"
},
"head": {
"ts": 1781141140608,
"version": "2.0",
"rep_code": "200"
},
"records": [
{
"bp": "20.00",
"price": "6.8150",
"vrtCode": "1",
"bpDouble": 20,
"vrtEName": "USD/CNY",
"foreignCName": "USD"
}
]
},
"status": "success"
}
}About the Com API
Exchange Rates and Central Parity
The get_cny_central_parity_rate endpoint returns the current day's official CFETS-published rates for all major currency pairs against CNY, including the vrtEName pair identifier, price, and bp (basis-point change). For historical analysis, get_cny_central_parity_rate_history accepts start_date, end_date, currency (e.g. USD/CNY), page_num, and page_size parameters and returns paginated daily records with a values array. The companion get_cny_reference_rate and get_cny_reference_rate_history endpoints use the CNY/XXX format (e.g. CNY/INR, CNY/AOA) and cover a broader set of currencies, including monthly average rates delivered as datelist and ratelist arrays alongside a date_columns field listing the months spanned.
Benchmark Rates
get_shibor_rates returns the Shanghai Interbank Offered Rate for all eight standard tenors — O/N, 1W, 2W, 1M, 3M, 6M, 9M, and 1Y — with each record carrying termCode, shibor (rate as a percentage string), and shibIdUpDown (session change). get_lpr_rates returns the Loan Prime Rate for 1-year and 5-year tenors in the same response shape. Both endpoints include a showDateEN field identifying the publication date.
FX Spot Quotes and Indices
get_rmb_fx_spot_quotes provides live interbank RMB/FX spot market quotes with ccyPair, bidPrc, askPrc, and midprice fields. get_rmb_exchange_rate_index returns the three major RMB basket indices — CFETS, BIS, and SDR — with indexRate and indexBp fields per basket type. get_cny_monthly_average_rate delivers monthly average central parity prices for all currency pairs, useful for accounting and compliance workflows.
Market Bulletins
get_daily_bulletin retrieves the interbank market's daily publication list. Each record includes busi_date, tag (category such as lending, repo, bond trading, or SHIBOR), and dailyName. This endpoint surfaces the bulletin directory rather than full document text.
The Com API is a managed, monitored endpoint for chinamoney.com.cn — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when chinamoney.com.cn changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official chinamoney.com.cn API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Tracking daily CNY central parity movements against USD, EUR, and other major currencies using
bpandpricefields - Building a SHIBOR rate monitor that alerts on tenor-specific changes using
shibIdUpDownfrom get_shibor_rates - Backtesting FX strategies with historical daily CNY central parity data via paginated get_cny_central_parity_rate_history
- Comparing RMB basket performance across CFETS, BIS, and SDR indices for macro research
- Integrating LPR rates into loan pricing models that reference 1-year and 5-year benchmarks
- Generating monthly FX reports using CNY/XXX average rates from get_cny_reference_rate_history
- Monitoring interbank market bulletin categories (repo, lending, bond trading) via get_daily_bulletin
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does chinamoney.com.cn offer an official developer API?+
How does pagination work for historical CNY central parity data?+
page_num and page_size integer parameters. The response data object includes total, pageTotal, pageNum, and pageSize fields so you can iterate through result pages. You can also filter by a single pair with the currency parameter (e.g. USD/CNY) or omit it to receive all pairs.What is the difference between central parity rates and reference rates?+
Does the API return full text of daily market bulletins?+
busi_date, tag, and dailyName — but not the document body or downloadable file. You can fork this API on Parse and revise it to add an endpoint that fetches individual bulletin content.