MoneyMintIdea APImoneymintidea.com ↗
Access gold rates, silver rates, IPO details, share price targets, and financial articles from MoneyMintIdea.com via 4 structured JSON endpoints.
What is the MoneyMintIdea API?
The MoneyMintIdea API exposes financial content from moneymintidea.com across 4 endpoints, covering gold and silver rates, IPO information, share price targets, and related investment articles. The search_posts endpoint lets you query the full site by keyword and returns paginated results with titles, excerpts, dates, and category metadata. The get_post endpoint retrieves full article content — both HTML and plain text — for any individual post.
curl -X GET 'https://api.parse.bot/scraper/4f13a694-ebe8-4849-918d-743ca7c499a6/search_posts' \ -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 moneymintidea-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.
"""
MoneyMintIdea API Client
Access financial content from MoneyMintIdea.com including gold rates, silver rates,
IPO information, share price targets, and other financial articles.
Get your API key from: https://parse.bot/settings
"""
import os
import requests
from typing import Optional, Dict, Any, List
class ParseClient:
"""Client for interacting with the MoneyMintIdea Parse API."""
def __init__(self, api_key: Optional[str] = None):
"""
Initialize the Parse API client.
Args:
api_key: API key for authentication. If not provided, uses PARSE_API_KEY env var.
"""
self.base_url = "https://api.parse.bot"
self.scraper_id = "4f13a694-ebe8-4849-918d-743ca7c499a6"
self.api_key = api_key or os.getenv("PARSE_API_KEY")
if not self.api_key:
raise ValueError("API key must be provided or set as PARSE_API_KEY environment variable")
def _call(self, endpoint: str, method: str = "POST", **params) -> Dict[str, Any]:
"""
Make an API call to the Parse bot.
Args:
endpoint: The API endpoint name
method: HTTP method (GET or POST)
**params: Query parameters or request body parameters
Returns:
Parsed JSON response
"""
url = f"{self.base_url}/scraper/{self.scraper_id}/{endpoint}"
headers = {
"X-API-Key": self.api_key,
"Content-Type": "application/json"
}
if method.upper() == "GET":
response = requests.get(url, headers=headers, params=params)
elif method.upper() == "POST":
response = requests.post(url, headers=headers, json=params)
else:
raise ValueError(f"Unsupported HTTP method: {method}")
response.raise_for_status()
return response.json()
def search_posts(self, query: str, per_page: int = 10, page: int = 1) -> Dict[str, Any]:
"""
Search posts by keyword across the entire site.
Args:
query: Search keyword (e.g., 'gold rate', 'IPO', 'silver price')
per_page: Number of results per page (1-100), default 10
page: Page number for pagination, default 1
Returns:
Dictionary containing posts array and pagination info
"""
return self._call(
"search_posts",
method="GET",
query=query,
per_page=per_page,
page=page
)
def get_posts_by_category(
self,
category: str,
per_page: int = 10,
page: int = 1
) -> Dict[str, Any]:
"""
Get posts filtered by category slug.
Args:
category: Category slug (e.g., 'gold-price-today', 'upcoming-ipo')
per_page: Number of results per page (1-100), default 10
page: Page number for pagination, default 1
Returns:
Dictionary containing posts array and pagination info
"""
return self._call(
"get_posts_by_category",
method="GET",
category=category,
per_page=per_page,
page=page
)
def get_post(self, slug: str) -> Dict[str, Any]:
"""
Get a single post by its URL slug with full content.
Args:
slug: Post URL slug (e.g., 'gold-rate-today', 'gold-rate-in-bhopal')
Returns:
Dictionary containing full post data including HTML and text content
"""
return self._call("get_post", method="GET", slug=slug)
def get_categories(self) -> Dict[str, Any]:
"""
Get all available content categories with their post counts.
Returns:
Dictionary containing array of category objects
"""
return self._call("get_categories", method="GET")
def main():
"""Demonstrate practical workflow with the MoneyMintIdea API."""
# Initialize client
client = ParseClient()
print("=" * 80)
print("MoneyMintIdea API - Practical Usage Example")
print("=" * 80)
# 1. Get all available categories
print("\n1. Fetching available categories...")
categories_data = client.get_categories()
categories = categories_data.get("categories", [])
print(f" Found {len(categories)} categories:")
for cat in categories[:5]: # Show first 5
print(f" - {cat['name']} ({cat['slug']}) - {cat['count']} posts")
# 2. Get recent posts from "Gold Price Today" category
print("\n2. Fetching recent gold price posts...")
gold_posts = client.get_posts_by_category(category="gold-price-today", per_page=3)
print(f" Found {gold_posts['total']} total gold price posts")
print(f" Showing page {gold_posts['page']} of {gold_posts['total_pages']}")
print("\n Recent Gold Price Articles:")
gold_post_list: List[Dict[str, Any]] = gold_posts.get("posts", [])
for post in gold_post_list:
print(f"\n • Title: {post['title']}")
print(f" Date: {post['date']}")
print(f" URL: {post['link']}")
print(f" Excerpt: {post['excerpt'][:80]}...")
# 3. Get detailed content from the first gold price post
if gold_post_list:
first_post = gold_post_list[0]
print(f"\n3. Fetching full content for: {first_post['title']}")
full_post = client.get_post(slug=first_post['slug'])
print(f"\n Post Details:")
print(f" Title: {full_post['title']}")
print(f" Published: {full_post['date']}")
print(f" Last Modified: {full_post['modified']}")
print(f"\n Content Preview (first 200 chars):")
content = full_post.get('content_text', '')
print(f" {content[:200]}..." if len(content) > 200 else f" {content}")
# 4. Search for specific financial content
print("\n4. Searching for 'IPO allotment' posts...")
search_results = client.search_posts(query="IPO allotment", per_page=3)
print(f" Found {search_results['total']} total results")
print(f" Showing page {search_results['page']} of {search_results['total_pages']}")
search_posts_list: List[Dict[str, Any]] = search_results.get("posts", [])
if search_posts_list:
print("\n Top Search Results:")
for i, post in enumerate(search_posts_list, 1):
print(f"\n {i}. {post['title']}")
print(f" Date: {post['date']}")
print(f" Link: {post['link']}")
else:
print(" No results found for this search.")
# 5. Get posts from "Share Price Target" category
print("\n5. Fetching share price target articles...")
share_posts = client.get_posts_by_category(category="share-price-target", per_page=2)
print(f" Total share price target posts: {share_posts['total']}")
share_post_list: List[Dict[str, Any]] = share_posts.get("posts", [])
print("\n Latest Share Price Targets:")
for post in share_post_list:
print(f"\n • {post['title']}")
print(f" Posted: {post['date']}")
print("\n" + "=" * 80)
print("Demo completed successfully!")
print("=" * 80)
if __name__ == "__main__":
main()Search posts by keyword across the entire site. Returns paginated results with title, excerpt, date, and category information.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination. |
| queryrequired | string | Search keyword (e.g. 'gold rate', 'IPO', 'silver price') |
| per_page | integer | Number of results per page, between 1 and 100. |
{
"type": "object",
"fields": {
"page": "integer current page",
"posts": "array of post objects with id, title, slug, date, link, categories, excerpt",
"total": "integer total matching posts",
"per_page": "integer results per page",
"total_pages": "integer total pages available"
},
"sample": {
"page": 1,
"posts": [
{
"id": 36482,
"date": "2026-06-10T23:45:32",
"link": "https://moneymintidea.com/gold-rate-in-bhopal/",
"slug": "gold-rate-in-bhopal",
"title": "Todays Gold Rate in Bhopal, 18, 22 24 Carat Gold Price on ([today_date])",
"excerpt": "Bhopal one of Madhya Pradesh Leading jewellery market...",
"categories": [
366
]
}
],
"total": 441,
"per_page": 3,
"total_pages": 147
}
}About the MoneyMintIdea API
Endpoints and Data Coverage
Four endpoints cover the main content on MoneyMintIdea. search_posts accepts a required query string (e.g. 'gold rate', 'IPO', 'silver price') plus optional page and per_page parameters (1–100 results per page). It returns an array of post objects, each containing id, title, slug, date, link, categories, and excerpt, along with total, total_pages, and per_page for pagination control. This makes it suitable for broad discovery across the site's financial topics.
Category and Post Browsing
get_categories returns all available content categories with their id, name, slug, and post count. You pass those category slugs to get_posts_by_category to retrieve posts scoped to a single topic — for example, anchor-investor, fixed-deposit, or diesel-price-today. Results are ordered newest-first and support the same page and per_page pagination as search. The response includes a category field confirming the slug used.
Full Post Content
get_post takes a slug (obtained from search or category results) and returns the full article. Key fields include content_html and content_text, both truncated to the first 5000 characters, along with title, excerpt, date (ISO datetime), modified, link, and categories as an array of category IDs. This is the primary endpoint for retrieving the body of any rate-update article or IPO analysis piece.
The MoneyMintIdea API is a managed, monitored endpoint for moneymintidea.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when moneymintidea.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 moneymintidea.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 gold rate updates by querying
search_postswith 'gold rate today' and readingcontent_textfromget_post. - Monitor IPO announcements by browsing the anchor-investor category via
get_posts_by_category. - Build a silver price tracker using
search_postswith 'silver rate' and paginating through results. - Aggregate share price target articles by searching for specific stock tickers or company names.
- Discover trending financial topics by listing categories and their post counts via
get_categories. - Retrieve full article content for fixed-deposit rate comparisons using the
fixed-depositcategory slug. - Feed a financial news digest by pulling the latest posts from multiple categories and extracting their
excerptanddatefields.
| 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 MoneyMintIdea have an official developer API?+
What does `get_post` actually return, and is the full article body available?+
content_html and content_text for the article body, each capped at the first 5000 characters. It also includes title, excerpt, date, modified, link, slug, and categories (as an array of category IDs). For most rate-update articles, 5000 characters covers the substantive content.Can I filter posts by multiple categories at once?+
get_posts_by_category accepts exactly one category slug per request. Multi-category filtering is not currently supported. The API covers single-category browsing and keyword search via search_posts. You can fork it on Parse and revise to add multi-category filtering as a new endpoint.Are real-time live price tickers exposed, or only article-based rates?+
date and modified fields. You can fork this API on Parse and revise it to poll the newest posts on a schedule for near-real-time rate monitoring.Is historical price data queryable by date range?+
date fields are returned in results, so you can filter client-side after fetching. You can fork this API on Parse and revise to add date-range filtering as an endpoint parameter.