MySteel APIgc.mysteel.com ↗
Access real-time Chinese steel market prices, industry news headlines, and historical price index trends from gc.mysteel.com via a structured JSON API.
What is the MySteel API?
The gc.mysteel.com API provides 3 endpoints covering real-time spot prices across Chinese steel product categories, recent industry news headlines, and historical price index time-series data. The get_market_prices endpoint returns price objects with fields for product, city, price, change, specification, and date — covering categories like Rebar, Wire Rod, Hot-rolled Coil, Cold-rolled Coil, Medium Plate, and H-beam. It is aimed at procurement teams, commodity analysts, and trading systems that need structured steel market data.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/b30709fd-7d75-4b42-9c3e-0c14b3a331ed/get_market_prices' \ -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 gc-mysteel-com-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.
"""MySteel Steel Market API — bounded, re-runnable walkthrough."""
from parse_apis.mysteel_steel_market_api import MySteel, IndexNotFound
client = MySteel()
# Fetch current steel market prices (ticker + tables)
for price in client.markets.get_prices(limit=5):
print(price.product, price.price, price.change, price.city)
# Latest industry news headlines
for article in client.markets.get_news(limit=3):
print(article.title, article.url, article.date)
# Historical price index trend — construct by known code, then refresh
trend_cursor = client.priceindextrend("ID00187733").refresh(limit=1).first()
if trend_cursor:
print(trend_cursor.index_code, len(trend_cursor.data_points))
point = trend_cursor.data_points[0]
print(point.date, point.value)
# Typed error handling
try:
bad = client.priceindextrend("INVALID_CODE").refresh(limit=1).first()
except IndexNotFound as exc:
print(f"Index not found: {exc.index_codes}")
print("exercised: markets.get_prices / markets.get_news / priceindextrend.refresh / IndexNotFound")
Extracts current steel market prices from the gc.mysteel.com homepage. Returns prices from the real-time ticker (today's spot prices by product and city) and from product category tables (Rebar, Wire Rod, Hot-rolled, Cold-rolled, Medium Plate, H-beam, etc.). Each price entry includes product name, price in CNY/ton, price change, city, date, and optional specification/material fields. No pagination — returns all visible homepage prices in one call.
No input parameters required.
{
"type": "object",
"fields": {
"prices": "array of price objects each containing product, price, change, city, date, and optional source/specification/material fields"
},
"sample": {
"data": {
"prices": [
{
"city": "螺纹钢(北京-河钢)",
"date": "Today",
"price": "3220",
"change": "平",
"source": "Ticker",
"product": "螺纹钢"
},
{
"city": "热轧板卷(全国均价)",
"date": "Today",
"price": "3397",
"change": "+1",
"source": "Ticker",
"product": "热轧板卷"
},
{
"city": "上海",
"date": "06-11",
"price": "3270",
"change": "0",
"product": "螺纹钢",
"specification": "HRB400 20mm"
}
]
},
"status": "success"
}
}About the MySteel API
Market Price Data
The get_market_prices endpoint returns an array of price objects sourced from the gc.mysteel.com homepage. Each object includes product, price, change, city, date, and optional source, specification, and material fields. Coverage spans major flat and long steel product categories — Rebar, Wire Rod, Hot-rolled Coil, Cold-rolled Coil, Medium Plate, and H-beam — with prices differentiated by city, reflecting China's regional spot market structure. No input parameters are needed; it returns the current visible ticker and category tables in a single call.
News Headlines
get_news_list returns between 5 and 15 recent steel industry news articles from the gc.mysteel.com homepage news section. Each object in the news array contains a title, full url, and date. This is a single-page snapshot — there is no pagination and no filtering by topic or date range. It is suited for monitoring headline sentiment or detecting major market announcements.
Historical Price Index Trends
get_price_index_trend accepts an optional index_codes parameter as a comma-separated list of MySteel index code strings. The default code ID00187733 represents the general composite steel price index (普钢综合价格指数). The response includes a trends array where each entry carries an index_code string and a data_points array of {date, value} objects covering approximately one year of daily readings. The total_dates integer in the response indicates how many date entries were returned. Multiple index codes can be queried in a single call by separating them with commas.
The MySteel API is a managed, monitored endpoint for gc.mysteel.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when gc.mysteel.com 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 gc.mysteel.com 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?+
- Track daily spot price movements for Rebar and Wire Rod across Chinese cities using
get_market_prices. - Monitor the 普钢综合价格指数 composite index trend over the past year with
get_price_index_trend. - Alert procurement systems when the
changefield in a price object exceeds a defined threshold. - Aggregate steel price data by city to compare regional price differentials for logistics planning.
- Feed steel industry headlines from
get_news_listinto a market sentiment scoring pipeline. - Compare multiple MySteel index codes side-by-side by passing a comma-separated list to
index_codes. - Build a time-series dashboard of daily steel price index values using the
data_pointsdate/value pairs.
| 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 MySteel (gc.mysteel.com) offer an official developer API?+
What does `get_market_prices` return, and how are prices differentiated?+
product, price, change, city, date, and optional specification, material, and source fields. Prices are differentiated by both product category (e.g., Rebar, H-beam, Cold-rolled Coil) and city, reflecting regional spot market variation across China.Can I retrieve news articles beyond the homepage listing or filter by topic?+
get_news_list endpoint returns only the 5–15 articles visible in the homepage news section, with no pagination and no topic or keyword filtering. You can fork this API on Parse and revise it to add an endpoint that targets category-specific news pages on gc.mysteel.com.Does the API cover futures prices or only spot prices?+
How far back does the historical price index data go?+
get_price_index_trend endpoint returns approximately one year of daily data points per index code. The total_dates field in the response tells you the exact count of date entries returned. Data beyond roughly one year is not currently exposed by this endpoint.