Toolify APItoolify.ai ↗
Access AI tools directory data from Toolify.ai: search tools, trending rankings, categories, tool details with FAQs, and top articles via 7 endpoints.
What is the Toolify API?
The Toolify.ai API exposes 7 endpoints covering the full AI tools directory at toolify.ai, including search, trending rankings, category browsing, and article listings. The get_tool_detail endpoint returns name, description, website URL, aggregate rating, tags, structured product info sections, and a FAQ array for any tool identified by its handle. Use search_tools to find handles by keyword, then feed them directly into detail lookups.
curl -X GET 'https://api.parse.bot/scraper/d9b9f4bc-13fc-40c1-86e5-9bbf2377d680/search_tools?query=chatbot' \ -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 toolify-ai-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.
"""Walkthrough: Toolify AI Tools API — discover, search, and drill into AI tools."""
from parse_apis.toolify_ai_tools_api import Toolify, ToolNotFound
client = Toolify()
# Browse trending tools by monthly traffic
for tool in client.trendingtools.list(limit=3):
print(tool.name, tool.monthly_visits, tool.tags)
# Search for tools and drill into the first result's full details
result = client.tools.search(query="image generator", limit=1).first()
if result:
detail = result.details()
print(detail.name, detail.rating, detail.tags)
# Construct a category and list its tools
category = client.category(handle="ai-chatbot")
for t in category.tools(limit=3):
print(t.name, t.description)
# Browse category groups to see the full taxonomy
for group in client.categories.list(limit=2):
print(group.title, [c.name for c in group.values])
# Error handling: catch a missing tool gracefully
try:
client.tools.get(handle="nonexistent-tool-xyz-999")
except ToolNotFound as exc:
print(f"Tool not found: {exc.handle}")
print("exercised: trendingtools.list / tools.search / details / category.tools / categories.list / tools.get")Full-text search across the AI tools directory. Returns matching tools with handle, name, description, and URL. Deduplicates results by handle and caps at 50.
| Param | Type | Description |
|---|---|---|
| queryrequired | string | Search keyword (e.g. 'chatbot', 'image generator') |
{
"type": "object",
"fields": {
"tools": "array of tool objects with handle, name, description, and url",
"total": "integer total number of unique matching tools"
},
"sample": {
"data": {
"tools": [
{
"url": "https://www.toolify.ai/tool/elbot",
"name": "eLBot",
"handle": "elbot",
"description": "Next-generation AI chatbot for instant answers and virtual assistance."
}
],
"total": 226
},
"status": "success"
}
}About the Toolify API
Tool Discovery and Search
The search_tools endpoint accepts a query string (e.g. 'image generator', 'chatbot') and returns a list of matching tool objects — each with handle, name, description, and url — plus a total count of unique matches. Handles returned here are the slugs used to drive get_tool_detail and get_tools_by_category lookups downstream.
get_trending_tools returns up to 50 tools ranked by monthly traffic, with each object including monthly_visits, tags, handle, website, and description. get_new_tools returns the 10 most recently added tools with their categories array, making it straightforward to track what has been listed lately.
Category Navigation
get_category_list returns the full category tree: a groups array where each group contains a title, handle, and values array of subcategories, alongside a flat all_category list that pairs each subcategory handle with its name and tool_count. The integer category_count field gives the total number of categories. Pass any subcategory handle from this response into get_tools_by_category to retrieve up to 50 tools in that category, each with name, handle, website, and description.
Tool Detail and Articles
get_tool_detail accepts a tool handle and returns a detailed object: name, description, website_url, rating (string or null), tags, a product_info object mapping section keys to content strings, and a faq array of question/answer pairs sourced from the tool's listing page. get_top_articles returns paginated article metadata — handle, title, page_description, image, and timestamps — with total, last_page, and current_page fields to support pagination.
The Toolify API is a managed, monitored endpoint for toolify.ai — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when toolify.ai 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 toolify.ai 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?+
- Build an AI tools comparison site using
get_tool_detailto pull ratings, tags, and product info for side-by-side views - Track newly launched AI tools by polling
get_new_toolsdaily and logging thecategoriesandhandlefields - Monitor trending AI tools by category using
get_trending_toolsand filtering on thetagsfield - Populate a category-browsing UI from
get_category_listgroups and drill down withget_tools_by_category - Index AI tool FAQs from
get_tool_detailto build a searchable Q&A dataset across hundreds of tools - Aggregate AI industry articles for a newsletter digest using
get_top_articleswith itstitle,page_description, and timestamp fields - Search competitor tooling landscape by keyword via
search_toolsand analyzing the resultingdescriptionandurlfields
| 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 Toolify.ai have an official developer API?+
What does `get_tool_detail` return beyond basic metadata?+
get_tool_detail returns product_info — an object where each key is a named section from the tool's listing page mapped to its content string — plus a faq array of question/answer pairs and an aggregate rating value (or null if none is listed). This goes beyond the name, description, and URL available in search or trending responses.Does `get_trending_tools` support filtering by category or time period?+
get_trending_tools. It returns up to 50 tools ranked by overall monthly traffic. If you need trending tools scoped to a specific category, you can retrieve the full list and filter client-side on the tags field. You can also fork this API on Parse and revise it to add a category filter parameter pointing to the relevant endpoint.Does the API expose user reviews or individual review text for tools?+
get_tool_detail endpoint returns an aggregate rating value but does not return individual user review text or reviewer metadata. You can fork this API on Parse and revise it to add an endpoint targeting individual review data from each tool's listing page.How does pagination work for articles?+
get_top_articles returns current_page, last_page, and total in every response. The endpoint does not currently accept a page number parameter — it returns the first page. You can fork this API on Parse and revise it to add a page input parameter to traverse the full article archive.