Parsepad APIparsepad.com ↗
Access the full Parsepad tool catalog via API. List, search, and inspect metadata for compilers, network tools, formatters, and more across 3 endpoints.
What is the Parsepad API?
The Parsepad API exposes 3 endpoints for browsing and inspecting the Parsepad catalog of free online developer utilities. The list_tools endpoint returns every tool in the catalog in a single response, each with a slug, category, popularity score, and action keys. search_tools provides full-text search across tool names, descriptions, and keywords with paginated results and category facets. get_tool returns a tool's technical manifest including its module path, dependencies, features, and complexity tier.
curl -X GET 'https://api.parse.bot/scraper/54c4d281-b96d-4a61-91bf-bb01ecb12f70/list_tools?category=network' \ -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 parsepad-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.
"""Walkthrough: Parsepad SDK — browse and search free online tools."""
from parse_apis.parsepad_com_api import Parsepad, CategoryKey, ToolNotFound
client = Parsepad()
# List all network tools using the category enum filter.
for tool in client.tools.list(category=CategoryKey.NETWORK, limit=5):
print(tool.title, tool.category_key, tool.is_new)
# Search tools by keyword — results auto-paginate.
result = client.tools.search(query="compiler", limit=3).first()
if result:
print(result.title, result.category_label, result.is_server_backed)
# Drill into the manifest for runtime details.
try:
manifest = result.manifest()
print(manifest.module_path, manifest.ui_mode, manifest.complexity_tier)
except ToolNotFound as exc:
print(f"tool gone: {exc}")
print("exercised: tools.list / tools.search / manifest")
List all available tools in the Parsepad catalog. Returns tool metadata including title, description, category, and type. Optionally filter by category key. Results are not paginated — the full catalog is returned in a single response.
| Param | Type | Description |
|---|---|---|
| category | string | Filter tools by category key. When omitted, all tools are returned. Accepted values: network, online-compiler, productivity, finance, data, developer, business, utilities, marketing. |
{
"type": "object",
"fields": {
"tools": "array of tool objects with slug, title, category, description, keywords, isNew, popularityScore, categoryKey, toolType, actionKeys",
"categories": "array of category objects with name and toolCount",
"total_tools": "integer count of tools returned"
},
"sample": {
"data": {
"tools": [
{
"icon": "",
"slug": "bot-score",
"isNew": true,
"title": "Bot Detection Check",
"isBeta": false,
"category": "Network",
"keywords": [
"client-side"
],
"toolType": "utility",
"actionKeys": [
"runtool"
],
"accessModel": "Free",
"categoryKey": "network",
"description": "See how automated your connection looks to a server.",
"primaryTask": "Validate",
"primaryTopic": "URL",
"isServerBacked": false,
"popularityScore": 0
}
],
"categories": [
{
"name": "Business",
"toolCount": 1
},
{
"name": "Network",
"toolCount": 4
}
],
"total_tools": 4
},
"status": "success"
}
}About the Parsepad API
Catalog Access
The list_tools endpoint returns the full Parsepad tool catalog without pagination. Each tool object includes a slug, title, category, categoryKey, description, keywords, popularityScore, isNew, toolType, and actionKeys. An optional category query parameter filters results to a specific category key — accepted values currently include network and online-compiler. The response also carries a categories array listing each category name alongside its toolCount, plus a total_tools integer for the unfiltered or filtered result set.
Search and Discovery
search_tools accepts a required query string matched against tool names, descriptions, and keywords. Results come back paginated — configure page (1-based) and page_size as needed. Each item in the items array includes slug, title, description, categoryKey, toolType, tags, runtimeLabel, and an isServerBacked flag indicating whether the tool runs server-side. The response also provides faceted category breakdowns via a categories array with key, label, and count per facet, and surface-level pagination metadata: total_matching, total_pages, total_tools, and page.
Tool Technical Manifests
Given a slug — obtained from list_tools or search_tools — get_tool returns the tool's runtime manifest. Fields include module_path, template_path, css_path, view_name, ui_mode, features (an array of feature flag strings), dependencies (an array of dependency identifiers), and a complexity_tier integer. This is useful for auditing which tools share dependencies, understanding rendering modes, or filtering tools by complexity.
The Parsepad API is a managed, monitored endpoint for parsepad.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when parsepad.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 parsepad.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?+
- Build a directory or search interface over Parsepad's free developer tools using
list_toolscategory facets and popularity scores - Auto-generate documentation indexes by pulling tool slugs, titles, and descriptions via
search_tools - Filter the catalog to network or compiler tools specifically using the
categoryparameter onlist_tools - Identify server-backed tools versus client-only tools using the
isServerBackedfield fromsearch_tools - Compare dependency graphs across tools by fetching each tool's manifest via
get_tooland inspecting thedependenciesarray - Rank tools by
popularityScorefromlist_toolsto surface the most-used utilities in a given category - Segment tools by
complexity_tierfromget_toolto recommend beginner-friendly versus advanced tools
| 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 Parsepad have an official developer API?+
What does `get_tool` return that `list_tools` does not?+
list_tools returns discovery-oriented metadata: title, description, category, keywords, popularity, and action keys. get_tool returns the tool's technical manifest — module path, template path, CSS path, view name, UI mode, feature flags, dependencies, and a complexity tier integer. These fields are only available on the per-tool endpoint, not in the catalog listing.Can I filter `list_tools` by tool type or popularity threshold?+
list_tools endpoint currently supports filtering by category key only (accepted values: network, online-compiler). Filtering by toolType, popularityScore range, or isNew flag is not available as a direct query parameter. You can fork this API on Parse and revise it to add those filter parameters.Does the API expose tool usage data or user-generated content like comments or ratings?+
popularityScore, nor any user-generated content such as comments, ratings, or saved tool configurations. You can fork this API on Parse and revise it to add an endpoint targeting that data if it becomes available.How does pagination work in `search_tools`?+
search_tools uses 1-based page numbering via the page parameter. Set page_size to control results per page. The response includes total_matching (results matching the query), total_pages, and the current page number. Results are described as auto-iterated across pages, meaning iterating through all pages will yield the full matching set.