This is the main read endpoint for the public catalog.
Returns only approved listings
Pending submissions do not appear here. This endpoint is strictly for the published directory.
Common uses
- agent-native catalog discovery with
is_agent=true - stack-specific browsing with
tool=... - filterable browse surfaces for external tools and automations
GET
/api/v1/productsUse this endpoint to inspect the public catalog, power integrations, or fetch filtered inventory for a specific stack, audience, or agent layer.
Auth
No API keys. No account auth. Public JSON endpoints only.
Review model
Read-only endpoint over approved catalog data.
Cache
Dynamic server response backed by the approved catalog query layer.
Example request
curl "https://www.madewithstack.com/api/v1/products?limit=10&sort=newest&is_agent=true"
Query parameters
| Field | Type | Required | Description |
|---|---|---|---|
offset | number | No | Pagination offset. Defaults to 0. |
limit | number | No | Page size from 1 to 48. Defaults to 24. |
sort | "newest" | "popular" | No | Sort order. Defaults to "newest". |
category | tool category slug | No | Filter by tool category. |
audience | "for-developers" | "for-founders" | "b2b" | "consumer" | "all" | No | Filter by audience tag. |
tool | tool slug | No | Filter by a specific tool slug such as supabase. |
is_agent | "true" | No | Return only Agent Directory listings. |
qualification_type | "agent_native" | "agent_built" | "agentic_workflow" | No | Filter Agent Directory results by qualification type. |
claim_status | "claim_submitted" | "claim_verified" | No | Filter Agent Directory results by public claim-review state. |
agent_use_case | "support" | "research" | "operations" | "sales" | "voice" | "browser_automation" | No | Filter Agent Directory results by primary use case. |
Responses
200
Success
Returns a page of approved listings only.
{
"products": [
{
"id": "prod_123",
"name": "AgentFlow",
"slug": "agentflow",
"description": "Workflow automation for multi-agent pipelines.",
"url": "https://agentflow.dev",
"favicon_url": "https://agentflow.dev/icon.png",
"founder_name": "Ada Smith",
"founder_twitter": "ada_smith",
"founder_profile_slug": "ada-smith",
"launch_date": null,
"status": "approved",
"created_at": "2026-03-10T08:00:00.000Z",
"approved_at": "2026-03-11T09:15:00.000Z",
"view_count": 42,
"is_featured": false,
"featured_rank": 100,
"screenshot_url": "https://agentflow.dev/shot.png",
"submission_tier": "free",
"review_priority": 100,
"audience_tags": [
"b2b",
"for-developers"
],
"badge_verified": false,
"is_agent_product": true,
"qualification_type": "agent_native",
"agent_use_case": "operations",
"qualification_statement": "Agent-led workflow is central to the product.",
"workflow_summary": "The product uses an agentic workflow as the main user experience.",
"agent_tools_used": [
"Claude",
"LangChain"
],
"supporting_links": [
"https://agentflow.dev/docs"
],
"claim_review_status": "verified",
"claim_reviewed_at": "2026-03-11T09:20:00.000Z",
"claim_review_notes": null,
"claim_verified_by": "editor@madewithstack.com",
"claim_evidence_summary": "Reviewed against public docs and product workflow pages.",
"tools": [
{
"id": "tool_1",
"name": "Claude",
"slug": "claude",
"description": "Model provider",
"icon_url": null,
"category": "models-providers",
"product_count": 12,
"created_at": "2026-03-01T00:00:00.000Z"
}
]
}
],
"total": 1,
"offset": 0,
"limit": 24,
"hasMore": false
}Error codes
| Code | Status | Meaning |
|---|---|---|
INTERNAL_ERROR | 500 | Unexpected server error. Retry later. |
Operational notes
- Call this after approval, when building discovery experiences, or when verifying what the directory already contains.
- This endpoint returns approved listings only.
- Filters can be combined.