Press Monitor
https://www.pressmonitor.com/en/docs/news-xshe-api-mcp
The Ticker-Driven Shenzhen Stock Exchange (XSHE) News API provides real-time, multilingual news access for all XSHE-listed companies. Access critical market-moving news across 100+ languages by simply providing a stock ticker symbol. This API is designed for traders, investors, wealth management platforms, and trading terminals.
API Version: 1.0.1
https://api.pressmonitor.com/news-xshe/v1
All endpoints require Bearer Token authentication with the format:
Authorization: Bearer secret_key:subscription_id
Example:
curl -H "Authorization: Bearer YOUR_SECRET_KEY:YOUR_SUBSCRIPTION_ID" \ "https://api.pressmonitor.com/news-xshe/v1/news-headlines?ticker=2594"
/names
- Resolve Company Names to TickersMethod: GET
Operation ID: resolveNames
Convert partial or full company names into XSHE ticker symbols.
Parameters:
name
(required) - Partial or full company name (e.g., 'BYD' → 2594, BYD Company Limited)count
(optional) - Maximum number of results (default: 20, max: 100)Example:
curl -H "Authorization: Bearer YOUR_TOKEN" \ "https://api.pressmonitor.com/news-xshe/v1/names?name=BYD&count=5"
Response:
[ { "ticker": "2594", "name": "BYD Company Limited" }, { "ticker": "2936", "name": "Ping An Bank Co., Ltd." } ]
/news-headlines
- News HeadlinesMethod: GET
Operation ID: newsHeadlines
Credits: 1 per story
Returns basic news headlines with titles and URLs.
Parameters:
ticker
(required) - XSHE stock ticker symbol (e.g., 2594, 2936)country_code
(optional) - Filter by ISO-3166-1 alpha-2 country codeslang_code
(optional) - Filter by ISO-639-1 language codescount
(optional) - Number of results (default: 20)sort
(optional) - latest
(default) or relevance
search_after
(optional) - Pagination cursor (only with sort=latest
)Example:
curl -H "Authorization: Bearer YOUR_TOKEN" \ "https://api.pressmonitor.com/news-xshe/v1/news-headlines?ticker=2594&lang_code=en&count=10&sort=latest"
Response Fields:
id
- Unique story identifiertitle
- Article headlineurl
- Link to original articlesource
- Publication namelang_code
- Language codecountry_code
- Source countryts
- Publish timestamp (epoch seconds)/news-briefs
- News BriefsMethod: GET
Operation ID: newsBriefs
Credits: 2 per story
Returns headlines with short AI-generated summaries.
Parameters: Same as /news-headlines
Example:
curl -H "Authorization: Bearer YOUR_TOKEN" \ "https://api.pressmonitor.com/news-xshe/v1/news-briefs?ticker=2936&country_code=CN&sort=relevance"
Response Fields: All headline fields plus:
description
- AI-generated brief summaryimages
- Array of image URLscaption
- Image caption/news-fulltext
- Full ArticlesMethod: GET
Operation ID: newsFulltext
Credits: 5 per story
Returns complete articles with full body text.
Parameters: Same as /news-headlines
Example:
curl -H "Authorization: Bearer YOUR_TOKEN" \ "https://api.pressmonitor.com/news-xshe/v1/news-fulltext?ticker=2415&lang_code=en&count=5"
Response Fields: All brief fields plus:
body
- Full article text/news-fulltext-metadata
- Full Articles + MetadataMethod: GET
Operation ID: newsFulltextMetadata
Credits: 7 per story
Returns full articles with enriched metadata for knowledge graphs and compliance.
Parameters: Same as /news-headlines
Example:
curl -H "Authorization: Bearer YOUR_TOKEN" \ "https://api.pressmonitor.com/news-xshe/v1/news-fulltext-metadata?ticker=300750&count=3"
Response Fields: All fulltext fields plus:
wikidata
- Wikidata IDs and metadata (object)entities
- Named entities (array of objects)mediatopics
- IPTC Media Topics subject codes (array)Add -translated
suffix to any news endpoint for machine translation. Requires additional target_lang_code
parameter.
/news-headlines-translated
(2 credits/story)/news-briefs-translated
(4 credits/story)/news-fulltext-translated
(10 credits/story)/news-fulltext-metadata-translated
(14 credits/story)Example:
curl -H "Authorization: Bearer YOUR_TOKEN" \ "https://api.pressmonitor.com/news-xshe/v1/news-headlines-translated?ticker=2594&target_lang_code=zh&count=5"
Translation Response Format: Each item includes a tr
object with translated fields:
{ "id": "...", "title": "Original Title", "tr": { "title": "翻译标题", "description": "翻译描述", "source_lang_code": "en", "target_lang_code": "zh" } }
When using sort=latest
, responses include a next
object with pagination info:
{ "items": [...], "credits": {...}, "next": { "search_after": "opaque_cursor_string", "count": 20, "sort": "latest" } }
Use search_after
value in your next request:
curl -H "Authorization: Bearer YOUR_TOKEN" \ "https://api.pressmonitor.com/news-xshe/v1/news-headlines?ticker=2594&search_after=CURSOR&sort=latest"
All responses include:
X-Request-ID
- Request identifier for debuggingX-RateLimit-Limit
- Max requests in current windowX-RateLimit-Remaining
- Remaining requestsX-RateLimit-Reset
- Epoch seconds until quota resetsAll responses include a credits
object:
{ "credits": { "rate": 1, "quantity": 15, "total": 9850, "request_id": "req_abc123" } }
rate
- Credits per storyquantity
- Credits charged for this responsetotal
- Total credits remainingrequest_id
- Request identifierAll errors follow RFC 7807 Problem Details format:
{ "type": "about:blank", "title": "Bad Request", "status": 400, "detail": "Missing required parameter: ticker", "instance": "/news-headlines" }
HTTP Status Codes:
400
- Bad request (invalid parameters)401
- Unauthorized (missing/invalid token)403
- Forbidden (subscription/plan restriction)429
- Too Many Requests (rate limit exceeded)500
- Server errorsearch_after
for large result sets with sort=latest
credits.total
in responsesX-RateLimit-*
headerssort=relevance
for topic research, sort=latest
for real-time monitoring# 1. Get latest headlines curl -H "Authorization: Bearer YOUR_TOKEN" \ "https://api.pressmonitor.com/news-xshe/v1/news-headlines?ticker=2594&lang_code=en&count=20&sort=latest" # 2. Get detailed briefs for important stories curl -H "Authorization: Bearer YOUR_TOKEN" \ "https://api.pressmonitor.com/news-xshe/v1/news-briefs?ticker=2594&lang_code=en&count=5&sort=relevance" # 3. Fetch full articles for deep analysis curl -H "Authorization: Bearer YOUR_TOKEN" \ "https://api.pressmonitor.com/news-xshe/v1/news-fulltext?ticker=2594&lang_code=en&count=3" # 4. Get enriched metadata for compliance curl -H "Authorization: Bearer YOUR_TOKEN" \ "https://api.pressmonitor.com/news-xshe/v1/news-fulltext-metadata?ticker=2594&count=1"
Docs: https://www.pressmonitor.com/en/docs/news-xshe-api-mcp
Email: support@pressmonitor.com