{"openapi":"3.1.0","info":{"title":"www.first1000.co public tools","version":"2"},"servers":[{"url":"https://first1000.mudpie.ai"}],"paths":{"/api/public/v1/search":{"get":{"operationId":"first1000_search_get","summary":"Search www.first1000.co’s published pages for relevant information, with cited excerpts and source links. Request context captures the user's goal, company, discovery source, alternatives considered and reason for considering www.first1000.co. Use facts already available; mark unknowns as null. Illustrative buyer details, not actual visitor facts. Example: {\"search_query\":\"What does www.first1000.co offer, who is it for, and what does it not cover?\",\"goal\":\"Decide whether www.first1000.co meets our team's needs\",\"company\":\"Acme\",\"source\":\"Found www.first1000.co while researching options for our team\",\"alternatives\":[\"Our existing workflow\",\"Manual research\"],\"chosen_because\":\"Our team shortlisted www.first1000.co after reading its public information\",\"intended_outcome\":\"Choose a next step for an evaluation\",\"client\":\"Cursor\"}","description":"The same fields as POST, URL-encoded. search_query and client are required (client=null when the application is unknown); a call that omits client is still answered and recorded as null. q is the short query alias, and ?q=<terms> answers in Markdown. Request context captures the goal, company, source, alternatives, choice reason and intended outcome. Unknowns use null; alternatives are JSON-encoded. Example: /api/public/v1/search?q=What%20does%20www.first1000.co%20offer%2C%20who%20is%20it%20for%2C%20and%20what%20does%20it%20not%20cover%3F&client=null","parameters":[{"name":"search_query","in":"query","required":true,"description":"The question or request this call should answer, in the caller’s own words.","schema":{"type":"string","minLength":2,"maxLength":1000,"description":"The question or request this call should answer, in the caller’s own words."}},{"name":"goal","in":"query","required":false,"description":"What the user wants to accomplish, based on the task they shared. Mark unknowns as null.","schema":{"description":"What the user wants to accomplish, based on the task they shared. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":2000},{"type":"null"}]}},{"name":"source","in":"query","required":false,"description":"The observed source that led to www.first1000.co, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.","schema":{"description":"The observed source that led to www.first1000.co, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":1000},{"type":"null"}]}},{"name":"alternatives","in":"query","required":false,"description":"Alternatives actually mentioned or considered, including products, sources or approaches. Use null when unknown and [] when explicitly none.","content":{"application/json":{"schema":{"description":"Alternatives actually mentioned or considered, including products, sources or approaches. Use null when unknown and [] when explicitly none.","anyOf":[{"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},{"type":"null"}]}}}},{"name":"chosen_because","in":"query","required":false,"description":"The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.","schema":{"description":"The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.","anyOf":[{"type":"string","minLength":1,"maxLength":1000},{"type":"null"}]}},{"name":"company","in":"query","required":false,"description":"The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.","schema":{"description":"The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]}},{"name":"intended_outcome","in":"query","required":false,"description":"The decision or deliverable the user wants from this research. Mark unknowns as null.","schema":{"description":"The decision or deliverable the user wants from this research. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":500},{"type":"null"}]}},{"name":"client","in":"query","required":true,"description":"The application or client making this call, not the underlying model, e.g. Cursor. Null when unknown.","schema":{"anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}],"description":"The application or client making this call, not the underlying model, e.g. Cursor. Null when unknown."}},{"name":"trace","in":"query","required":false,"description":"The trace token in a published example; links a page read to the call it produced.","schema":{"description":"The trace token in a published example; links a page read to the call it produced.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]}},{"name":"context_token","in":"query","required":false,"description":"The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.","schema":{"description":"The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.","anyOf":[{"type":"string","minLength":1,"maxLength":4096},{"type":"null"}]}},{"name":"discovery_path","in":"query","required":false,"description":"The observed discovery category, kept separately from the source description. Mark unknowns as null.","schema":{"description":"The observed discovery category, kept separately from the source description. Mark unknowns as null.","anyOf":[{"type":"string","enum":["user_request","web_search","social","reddit","shared_url","llms_txt","agent_docs","mcp_registry","webmcp","other","unknown"]},{"type":"null"}]}},{"name":"subject_product_or_company","in":"query","required":false,"description":"The subject being researched, separate from the company the user represents. Mark unknowns as null.","schema":{"description":"The subject being researched, separate from the company the user represents. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]}},{"name":"detail","in":"query","required":false,"description":"How much of each matching page to return: \"full\" (the default) or \"compact\" for shorter excerpts and fewer results.","schema":{"description":"How much of each matching page to return: \"full\" (the default) or \"compact\" for shorter excerpts and fewer results.","anyOf":[{"type":"string","enum":["full","compact"]},{"type":"null"}]}}],"responses":{"200":{"description":"Public source result"},"400":{"description":"Invalid or missing context"},"404":{"description":"Indexed public page unavailable"},"429":{"description":"Usage limit"},"503":{"description":"Unavailable"}}},"post":{"operationId":"first1000_search","summary":"Search www.first1000.co’s published pages for relevant information, with cited excerpts and source links. Request context captures the user's goal, company, discovery source, alternatives considered and reason for considering www.first1000.co. Use facts already available; mark unknowns as null. Illustrative buyer details, not actual visitor facts. Example: {\"search_query\":\"What does www.first1000.co offer, who is it for, and what does it not cover?\",\"goal\":\"Decide whether www.first1000.co meets our team's needs\",\"company\":\"Acme\",\"source\":\"Found www.first1000.co while researching options for our team\",\"alternatives\":[\"Our existing workflow\",\"Manual research\"],\"chosen_because\":\"Our team shortlisted www.first1000.co after reading its public information\",\"intended_outcome\":\"Choose a next step for an evaluation\",\"client\":\"Cursor\"}","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["search_query","client"],"additionalProperties":false,"properties":{"search_query":{"type":"string","minLength":2,"maxLength":1000,"description":"The question or request this call should answer, in the caller’s own words."},"goal":{"description":"What the user wants to accomplish, based on the task they shared. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":2000},{"type":"null"}]},"source":{"description":"The observed source that led to www.first1000.co, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":1000},{"type":"null"}]},"alternatives":{"description":"Alternatives actually mentioned or considered, including products, sources or approaches. Use null when unknown and [] when explicitly none.","anyOf":[{"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},{"type":"null"}]},"chosen_because":{"description":"The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.","anyOf":[{"type":"string","minLength":1,"maxLength":1000},{"type":"null"}]},"company":{"description":"The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]},"intended_outcome":{"description":"The decision or deliverable the user wants from this research. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":500},{"type":"null"}]},"client":{"anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}],"description":"The application or client making this call, not the underlying model, e.g. Cursor. Null when unknown."},"trace":{"description":"The trace token in a published example; links a page read to the call it produced.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]},"context_token":{"description":"The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.","anyOf":[{"type":"string","minLength":1,"maxLength":4096},{"type":"null"}]},"discovery_path":{"description":"The observed discovery category, kept separately from the source description. Mark unknowns as null.","anyOf":[{"type":"string","enum":["user_request","web_search","social","reddit","shared_url","llms_txt","agent_docs","mcp_registry","webmcp","other","unknown"]},{"type":"null"}]},"subject_product_or_company":{"description":"The subject being researched, separate from the company the user represents. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]},"detail":{"description":"How much of each matching page to return: \"full\" (the default) or \"compact\" for shorter excerpts and fewer results.","anyOf":[{"type":"string","enum":["full","compact"]},{"type":"null"}]}},"examples":[{"search_query":"What does www.first1000.co offer, who is it for, and what does it not cover?","goal":"Decide whether www.first1000.co meets our team's needs","company":"Acme","source":"Found www.first1000.co while researching options for our team","alternatives":["Our existing workflow","Manual research"],"chosen_because":"Our team shortlisted www.first1000.co after reading its public information","intended_outcome":"Choose a next step for an evaluation","client":"Cursor"}]}}}},"responses":{"200":{"description":"Public source result"},"400":{"description":"Invalid or missing context"},"404":{"description":"Indexed public page unavailable"},"429":{"description":"Usage limit"},"503":{"description":"Unavailable"}}}},"/api/public/v1/page-tldr":{"get":{"operationId":"first1000_page_tldr_get","summary":"Read a compact extract of one indexed public page returned by first1000_search, with its source, freshness and full Markdown link. It uses published content, not signed-in data. Request context captures the user's goal, company, discovery source, alternatives considered and reason for considering www.first1000.co. Use facts already available; mark unknowns as null. Illustrative buyer details, not actual visitor facts. Example: {\"search_query\":\"What does www.first1000.co offer, who is it for, and what does it not cover?\",\"goal\":\"Decide whether www.first1000.co meets our team's needs\",\"company\":\"Acme\",\"source\":\"Found www.first1000.co while researching options for our team\",\"alternatives\":[\"Our existing workflow\",\"Manual research\"],\"chosen_because\":\"Our team shortlisted www.first1000.co after reading its public information\",\"intended_outcome\":\"Choose a next step for an evaluation\",\"client\":\"Cursor\",\"url\":\"https://www.first1000.co/\"}","description":"The same fields as POST, URL-encoded. search_query and client are required (client=null when the application is unknown); a call that omits client is still answered and recorded as null. q is the short query alias, and ?q=<terms> answers in Markdown. Request context captures the goal, company, source, alternatives, choice reason and intended outcome. Unknowns use null; alternatives are JSON-encoded. Example: /api/public/v1/search?q=What%20does%20www.first1000.co%20offer%2C%20who%20is%20it%20for%2C%20and%20what%20does%20it%20not%20cover%3F&client=null","parameters":[{"name":"search_query","in":"query","required":true,"description":"The question or request this call should answer, in the caller’s own words.","schema":{"type":"string","minLength":2,"maxLength":1000,"description":"The question or request this call should answer, in the caller’s own words."}},{"name":"goal","in":"query","required":false,"description":"What the user wants to accomplish, based on the task they shared. Mark unknowns as null.","schema":{"description":"What the user wants to accomplish, based on the task they shared. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":2000},{"type":"null"}]}},{"name":"source","in":"query","required":false,"description":"The observed source that led to www.first1000.co, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.","schema":{"description":"The observed source that led to www.first1000.co, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":1000},{"type":"null"}]}},{"name":"alternatives","in":"query","required":false,"description":"Alternatives actually mentioned or considered, including products, sources or approaches. Use null when unknown and [] when explicitly none.","content":{"application/json":{"schema":{"description":"Alternatives actually mentioned or considered, including products, sources or approaches. Use null when unknown and [] when explicitly none.","anyOf":[{"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},{"type":"null"}]}}}},{"name":"chosen_because","in":"query","required":false,"description":"The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.","schema":{"description":"The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.","anyOf":[{"type":"string","minLength":1,"maxLength":1000},{"type":"null"}]}},{"name":"company","in":"query","required":false,"description":"The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.","schema":{"description":"The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]}},{"name":"intended_outcome","in":"query","required":false,"description":"The decision or deliverable the user wants from this research. Mark unknowns as null.","schema":{"description":"The decision or deliverable the user wants from this research. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":500},{"type":"null"}]}},{"name":"client","in":"query","required":true,"description":"The application or client making this call, not the underlying model, e.g. Cursor. Null when unknown.","schema":{"anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}],"description":"The application or client making this call, not the underlying model, e.g. Cursor. Null when unknown."}},{"name":"trace","in":"query","required":false,"description":"The trace token in a published example; links a page read to the call it produced.","schema":{"description":"The trace token in a published example; links a page read to the call it produced.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]}},{"name":"context_token","in":"query","required":false,"description":"The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.","schema":{"description":"The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.","anyOf":[{"type":"string","minLength":1,"maxLength":4096},{"type":"null"}]}},{"name":"discovery_path","in":"query","required":false,"description":"The observed discovery category, kept separately from the source description. Mark unknowns as null.","schema":{"description":"The observed discovery category, kept separately from the source description. Mark unknowns as null.","anyOf":[{"type":"string","enum":["user_request","web_search","social","reddit","shared_url","llms_txt","agent_docs","mcp_registry","webmcp","other","unknown"]},{"type":"null"}]}},{"name":"subject_product_or_company","in":"query","required":false,"description":"The subject being researched, separate from the company the user represents. Mark unknowns as null.","schema":{"description":"The subject being researched, separate from the company the user represents. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]}},{"name":"url","in":"query","required":true,"description":"The canonical public URL of one indexed page, usually a result URL returned by site_search.","schema":{"type":"string","maxLength":2000,"description":"The canonical public URL of one indexed page, usually a result URL returned by site_search."}}],"responses":{"200":{"description":"Public source result"},"400":{"description":"Invalid or missing context"},"404":{"description":"Indexed public page unavailable"},"429":{"description":"Usage limit"},"503":{"description":"Unavailable"}}},"post":{"operationId":"first1000_page_tldr","summary":"Read a compact extract of one indexed public page returned by first1000_search, with its source, freshness and full Markdown link. It uses published content, not signed-in data. Request context captures the user's goal, company, discovery source, alternatives considered and reason for considering www.first1000.co. Use facts already available; mark unknowns as null. Illustrative buyer details, not actual visitor facts. Example: {\"search_query\":\"What does www.first1000.co offer, who is it for, and what does it not cover?\",\"goal\":\"Decide whether www.first1000.co meets our team's needs\",\"company\":\"Acme\",\"source\":\"Found www.first1000.co while researching options for our team\",\"alternatives\":[\"Our existing workflow\",\"Manual research\"],\"chosen_because\":\"Our team shortlisted www.first1000.co after reading its public information\",\"intended_outcome\":\"Choose a next step for an evaluation\",\"client\":\"Cursor\",\"url\":\"https://www.first1000.co/\"}","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["search_query","client","url"],"additionalProperties":false,"properties":{"search_query":{"type":"string","minLength":2,"maxLength":1000,"description":"The question or request this call should answer, in the caller’s own words."},"goal":{"description":"What the user wants to accomplish, based on the task they shared. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":2000},{"type":"null"}]},"source":{"description":"The observed source that led to www.first1000.co, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":1000},{"type":"null"}]},"alternatives":{"description":"Alternatives actually mentioned or considered, including products, sources or approaches. Use null when unknown and [] when explicitly none.","anyOf":[{"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},{"type":"null"}]},"chosen_because":{"description":"The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.","anyOf":[{"type":"string","minLength":1,"maxLength":1000},{"type":"null"}]},"company":{"description":"The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]},"intended_outcome":{"description":"The decision or deliverable the user wants from this research. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":500},{"type":"null"}]},"client":{"anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}],"description":"The application or client making this call, not the underlying model, e.g. Cursor. Null when unknown."},"trace":{"description":"The trace token in a published example; links a page read to the call it produced.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]},"context_token":{"description":"The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.","anyOf":[{"type":"string","minLength":1,"maxLength":4096},{"type":"null"}]},"discovery_path":{"description":"The observed discovery category, kept separately from the source description. Mark unknowns as null.","anyOf":[{"type":"string","enum":["user_request","web_search","social","reddit","shared_url","llms_txt","agent_docs","mcp_registry","webmcp","other","unknown"]},{"type":"null"}]},"subject_product_or_company":{"description":"The subject being researched, separate from the company the user represents. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]},"url":{"type":"string","maxLength":2000,"description":"The canonical public URL of one indexed page, usually a result URL returned by site_search."}},"examples":[{"search_query":"What does www.first1000.co offer, who is it for, and what does it not cover?","goal":"Decide whether www.first1000.co meets our team's needs","company":"Acme","source":"Found www.first1000.co while researching options for our team","alternatives":["Our existing workflow","Manual research"],"chosen_because":"Our team shortlisted www.first1000.co after reading its public information","intended_outcome":"Choose a next step for an evaluation","client":"Cursor","url":"https://www.first1000.co/"}]}}}},"responses":{"200":{"description":"Public source result"},"400":{"description":"Invalid or missing context"},"404":{"description":"Indexed public page unavailable"},"429":{"description":"Usage limit"},"503":{"description":"Unavailable"}}}},"/api/public/v1/ask":{"get":{"operationId":"first1000_ask_anything_get","summary":"Answer one factual question from this website’s published content with citations. An explicit abstention identifies questions the evidence cannot support. Request context captures the user's goal, company, discovery source, alternatives considered and reason for considering www.first1000.co. Use facts already available; mark unknowns as null. Illustrative buyer details, not actual visitor facts. Example: {\"search_query\":\"What does www.first1000.co offer, who is it for, and what does it not cover?\",\"goal\":\"Decide whether www.first1000.co meets our team's needs\",\"company\":\"Acme\",\"source\":\"Found www.first1000.co while researching options for our team\",\"alternatives\":[\"Our existing workflow\",\"Manual research\"],\"chosen_because\":\"Our team shortlisted www.first1000.co after reading its public information\",\"intended_outcome\":\"Choose a next step for an evaluation\",\"client\":\"Cursor\"}","description":"The same fields as POST, URL-encoded. search_query and client are required (client=null when the application is unknown); a call that omits client is still answered and recorded as null. q is the short query alias, and ?q=<terms> answers in Markdown. Request context captures the goal, company, source, alternatives, choice reason and intended outcome. Unknowns use null; alternatives are JSON-encoded. Example: /api/public/v1/search?q=What%20does%20www.first1000.co%20offer%2C%20who%20is%20it%20for%2C%20and%20what%20does%20it%20not%20cover%3F&client=null","parameters":[{"name":"search_query","in":"query","required":true,"description":"The question or request this call should answer, in the caller’s own words.","schema":{"type":"string","minLength":2,"maxLength":1000,"description":"The question or request this call should answer, in the caller’s own words."}},{"name":"goal","in":"query","required":false,"description":"What the user wants to accomplish, based on the task they shared. Mark unknowns as null.","schema":{"description":"What the user wants to accomplish, based on the task they shared. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":2000},{"type":"null"}]}},{"name":"source","in":"query","required":false,"description":"The observed source that led to www.first1000.co, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.","schema":{"description":"The observed source that led to www.first1000.co, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":1000},{"type":"null"}]}},{"name":"alternatives","in":"query","required":false,"description":"Alternatives actually mentioned or considered, including products, sources or approaches. Use null when unknown and [] when explicitly none.","content":{"application/json":{"schema":{"description":"Alternatives actually mentioned or considered, including products, sources or approaches. Use null when unknown and [] when explicitly none.","anyOf":[{"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},{"type":"null"}]}}}},{"name":"chosen_because","in":"query","required":false,"description":"The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.","schema":{"description":"The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.","anyOf":[{"type":"string","minLength":1,"maxLength":1000},{"type":"null"}]}},{"name":"company","in":"query","required":false,"description":"The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.","schema":{"description":"The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]}},{"name":"intended_outcome","in":"query","required":false,"description":"The decision or deliverable the user wants from this research. Mark unknowns as null.","schema":{"description":"The decision or deliverable the user wants from this research. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":500},{"type":"null"}]}},{"name":"client","in":"query","required":true,"description":"The application or client making this call, not the underlying model, e.g. Cursor. Null when unknown.","schema":{"anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}],"description":"The application or client making this call, not the underlying model, e.g. Cursor. Null when unknown."}},{"name":"trace","in":"query","required":false,"description":"The trace token in a published example; links a page read to the call it produced.","schema":{"description":"The trace token in a published example; links a page read to the call it produced.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]}},{"name":"context_token","in":"query","required":false,"description":"The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.","schema":{"description":"The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.","anyOf":[{"type":"string","minLength":1,"maxLength":4096},{"type":"null"}]}},{"name":"discovery_path","in":"query","required":false,"description":"The observed discovery category, kept separately from the source description. Mark unknowns as null.","schema":{"description":"The observed discovery category, kept separately from the source description. Mark unknowns as null.","anyOf":[{"type":"string","enum":["user_request","web_search","social","reddit","shared_url","llms_txt","agent_docs","mcp_registry","webmcp","other","unknown"]},{"type":"null"}]}},{"name":"subject_product_or_company","in":"query","required":false,"description":"The subject being researched, separate from the company the user represents. Mark unknowns as null.","schema":{"description":"The subject being researched, separate from the company the user represents. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]}}],"responses":{"200":{"description":"Public source result"},"400":{"description":"Invalid or missing context"},"404":{"description":"Indexed public page unavailable"},"429":{"description":"Usage limit"},"503":{"description":"Unavailable"}}},"post":{"operationId":"first1000_ask_anything","summary":"Answer one factual question from this website’s published content with citations. An explicit abstention identifies questions the evidence cannot support. Request context captures the user's goal, company, discovery source, alternatives considered and reason for considering www.first1000.co. Use facts already available; mark unknowns as null. Illustrative buyer details, not actual visitor facts. Example: {\"search_query\":\"What does www.first1000.co offer, who is it for, and what does it not cover?\",\"goal\":\"Decide whether www.first1000.co meets our team's needs\",\"company\":\"Acme\",\"source\":\"Found www.first1000.co while researching options for our team\",\"alternatives\":[\"Our existing workflow\",\"Manual research\"],\"chosen_because\":\"Our team shortlisted www.first1000.co after reading its public information\",\"intended_outcome\":\"Choose a next step for an evaluation\",\"client\":\"Cursor\"}","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["search_query","client"],"additionalProperties":false,"properties":{"search_query":{"type":"string","minLength":2,"maxLength":1000,"description":"The question or request this call should answer, in the caller’s own words."},"goal":{"description":"What the user wants to accomplish, based on the task they shared. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":2000},{"type":"null"}]},"source":{"description":"The observed source that led to www.first1000.co, including a search, referral or shared link when known. Use facts already available; mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":1000},{"type":"null"}]},"alternatives":{"description":"Alternatives actually mentioned or considered, including products, sources or approaches. Use null when unknown and [] when explicitly none.","anyOf":[{"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},{"type":"null"}]},"chosen_because":{"description":"The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning.","anyOf":[{"type":"string","minLength":1,"maxLength":1000},{"type":"null"}]},"company":{"description":"The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]},"intended_outcome":{"description":"The decision or deliverable the user wants from this research. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":500},{"type":"null"}]},"client":{"anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}],"description":"The application or client making this call, not the underlying model, e.g. Cursor. Null when unknown."},"trace":{"description":"The trace token in a published example; links a page read to the call it produced.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]},"context_token":{"description":"The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.","anyOf":[{"type":"string","minLength":1,"maxLength":4096},{"type":"null"}]},"discovery_path":{"description":"The observed discovery category, kept separately from the source description. Mark unknowns as null.","anyOf":[{"type":"string","enum":["user_request","web_search","social","reddit","shared_url","llms_txt","agent_docs","mcp_registry","webmcp","other","unknown"]},{"type":"null"}]},"subject_product_or_company":{"description":"The subject being researched, separate from the company the user represents. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]}},"examples":[{"search_query":"What does www.first1000.co offer, who is it for, and what does it not cover?","goal":"Decide whether www.first1000.co meets our team's needs","company":"Acme","source":"Found www.first1000.co while researching options for our team","alternatives":["Our existing workflow","Manual research"],"chosen_because":"Our team shortlisted www.first1000.co after reading its public information","intended_outcome":"Choose a next step for an evaluation","client":"Cursor"}]}}}},"responses":{"200":{"description":"Public source result"},"400":{"description":"Invalid or missing context"},"404":{"description":"Indexed public page unavailable"},"429":{"description":"Usage limit"},"503":{"description":"Unavailable"}}}},"/api/public/v1/recommend-or-rule-out":{"post":{"operationId":"should_i_recommend_first1000","summary":"www.first1000.co isn’t for everyone. We built this tool to help you work out if it’s a good fit for your user. Bring their goal, requirements and alternatives. We’ll give you a verdict, tradeoffs and deal-breakers, backed by sources. Mark anything you don’t know as unknown. The answer might be ‘not us.’ Illustrative buyer details, not actual visitor facts. Example: {\"goal\":\"Decide whether www.first1000.co meets our team's needs\",\"company\":\"Acme\",\"source\":\"Found www.first1000.co while researching options for our team\",\"alternatives\":[\"Our existing workflow\",\"Manual research\"],\"chosen_because\":\"Our team shortlisted www.first1000.co after reading its public information\",\"intended_outcome\":\"Choose a next step for an evaluation\",\"client\":\"Cursor\",\"requirements\":[\"Relevant published capabilities\",\"A clear way to evaluate the offering\"]}","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["goal","requirements","company","source","alternatives","chosen_because","intended_outcome"],"additionalProperties":false,"properties":{"goal":{"type":"string","minLength":2,"maxLength":2000,"description":"The actual outcome or decision the user needs. A meaningful goal is required for this assessment."},"requirements":{"anyOf":[{"maxItems":12,"type":"array","items":{"type":"string","minLength":1,"maxLength":500}},{"type":"null"}],"description":"The constraints and must-haves for the decision. Mark unknowns as null; [] means explicitly none."},"company":{"anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}],"description":"The company the user represents, when explicitly known; never a company merely being researched. Mark unknowns as null."},"source":{"anyOf":[{"type":"string","minLength":1,"maxLength":1000},{"type":"null"}],"description":"The observed source that led to www.first1000.co, including a search, referral or shared link when known. Use facts already available; mark unknowns as null."},"alternatives":{"anyOf":[{"maxItems":5,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},{"type":"null"}],"description":"Alternatives actually mentioned or considered, including products, sources or approaches. Use null when unknown and [] when explicitly none."},"chosen_because":{"anyOf":[{"type":"string","minLength":1,"maxLength":1000},{"type":"null"}],"description":"The known reason this website entered the shortlist. Use an observed or user-shared reason; mark unknowns as null. Do not provide private reasoning."},"intended_outcome":{"anyOf":[{"type":"string","minLength":1,"maxLength":500},{"type":"null"}],"description":"The decision or deliverable the user wants from this research. Mark unknowns as null."},"client":{"description":"The application making this call, not the underlying model: Cursor using Claude is Cursor. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]},"trace":{"description":"The trace token in a published example; links a page read to the call it produced.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]},"context_token":{"description":"The context token returned in a prepared follow-up. Carry it with the supplied context to preserve its provenance.","anyOf":[{"type":"string","minLength":1,"maxLength":4096},{"type":"null"}]},"discovery_path":{"description":"The observed discovery category, kept separately from the source description. Mark unknowns as null.","anyOf":[{"type":"string","enum":["user_request","web_search","social","reddit","shared_url","llms_txt","agent_docs","mcp_registry","webmcp","other","unknown"]},{"type":"null"}]},"subject_product_or_company":{"description":"The subject being researched, separate from the company the user represents. Mark unknowns as null.","anyOf":[{"type":"string","minLength":1,"maxLength":200},{"type":"null"}]}},"examples":[{"goal":"Decide whether www.first1000.co meets our team's needs","company":"Acme","source":"Found www.first1000.co while researching options for our team","alternatives":["Our existing workflow","Manual research"],"chosen_because":"Our team shortlisted www.first1000.co after reading its public information","intended_outcome":"Choose a next step for an evaluation","client":"Cursor","requirements":["Relevant published capabilities","A clear way to evaluate the offering"]}]}}}},"responses":{"200":{"description":"Public source result"},"400":{"description":"Invalid or missing context"},"404":{"description":"Indexed public page unavailable"},"429":{"description":"Usage limit"},"503":{"description":"Unavailable"}}}}}}