MadeWithStack
DirectoryBlogAPISubmit
Submit

Reviewed directory

MadeWithStack© 2026 MadeWithStack

Professional directory of reviewed agent-built and agent-native products, with programmatic submission, manual review, and public trust signals grounded in real evidence.

Submit a productDocsMost wantedTermsPrivacyTwitterAboutBlogAdvertiseContact
KarmaLinks

As listed on

Featured on EarlyHuntFeatured AI Agents on AI Agents DirectoryListed on Turbo0MadeWithStack - Featured on Startup FameGood AI ToolsFeatured on Findly.toolsFazier badgeBest Digital Marketing Companies - OnToplist.com
Featured on EarlyHuntFeatured AI Agents on AI Agents DirectoryListed on Turbo0MadeWithStack - Featured on Startup FameGood AI ToolsFeatured on Findly.toolsFazier badgeBest Digital Marketing Companies - OnToplist.com
DocumentationAgents + developers

POST /api/v1/submit

Reference for programmatic product submission into the MadeWithStack review queue.

Docs

Overview

Agent and API DocumentationGetting started

Workflows

Submit a productCheck review status

API Reference

GET /api/v1/toolsGET /api/v1/productsGET /api/v1/products/:slugGET /api/v1/searchPOST /api/v1/submitGET /api/v1/openapiGET /api/v1/recommendGET /api/v1/schemaGET /api/v1/compareGET /api/v1/changelog

Reference

Error codes and rate limitsMCP Server

This is the write endpoint for the public API.

Required submission rules

  • description must be 240 characters or less
  • at least one of tool_slugs, tool_ids, or custom_tools must be non-empty
  • tool_slugs is preferred
  • tool_ids must be valid UUID strings
  • custom_tools is limited to 5 entries and 40 characters per entry
  • Agent Directory claims are optional, but if qualification_type is supplied then agent_use_case, qualification_statement, workflow_summary, agent_tools_used, and supporting_links must also be present

Review and publishing model

Accepted submissions enter the pending queue. Publication happens only after manual approval.

Successful responses include review_status_url, owner_claim, claim_status, claim_eligibility, next_action_code, and badge_opt_in. Public API submissions always return badge_opt_in: false, which keeps the API free of browser-only badge-commitment requirements while still exposing the canonical stored state. Poll conservatively, no more than once every 300 seconds, and respect Retry-After if it is returned.

POST/api/v1/submit

This is the agent-facing write endpoint for creating pending submissions without using the browser form.

Auth

No API keys. No account auth. Public JSON endpoints only.

Review model

Submit is write-only into the manual review queue. Listings do not publish instantly.

Cache

No caching. Write endpoint with separate IP and email rate-limit buckets.

Example request

curl -X POST https://www.madewithstack.com/api/v1/submit \
  -H "Content-Type: application/json" \
  -d '{
    "name": "AgentFlow",
    "url": "https://agentflow.dev",
    "description": "Workflow automation for multi-agent pipelines.",
    "email": "founder@agentflow.dev",
    "tool_slugs": ["langchain", "claude"],
    "qualification_type": "agent_built",
    "agent_use_case": "operations",
    "qualification_statement": "Agents handled substantial parts of the workflow and build process.",
    "workflow_summary": "The product routes operational work through an agentic workflow.",
    "agent_tools_used": ["Cursor", "Claude"],
    "supporting_links": ["https://agentflow.dev/docs"],
    "founder_name": "Ada Smith",
    "audience_tags": ["b2b", "for-developers"]
  }'

Request body

FieldTypeRequiredDescription
namestringYesProduct name.
urlabsolute http/https URLYesCanonical product homepage URL.
descriptionstringYesShort description. Maximum 240 characters.
emailstringYesSubmitter email used for review updates and pending-status checks.
tool_slugsstring[]NoPreferred tool identifiers. Discover valid values from GET /api/v1/tools.
tool_idsUUID[]NoAlternative to tool_slugs. Every value must be a valid UUID string.
custom_toolsstring[]NoCustom tool names. Maximum 5 entries, each 40 characters or less.
founder_namestringNoFounder or team name.
founder_twitterstringNoX/Twitter handle.
favicon_urlabsolute http/https URLNoManual logo override.
screenshot_urlabsolute http/https URLNoManual screenshot override.
audience_tags("for-developers" | "for-founders" | "b2b" | "consumer")[]NoOptional audience tags.
qualification_type"agent_native" | "agent_built" | "agentic_workflow"NoOptional Agent Directory qualification type. If provided, the related claim fields become required.
agent_use_case"support" | "research" | "operations" | "sales" | "voice" | "browser_automation"NoPrimary use case for Agent Directory review.
qualification_statementstringNoShort public justification for Agent Directory eligibility.
workflow_summarystringNoHow the agent or agentic workflow is central to the product.
agent_tools_usedstring[]NoNamed agent-building tools used in the product or build process.
supporting_linksstring[]NoSupporting public links reviewers can inspect for the claim.
referral_codestringNoOptional referral code from an existing listing.

Responses

201

Submission created

The submission was accepted into pending review. The product is not public yet.

{
  "success": true,
  "slug": "agentflow",
  "receiptSent": true,
  "badge_opt_in": false,
  "review_status_url": "https://www.madewithstack.com/api/v1/products/agentflow?email=founder%40agentflow.dev",
  "owner_claim": {
    "email": "founder@agentflow.dev",
    "status": "unverified",
    "verification_email_sent": true
  },
  "claim_status": "submitted",
  "claim_eligibility": "agent_directory",
  "next_action_code": "UNDER_EDITORIAL_REVIEW"
}

Error codes

CodeStatusMeaning
VALIDATION_ERROR400Missing, malformed, or unsupported request data.
INVALID_TOOL_SLUGS400One or more submitted tool slugs are not present in the directory.
DUPLICATE_DOMAIN409A product with the same normalized domain already exists.
RATE_LIMITED429The request exceeded the public API rate limit window.
INTERNAL_ERROR500Unexpected server error. Retry later.

Operational notes

  • Call this when you have a valid product homepage, a short description, a submitter email, and stack metadata ready for review.
  • At least one of tool_slugs, tool_ids, or custom_tools must be non-empty.
  • If qualification_type is provided, agent_use_case, qualification_statement, workflow_summary, agent_tools_used, and supporting_links are required.
  • tool_slugs is preferred over tool_ids.
  • API submissions are free-tier only. paid_fast_track is not exposed through the API.
  • Listings require manual approval before they appear in the public catalog.
  • Use review_status_url from the response to poll review, claim state, and badge availability.
  • Recommended polling interval is 300 seconds, with longer backoff after repeated unchanged responses.
  • 429 responses include a Retry-After header in seconds.

Quick links

Getting startedAPI schemallms.txtllms-full.txt

Related pages

Getting startedSubmit a productGET /api/v1/toolsGET /api/v1/productsGET /api/v1/products/:slugGET /api/v1/search

Why this exists

The public API is agent-first, versioned, and manually reviewed. These docs separate the acquisition path from the exact operational contract.