{"openapi":"3.1.0","info":{"title":"HirePulse agent gateway","version":"0.5.0","description":"HirePulse — Autonomous Agent Intelligence, Security & B2B Suite (x402 v2 + MCP). Live Web-to-Markdown ($0.002), x402/MCP Merchant Security & Anti-Poisoning Scanner ($0.002), Blind Privacy Proxy ($0.02 single / $0.04 bundle), B2B Contact & MX Verifier ($0.01), Tech Stack ($0.005), Hiring Intent & Active Google Ads ($0.01). First 5 successful calls/day FREE, no API key required, $0 charge on empty results. Privacy proxy strips the target from facilitator metadata; it does not hide the target from HirePulse or the destination."},"paths":{"/v1/advisor":{"post":{"operationId":"ask_hirepulse_advisor","description":"Free advisor for AI agents: describe your goal (B2B leads, hiring signals, buying intent, tech stack lookup, Google Ads, VC due diligence) and get the right HirePulse tool, the real cost, your free-call balance and a ready-to-run request.","tags":["B2B leads","hiring signals","buying intent","tech stack lookup","Google Ads","VC due diligence","גיוס","מכירות","לידים","השקעות"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["agent_goal"],"properties":{"agent_goal":{"type":"string","minLength":1,"maxLength":500},"sample_domain":{"type":"string","maxLength":253},"domain_count":{"type":"integer","minimum":1,"maximum":1000000},"budget_usd":{"type":"number","minimum":0}}}}}},"responses":{"200":{"description":"Free advice; never consumes free calls","content":{"application/json":{"schema":{"type":"object","required":["recommended_tool","why","alternatives","efficiency_analysis","cost_estimate_usd","free_quota","recommended_execution_sequence","cached_hint","guarantees"],"properties":{"recommended_tool":{"type":["string","null"],"description":"Recommended data tool, or null when the goal is unclear."},"why":{"type":"string"},"alternatives":{"type":"array","items":{"type":"object"}},"tools":{"type":"array","items":{"type":"string"}},"efficiency_analysis":{"type":"object","required":["company_profile","separately","comparison","note"],"properties":{"company_profile":{"type":"object"},"separately":{"type":"object"},"comparison":{"type":"array","items":{"type":"string"}},"note":{"type":"string"}}},"cost_estimate_usd":{"type":["object","null"],"description":"List-price range before free quota, actual data availability and optional follow-up calls; includes request splitting and scan limits."},"free_quota":{"type":"object","required":["remaining","limit","resets_at","message","note"],"properties":{"remaining":{"type":"integer","minimum":0},"limit":{"type":"integer"},"resets_at":{"type":"string","format":"date-time"},"message":{"type":"string"},"note":{"type":"string"}}},"recommended_execution_sequence":{"type":"array","items":{"type":"object","required":["tool","mcp_tool","url","body","next_tool_call_payload","required_input"],"properties":{"tool":{"type":"string"},"mcp_tool":{"type":"string"},"url":{"type":"string","format":"uri"},"body":{"type":["object","null"]},"next_tool_call_payload":{"type":["object","null"],"description":"Exact executable request body when inputs are available; null until required_input is provided. Never contains invented domains or quote IDs."},"required_input":{"type":"array","items":{"type":"string"}},"phase":{"type":"string"},"note":{"type":"string"}}}},"cached_hint":{"type":["object","null"],"description":"Today only, status metadata; no result data or new engine calls."},"guarantees":{"type":"array","items":{"type":"string"}}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"429":{"description":"60 advisor calls per rolling hour per IP; Retry-After header"}}}},"/v1/tech-stack":{"post":{"operationId":"detect_website_tech_stack","description":"Tech stack lookup API for any company website: detects ad pixels, analytics, marketing tools, CMS, e-commerce platform, hosting and payment providers (Meta, Google Ads, LinkedIn and TikTok pixels, GA4, Google Tag Manager and more), plus email provider, DMARC and SPF senders from DNS. Use before qualifying or writing to a company. Fast: reads the home page HTML, headers, cookies and up to two public Google Tag Manager containers, without a headless browser. 5 free calls per day per IP, then $0.005 USDC per result via x402 on Base. Blocked, unreachable or empty sites (no_signals) are never charged.","tags":["tech-stack","technographics","website-technology","ad-pixels","lead-enrichment"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["domain"],"properties":{"domain":{"type":"string","description":"Public domain without a URL scheme, path or port.","examples":["example.com"],"maxLength":253}}}}}},"responses":{"200":{"description":"Result; rows with a status other than ok are not charged","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["domain","status","final_url","title","cms","ecommerce","email_provider","dmarc_policy","note","technology_count","checked_at","added","removed","is_first_run","has_meta_pixel","has_google_ads_tag","has_ga4","has_gtm","has_linkedin_insight","has_tiktok_pixel","ad_pixels","analytics","marketing_tools","hosting_cdn","frameworks","payments","spf_senders","verified_services"],"properties":{"domain":{"type":"string"},"status":{"type":"string","enum":["ok","no_signals","blocked","unreachable","not_found"],"description":"Only ok is charged. no_signals: the page loaded but no technology was detected."},"final_url":{"type":["string","null"]},"title":{"type":["string","null"]},"cms":{"type":["string","null"]},"ecommerce":{"type":["string","null"]},"email_provider":{"type":["string","null"]},"dmarc_policy":{"type":["string","null"]},"note":{"type":["string","null"]},"technology_count":{"type":"integer","minimum":0},"checked_at":{"type":"string","format":"date-time"},"added":{"type":["array","null"],"items":{"type":"string"}},"removed":{"type":["array","null"],"items":{"type":"string"}},"is_first_run":{"type":["boolean","null"]},"has_meta_pixel":{"type":["boolean","null"]},"has_google_ads_tag":{"type":["boolean","null"]},"has_ga4":{"type":["boolean","null"]},"has_gtm":{"type":["boolean","null"]},"has_linkedin_insight":{"type":["boolean","null"]},"has_tiktok_pixel":{"type":["boolean","null"]},"ad_pixels":{"type":"array","items":{"type":"string"}},"analytics":{"type":"array","items":{"type":"string"}},"marketing_tools":{"type":"array","items":{"type":"string"}},"hosting_cdn":{"type":"array","items":{"type":"string"}},"frameworks":{"type":"array","items":{"type":"string"}},"payments":{"type":"array","items":{"type":"string"}},"spf_senders":{"type":"array","items":{"type":"string"}},"verified_services":{"type":"array","items":{"type":"string"}},"next_steps":{"type":"array","description":"Suggested follow-up calls on the same domain, with the exact body. Optional to use.","items":{"type":"object","properties":{"tool":{"type":"string"},"mcp_tool":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"},"price_usd":{"type":"number"},"why":{"type":"string"}}}}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"402":{"description":"x402 v2 challenge: $0.005 USDC; private bundles $0.04"},"409":{"description":"Duplicate payment, changed input or operation pending","content":{"application/problem+json":{}}},"503":{"description":"Engine or payment configuration unavailable","content":{"application/problem+json":{}}}}}},"/v1/ats-jobs":{"post":{"operationId":"get_company_open_jobs","description":"Company jobs API: live open jobs for a company domain from its public Greenhouse, Lever, Ashby, Workable, Recruitee or SmartRecruiters board, with titles, departments, locations, remote flag, salary when published and technology keywords. Hiring signals for sales, recruiting and research agents. Up to 300 jobs per call; send known_job_ids to get new and closed jobs (diff_only returns only new ones). confidence high means the website links to the board; unverified means only the name matches. 5 free calls per day per IP, then $0.01 USDC per result via x402 on Base. No board or no open jobs is never charged.","tags":["jobs","job-postings","hiring-signals","ats","recruiting"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["domain"],"properties":{"domain":{"type":"string","description":"Public domain without a URL scheme, path or port.","examples":["example.com"],"maxLength":253},"known_job_ids":{"type":"array","maxItems":5000,"items":{"type":"string","minLength":1,"maxLength":128},"description":"Job IDs you already have from an earlier call. The answer then lists new and closed job IDs."},"diff_only":{"type":"boolean","default":false,"description":"Return only jobs that are not in known_job_ids. Needs known_job_ids."}}}}}},"responses":{"200":{"description":"Result; rows with a status other than ok are not charged","content":{"application/json":{"schema":{"type":"object","required":["domain","status","jobs","checked_at"],"properties":{"domain":{"type":"string"},"status":{"type":"string","enum":["ok","no_open_jobs","unreachable","not_found"],"description":"Only ok is charged."},"ats_type":{"type":["string","null"]},"board_slug":{"type":["string","null"]},"confidence":{"type":["string","null"],"enum":["high","unverified",null],"description":"high: the company website links to this board. unverified: only the board name matches the domain name."},"board_match":{"type":["string","null"],"enum":["name_match","careers_page_link",null],"description":"name_match: the board name equals the first part of the domain, so check generic names."},"total_active_jobs":{"type":"integer"},"remote_jobs":{"type":"integer"},"jobs_with_salary":{"type":"integer"},"jobs_by_department":{"type":"object","additionalProperties":{"type":"integer"}},"top_locations":{"type":"object","additionalProperties":{"type":"integer"}},"top_technologies":{"type":"object","additionalProperties":{"type":"integer"}},"diff":{"type":["object","null"]},"jobs":{"type":"array","items":{"type":"object"}},"jobs_returned":{"type":"integer"},"jobs_truncated":{"type":"boolean"},"note":{"type":["string","null"]},"checked_at":{"type":"string","format":"date-time"},"next_poll_after":{"type":["string","null"],"format":"date-time","description":"Job boards change slowly; calling again before this time is usually wasted."},"next_steps":{"type":"array","description":"Suggested follow-up calls on the same domain, with the exact body. Optional to use.","items":{"type":"object","properties":{"tool":{"type":"string"},"mcp_tool":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"},"price_usd":{"type":"number"},"why":{"type":"string"}}}}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"402":{"description":"x402 v2 challenge: $0.01 USDC; private bundles $0.04"},"409":{"description":"Duplicate payment, changed input or operation pending","content":{"application/problem+json":{}}},"503":{"description":"Engine or payment configuration unavailable","content":{"application/problem+json":{}}}}}},"/v1/company-intent":{"post":{"operationId":"get_company_hiring_intent","description":"Hiring signals and buying intent API: turns a company domain into a hiring-based buying-intent score from its public job board: intent_score 0-100, hiring_status (hypergrowth, active_hiring, steady), open roles, roles posted in the last 30 days, hiring by function (sales, engineering, data/AI...), technologies it is hiring for and notable senior or go-to-market roles. Use to rank or prioritize accounts before outreach. 5 free calls per day per IP, shared with the other tools, then $0.01 USDC per result via x402 on Base. No job board, no open jobs, or a generic name-only match is never charged.","tags":["hiring-signals","buying-intent","intent-data","lead-scoring","sales-intelligence"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["domain"],"properties":{"domain":{"type":"string","description":"Public company domain without a URL scheme, path or port.","examples":["linear.app"],"maxLength":253}}}}}},"responses":{"200":{"description":"Result; rows with a status other than ok are not charged","content":{"application/json":{"schema":{"type":"object","required":["domain","status","checked_at"],"properties":{"domain":{"type":"string"},"status":{"type":"string","enum":["ok","no_open_jobs","unreachable","not_found"],"description":"Only ok is charged."},"ats_type":{"type":["string","null"]},"confidence":{"type":["string","null"],"enum":["high","unverified",null],"description":"high: the company website links to the board. unverified: only the board name matches the domain."},"intent_score":{"type":"integer","minimum":0,"maximum":100},"hiring_status":{"type":"string","enum":["hypergrowth","active_hiring","steady"]},"total_open_roles":{"type":"integer"},"remote_roles":{"type":"integer"},"roles_posted_last_30_days":{"type":"integer"},"roles_with_known_post_date":{"type":"integer"},"function_breakdown":{"type":"object","additionalProperties":{"type":"integer"}},"department_breakdown":{"type":"object","additionalProperties":{"type":"integer"}},"top_locations":{"type":"object","additionalProperties":{"type":"integer"}},"top_demanded_technologies":{"type":"object","additionalProperties":{"type":"integer"}},"buying_signals":{"type":"object","properties":{"cloud_infra":{"type":"array","items":{"type":"string"}},"data_ai":{"type":"array","items":{"type":"string"}},"databases":{"type":"array","items":{"type":"string"}},"observability":{"type":"array","items":{"type":"string"}},"sales_tools":{"type":"array","items":{"type":"string"}}}},"notable_open_roles":{"type":"array","maxItems":10,"items":{"type":"object"}},"jobs_truncated":{"type":"boolean"},"checked_at":{"type":"string","format":"date-time"},"note":{"type":["string","null"]},"next_steps":{"type":"array","description":"Suggested follow-up calls on the same domain, with the exact body. Optional to use.","items":{"type":"object","properties":{"tool":{"type":"string"},"mcp_tool":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"},"price_usd":{"type":"number"},"why":{"type":"string"}}}}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"402":{"description":"x402 v2 challenge: $0.01 USDC; private bundles $0.04"},"409":{"description":"Duplicate payment, changed input or operation pending","content":{"application/problem+json":{}}},"503":{"description":"Engine or payment configuration unavailable","content":{"application/problem+json":{}}}}}},"/v1/google-ads":{"post":{"operationId":"get_google_ads_by_domain","description":"Google Ads transparency API: is a company running Google Ads, and what does it advertise? Advertisers and ads for a domain from the public Google Ads Transparency Center, the Google estimate of how many ads it runs, up to 40 ads with format (text, image, video), first and last shown dates, preview and Transparency Center links. Optional region filter (US, GB, CA, AU, DE, FR, ES, IT, NL, IL, IN, BR, MX, JP, SG, AE). For competitor research, ad-spend signals and sales personalization. 5 free calls per day per IP, then $0.01 USDC per result via x402 on Base. Domains with no ads are never charged.","tags":["google-ads","ads-transparency","competitor-research","ad-intelligence","marketing"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["domain"],"properties":{"domain":{"type":"string","description":"Advertiser domain without a URL scheme, path or port.","examples":["monday.com"],"maxLength":253},"region":{"type":"string","enum":["US","GB","CA","AU","DE","FR","ES","IT","NL","IL","IN","BR","MX","JP","SG","AE"],"description":"Optional country filter. Leave out for all regions."}}}}}},"responses":{"200":{"description":"Result; rows with a status other than ok are not charged","content":{"application/json":{"schema":{"type":"object","required":["domain","status","checked_at"],"properties":{"domain":{"type":"string"},"region":{"type":"string"},"status":{"type":"string","enum":["ok","no_ads"],"description":"Only ok is charged."},"advertisers":{"type":"array","items":{"type":"object","properties":{"advertiser_id":{"type":"string"},"name":{"type":"string"},"ads_in_sample":{"type":"integer"}}}},"total_ads_estimate":{"type":["object","null"],"properties":{"low":{"type":"integer"},"high":{"type":["integer","null"]}}},"ads_returned":{"type":"integer"},"ads_shown_last_30_days_in_sample":{"type":"integer"},"formats_in_sample":{"type":"object","additionalProperties":{"type":"integer"}},"earliest_first_shown_in_sample":{"type":["string","null"]},"latest_last_shown_in_sample":{"type":["string","null"]},"ads":{"type":"array","maxItems":40,"items":{"type":"object","properties":{"creative_id":{"type":"string"},"advertiser_id":{"type":"string"},"advertiser_name":{"type":["string","null"]},"format":{"type":"string"},"first_shown":{"type":["string","null"]},"last_shown":{"type":["string","null"]},"preview_url":{"type":["string","null"]},"transparency_url":{"type":"string"}}}},"checked_at":{"type":"string","format":"date-time"},"note":{"type":["string","null"]},"next_steps":{"type":"array","description":"Suggested follow-up calls on the same domain, with the exact body. Optional to use.","items":{"type":"object","properties":{"tool":{"type":"string"},"mcp_tool":{"type":"string"},"url":{"type":"string"},"body":{"type":"object"},"price_usd":{"type":"number"},"why":{"type":"string"}}}}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"402":{"description":"x402 v2 challenge: $0.01 USDC; private bundles $0.04"},"409":{"description":"Duplicate payment, changed input or operation pending","content":{"application/problem+json":{}}},"503":{"description":"Engine or payment configuration unavailable","content":{"application/problem+json":{}}}}}},"/v1/company-profile":{"post":{"operationId":"get_company_profile","description":"Company enrichment API in one call: tech stack lookup, hiring signals and buying intent, and Google Ads transparency for a domain, run in parallel and returned together with a short list of plain-language signals. Use for a full company research profile before outreach. $0.03 USDC per result via x402 on Base: one request instead of three. Charged only when at least two of the three sections have data; otherwise nothing is charged and the answer says which single tool has data. Counts as one of the 5 free daily calls.","tags":["company-enrichment","lead-enrichment","hiring-signals","tech-stack","google-ads"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["domain"],"properties":{"domain":{"type":"string","description":"Public company domain without a URL scheme, path or port.","examples":["ramp.com"],"maxLength":253}}}}}},"responses":{"200":{"description":"Result; rows with a status other than ok are not charged","content":{"application/json":{"schema":{"type":"object","required":["domain","status","sections_status","checked_at"],"properties":{"domain":{"type":"string"},"status":{"type":"string","enum":["ok","insufficient_data"],"description":"Only ok is charged: at least two of the three sections have data."},"sections_status":{"type":"object","additionalProperties":{"type":"string"}},"footprint":{"type":"object","description":"found, not_found or unknown for each public signal.","properties":{"website_ad_or_analytics_tags":{"type":"string"},"job_board_with_open_roles":{"type":"string"},"google_ads":{"type":"string"}}},"sections_with_data":{"type":"array","items":{"type":"string"}},"signals":{"type":"array","items":{"type":"string"}},"tech_stack":{"type":["object","null"],"description":"Same fields as detect_website_tech_stack."},"hiring_intent":{"type":["object","null"],"description":"Same fields as get_company_hiring_intent."},"google_ads":{"type":["object","null"],"description":"Same fields as get_google_ads_by_domain."},"checked_at":{"type":"string","format":"date-time"},"note":{"type":["string","null"]}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"402":{"description":"x402 v2 challenge: $0.03 USDC; private bundles $0.04"},"409":{"description":"Duplicate payment, changed input or operation pending","content":{"application/problem+json":{}}},"503":{"description":"Engine or payment configuration unavailable","content":{"application/problem+json":{}}}}}},"/v1/company-footprint":{"post":{"operationId":"company_footprint_check","description":"Company footprint check for investment, due-diligence and vendor-risk agents: for one domain, reports which public operating signals exist: website ad and analytics tags, an active job board with open roles, and Google Ads in the public Transparency Center. Each signal is marked found, not_found or unknown in footprint, with the underlying data. Facts only: no revenue, burn or fraud estimates. $0.03 USDC per result via x402 on Base, charged only when at least two of the three checks return data; otherwise not charged. Counts as one of the 5 free daily calls.","tags":["due-diligence","company-research","investment-research","hiring-signals","tech-stack"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["domain"],"properties":{"domain":{"type":"string","description":"Public company domain without a URL scheme, path or port.","examples":["ramp.com"],"maxLength":253}}}}}},"responses":{"200":{"description":"Result; rows with a status other than ok are not charged","content":{"application/json":{"schema":{"type":"object","required":["domain","status","sections_status","checked_at"],"properties":{"domain":{"type":"string"},"status":{"type":"string","enum":["ok","insufficient_data"],"description":"Only ok is charged: at least two of the three sections have data."},"sections_status":{"type":"object","additionalProperties":{"type":"string"}},"footprint":{"type":"object","description":"found, not_found or unknown for each public signal.","properties":{"website_ad_or_analytics_tags":{"type":"string"},"job_board_with_open_roles":{"type":"string"},"google_ads":{"type":"string"}}},"sections_with_data":{"type":"array","items":{"type":"string"}},"signals":{"type":"array","items":{"type":"string"}},"tech_stack":{"type":["object","null"],"description":"Same fields as detect_website_tech_stack."},"hiring_intent":{"type":["object","null"],"description":"Same fields as get_company_hiring_intent."},"google_ads":{"type":["object","null"],"description":"Same fields as get_google_ads_by_domain."},"checked_at":{"type":"string","format":"date-time"},"note":{"type":["string","null"]}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"402":{"description":"x402 v2 challenge: $0.03 USDC; private bundles $0.04"},"409":{"description":"Duplicate payment, changed input or operation pending","content":{"application/problem+json":{}}},"503":{"description":"Engine or payment configuration unavailable","content":{"application/problem+json":{}}}}}},"/v1/hot-buyers":{"post":{"operationId":"find_hot_buyers","description":"Buying intent for a list of companies: find which of 2 to 25 domains are hiring hardest. Step 1 (free): send domains and an optional min_intent_score (default 70); every domain gets a hiring-signals check, cold domains come back free with their intent_score, and you get a quote_id. Step 2: send {quote_id} and pay exactly $0.25 USDC per hot company via x402 on Base for a full company profile each (tech stack, hiring intent, Google Ads). At most 4 hot companies per paid call ($1 max); extra hot domains are listed in more_hot to scan again. Zero hot means no charge. Quotes last 15 minutes; 3 free scans per day per IP.","tags":["buying-intent","hiring-signals","lead-scoring","account-prioritization","sales-intelligence"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"domains":{"type":"array","minItems":2,"maxItems":25,"items":{"type":"string","maxLength":253},"description":"Public company domains without a URL scheme, path or port."},"min_intent_score":{"type":"integer","minimum":0,"maximum":100,"default":70},"quote_id":{"type":"string","description":"quote_id from step 1. Send it alone to pay and receive the results."}},"anyOf":[{"required":["domains"]},{"required":["quote_id"]}]}}}},"responses":{"200":{"description":"Result; rows with a status other than ok are not charged","content":{"application/json":{"schema":{"type":"object","required":["status"],"properties":{"status":{"type":"string","enum":["quote","nothing_billable","ok"],"description":"quote: pay with quote_id to get the results. nothing_billable: no charge. ok: paid results."},"quote_id":{"type":"string"},"expires_at":{"type":"string","format":"date-time"},"billable_count":{"type":"integer"},"price_micro_usd":{"type":"integer"},"price_usd":{"type":"number"},"cold":{"type":"array","items":{"type":"object"},"description":"hot-buyers: domains below the threshold, free."},"statuses":{"type":"array","items":{"type":"object"},"description":"Status of every domain, free."},"results":{"type":"array","items":{"type":"object"},"description":"Paid rows, after step 2."},"next":{"type":"string"}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"402":{"description":"x402 v2 challenge: $0.25 USDC; private bundles $0.04"},"409":{"description":"Duplicate payment, changed input or operation pending","content":{"application/problem+json":{}}},"503":{"description":"Engine or payment configuration unavailable","content":{"application/problem+json":{}}}}}},"/v1/batch":{"post":{"operationId":"batch_lookup","description":"Bulk company lookup: run one tool (tech stack, open jobs, hiring intent, Google Ads or company profile) on many domains with one payment. Step 1 (free): send {tool, domains}; every domain is checked and you get each status plus a quote_id priced only for rows with data. Step 2: send {quote_id} and pay the exact quoted amount via x402 on Base to receive all rows. Max $1 per call: up to 50 domains, or 33 for company-profile. Rows without data are never charged. Quotes last 15 minutes; 3 free scans per day per IP.","tags":["bulk-enrichment","batch","company-data","lead-enrichment","hiring-signals"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"tool":{"type":"string","enum":["tech-stack","ats-jobs","company-intent","google-ads","company-profile"]},"domains":{"type":"array","minItems":1,"maxItems":50,"items":{"type":"string","maxLength":253},"description":"Public company domains without a URL scheme, path or port."},"quote_id":{"type":"string","description":"quote_id from step 1. Send it alone to pay and receive the results."}},"anyOf":[{"required":["tool","domains"]},{"required":["quote_id"]}]}}}},"responses":{"200":{"description":"Result; rows with a status other than ok are not charged","content":{"application/json":{"schema":{"type":"object","required":["status"],"properties":{"status":{"type":"string","enum":["quote","nothing_billable","ok"],"description":"quote: pay with quote_id to get the results. nothing_billable: no charge. ok: paid results."},"quote_id":{"type":"string"},"expires_at":{"type":"string","format":"date-time"},"billable_count":{"type":"integer"},"price_micro_usd":{"type":"integer"},"price_usd":{"type":"number"},"cold":{"type":"array","items":{"type":"object"},"description":"hot-buyers: domains below the threshold, free."},"statuses":{"type":"array","items":{"type":"object"},"description":"Status of every domain, free."},"results":{"type":"array","items":{"type":"object"},"description":"Paid rows, after step 2."},"next":{"type":"string"}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"402":{"description":"x402 v2 challenge: $0.01 USDC; private bundles $0.04"},"409":{"description":"Duplicate payment, changed input or operation pending","content":{"application/problem+json":{}}},"503":{"description":"Engine or payment configuration unavailable","content":{"application/problem+json":{}}}}}},"/v1/private-query":{"post":{"operationId":"private_blind_lookup","description":"Blind execution proxy: target is stripped from x402 facilitator metadata, not hidden from HirePulse or destination. $0.02 single check; company_profile and due_diligence require X-Private-Query-Tier: bundle ($0.04), or params._meta[\"hirepulse/private-tier\"] in MCP. Choose tier before submitting the body. No settlement for empty results.","tags":["privacy","x402","blind-lookup"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}},{"in":"header","name":"X-Private-Query-Tier","required":false,"schema":{"type":"string","enum":["single","bundle"],"default":"single"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["tool","target"],"properties":{"tool":{"type":"string","enum":["tech_stack","open_jobs","hiring_intent","google_ads","company_profile","due_diligence","extract_contacts","clean_markdown"]},"target":{"type":"string","minLength":1,"maxLength":2048}}}}}},"responses":{"200":{"description":"Result; rows with a status other than ok are not charged","content":{"application/json":{"schema":{"type":"object","required":["domain","status"],"properties":{"domain":{"type":"string"},"status":{"type":"string"},"privacy_guarantee":{"type":"string"},"result":{"type":"object"}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"402":{"description":"x402 v2 challenge: $0.02 USDC; private bundles $0.04"},"409":{"description":"Duplicate payment, changed input or operation pending","content":{"application/problem+json":{}}},"503":{"description":"Engine or payment configuration unavailable","content":{"application/problem+json":{}}}}}},"/v1/verify-merchant":{"post":{"operationId":"x402_merchant_trust_check","description":"Pre-payment HTTPS merchant scanner: checks public discovery, live 402 terms, comparable USDC prices, latency and regex prompt-injection flags within 4 seconds. Evidence-based heuristic, not certification or a guarantee. SSRF protected. $0.002 per completed report; unreachable targets free.","tags":["x402","security","MCP","prompt-injection","merchant-trust"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["target_url"],"properties":{"target_url":{"type":"string","minLength":1,"maxLength":2048}}}}}},"responses":{"200":{"description":"Result; rows with a status other than ok are not charged","content":{"application/json":{"schema":{"type":"object","required":["domain","status"],"properties":{"domain":{"type":"string"},"status":{"type":"string"},"safe_to_pay":{"type":"boolean"},"trust_score":{"type":"integer","minimum":0,"maximum":100},"latency_ms":{"type":"number"},"valid_x402_config":{"type":"boolean"},"prompt_injection_risk":{"type":"string","enum":["LOW","MEDIUM","CRITICAL"]},"matched_flags":{"type":"array","items":{"type":"string"}},"recommendation":{"type":"string"}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"402":{"description":"x402 v2 challenge: $0.002 USDC; private bundles $0.04"},"409":{"description":"Duplicate payment, changed input or operation pending","content":{"application/problem+json":{}}},"503":{"description":"Engine or payment configuration unavailable","content":{"application/problem+json":{}}}}}},"/v1/extract-contacts":{"post":{"operationId":"extract_company_contacts","description":"Public company contact extractor: homepage, about, contact, team and careers; deduplicated published emails and LinkedIn, X, Twitter, GitHub links. Native MX/SPF/DMARC checks; MX availability is not mailbox verification. Email pattern is inferred only from observed examples. $0.01; no emails, social links or valid MX means no charge.","tags":["B2B","contacts","email","MX","DNS","LinkedIn"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["domain"],"properties":{"domain":{"type":"string","maxLength":253}}}}}},"responses":{"200":{"description":"Result; rows with a status other than ok are not charged","content":{"application/json":{"schema":{"type":"object","required":["domain","status"],"properties":{"domain":{"type":"string"},"status":{"type":"string"},"emails":{"type":"array","items":{"type":"string"}},"social_links":{"type":"array","items":{"type":"string"}},"email_deliverable":{"type":"boolean"},"mx":{"type":"array","items":{"type":"string"}},"spf":{"type":"array","items":{"type":"string"}},"dmarc":{"type":"array","items":{"type":"string"}},"inferred_email_pattern":{"type":["string","null"]}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"402":{"description":"x402 v2 challenge: $0.01 USDC; private bundles $0.04"},"409":{"description":"Duplicate payment, changed input or operation pending","content":{"application/problem+json":{}}},"503":{"description":"Engine or payment configuration unavailable","content":{"application/problem+json":{}}}}}},"/v1/clean-markdown":{"post":{"operationId":"url_to_clean_markdown","description":"Convert a public web page to clean LLM-ready Markdown with title, meta description and approximate token count. Removes scripts, styles, navigation, footer and common ad clutter. SSRF and redirect protected. max_chars 1–100000 (default 15000). $0.002; empty results free.","tags":["markdown","scraping","LLM","web-content"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["url"],"properties":{"url":{"type":"string","minLength":1,"maxLength":2048},"max_chars":{"type":"integer","minimum":1,"maximum":100000,"default":15000}}}}}},"responses":{"200":{"description":"Result; rows with a status other than ok are not charged","content":{"application/json":{"schema":{"type":"object","required":["domain","status"],"properties":{"domain":{"type":"string"},"status":{"type":"string"},"title":{"type":"string"},"meta_description":{"type":"string"},"markdown":{"type":"string"},"token_count_estimate":{"type":"integer"},"truncated":{"type":"boolean"}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"402":{"description":"x402 v2 challenge: $0.002 USDC; private bundles $0.04"},"409":{"description":"Duplicate payment, changed input or operation pending","content":{"application/problem+json":{}}},"503":{"description":"Engine or payment configuration unavailable","content":{"application/problem+json":{}}}}}},"/ask-advisor":{"post":{"operationId":"ask_hirepulse_advisor_ask_advisor","description":"Alias of POST /v1/advisor; prefer /v1/advisor. Free advisor for AI agents: describe your goal (B2B leads, hiring signals, buying intent, tech stack lookup, Google Ads, VC due diligence) and get the right HirePulse tool, the real cost, your free-call balance and a ready-to-run request.","tags":["B2B leads","hiring signals","buying intent","tech stack lookup","Google Ads","VC due diligence","גיוס","מכירות","לידים","השקעות"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["agent_goal"],"properties":{"agent_goal":{"type":"string","minLength":1,"maxLength":500},"sample_domain":{"type":"string","maxLength":253},"domain_count":{"type":"integer","minimum":1,"maximum":1000000},"budget_usd":{"type":"number","minimum":0}}}}}},"responses":{"200":{"description":"Free advice; never consumes free calls","content":{"application/json":{"schema":{"type":"object","required":["recommended_tool","why","alternatives","efficiency_analysis","cost_estimate_usd","free_quota","recommended_execution_sequence","cached_hint","guarantees"],"properties":{"recommended_tool":{"type":["string","null"],"description":"Recommended data tool, or null when the goal is unclear."},"why":{"type":"string"},"alternatives":{"type":"array","items":{"type":"object"}},"tools":{"type":"array","items":{"type":"string"}},"efficiency_analysis":{"type":"object","required":["company_profile","separately","comparison","note"],"properties":{"company_profile":{"type":"object"},"separately":{"type":"object"},"comparison":{"type":"array","items":{"type":"string"}},"note":{"type":"string"}}},"cost_estimate_usd":{"type":["object","null"],"description":"List-price range before free quota, actual data availability and optional follow-up calls; includes request splitting and scan limits."},"free_quota":{"type":"object","required":["remaining","limit","resets_at","message","note"],"properties":{"remaining":{"type":"integer","minimum":0},"limit":{"type":"integer"},"resets_at":{"type":"string","format":"date-time"},"message":{"type":"string"},"note":{"type":"string"}}},"recommended_execution_sequence":{"type":"array","items":{"type":"object","required":["tool","mcp_tool","url","body","next_tool_call_payload","required_input"],"properties":{"tool":{"type":"string"},"mcp_tool":{"type":"string"},"url":{"type":"string","format":"uri"},"body":{"type":["object","null"]},"next_tool_call_payload":{"type":["object","null"],"description":"Exact executable request body when inputs are available; null until required_input is provided. Never contains invented domains or quote IDs."},"required_input":{"type":"array","items":{"type":"string"}},"phase":{"type":"string"},"note":{"type":"string"}}}},"cached_hint":{"type":["object","null"],"description":"Today only, status metadata; no result data or new engine calls."},"guarantees":{"type":"array","items":{"type":"string"}}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"429":{"description":"60 advisor calls per rolling hour per IP; Retry-After header"}},"deprecated":true}},"/private-query":{"post":{"operationId":"private_blind_lookup_private_query","description":"Alias of POST /v1/private-query; prefer /v1/private-query. Blind execution proxy: target is stripped from x402 facilitator metadata, not hidden from HirePulse or destination. $0.02 single check; company_profile and due_diligence require X-Private-Query-Tier: bundle ($0.04), or params._meta[\"hirepulse/private-tier\"] in MCP. Choose tier before submitting the body. No settlement for empty results.","tags":["privacy","x402","blind-lookup"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}},{"in":"header","name":"X-Private-Query-Tier","required":false,"schema":{"type":"string","enum":["single","bundle"],"default":"single"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["tool","target"],"properties":{"tool":{"type":"string","enum":["tech_stack","open_jobs","hiring_intent","google_ads","company_profile","due_diligence","extract_contacts","clean_markdown"]},"target":{"type":"string","minLength":1,"maxLength":2048}}}}}},"responses":{"200":{"description":"Result; rows with a status other than ok are not charged","content":{"application/json":{"schema":{"type":"object","required":["domain","status"],"properties":{"domain":{"type":"string"},"status":{"type":"string"},"privacy_guarantee":{"type":"string"},"result":{"type":"object"}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"402":{"description":"x402 v2 challenge: $0.02 USDC; private bundles $0.04"},"409":{"description":"Duplicate payment, changed input or operation pending","content":{"application/problem+json":{}}},"503":{"description":"Engine or payment configuration unavailable","content":{"application/problem+json":{}}}},"deprecated":true}},"/verify-merchant":{"post":{"operationId":"x402_merchant_trust_check_verify_merchant","description":"Alias of POST /v1/verify-merchant; prefer /v1/verify-merchant. Pre-payment HTTPS merchant scanner: checks public discovery, live 402 terms, comparable USDC prices, latency and regex prompt-injection flags within 4 seconds. Evidence-based heuristic, not certification or a guarantee. SSRF protected. $0.002 per completed report; unreachable targets free.","tags":["x402","security","MCP","prompt-injection","merchant-trust"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["target_url"],"properties":{"target_url":{"type":"string","minLength":1,"maxLength":2048}}}}}},"responses":{"200":{"description":"Result; rows with a status other than ok are not charged","content":{"application/json":{"schema":{"type":"object","required":["domain","status"],"properties":{"domain":{"type":"string"},"status":{"type":"string"},"safe_to_pay":{"type":"boolean"},"trust_score":{"type":"integer","minimum":0,"maximum":100},"latency_ms":{"type":"number"},"valid_x402_config":{"type":"boolean"},"prompt_injection_risk":{"type":"string","enum":["LOW","MEDIUM","CRITICAL"]},"matched_flags":{"type":"array","items":{"type":"string"}},"recommendation":{"type":"string"}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"402":{"description":"x402 v2 challenge: $0.002 USDC; private bundles $0.04"},"409":{"description":"Duplicate payment, changed input or operation pending","content":{"application/problem+json":{}}},"503":{"description":"Engine or payment configuration unavailable","content":{"application/problem+json":{}}}},"deprecated":true}},"/extract-contacts":{"post":{"operationId":"extract_company_contacts_extract_contacts","description":"Alias of POST /v1/extract-contacts; prefer /v1/extract-contacts. Public company contact extractor: homepage, about, contact, team and careers; deduplicated published emails and LinkedIn, X, Twitter, GitHub links. Native MX/SPF/DMARC checks; MX availability is not mailbox verification. Email pattern is inferred only from observed examples. $0.01; no emails, social links or valid MX means no charge.","tags":["B2B","contacts","email","MX","DNS","LinkedIn"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["domain"],"properties":{"domain":{"type":"string","maxLength":253}}}}}},"responses":{"200":{"description":"Result; rows with a status other than ok are not charged","content":{"application/json":{"schema":{"type":"object","required":["domain","status"],"properties":{"domain":{"type":"string"},"status":{"type":"string"},"emails":{"type":"array","items":{"type":"string"}},"social_links":{"type":"array","items":{"type":"string"}},"email_deliverable":{"type":"boolean"},"mx":{"type":"array","items":{"type":"string"}},"spf":{"type":"array","items":{"type":"string"}},"dmarc":{"type":"array","items":{"type":"string"}},"inferred_email_pattern":{"type":["string","null"]}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"402":{"description":"x402 v2 challenge: $0.01 USDC; private bundles $0.04"},"409":{"description":"Duplicate payment, changed input or operation pending","content":{"application/problem+json":{}}},"503":{"description":"Engine or payment configuration unavailable","content":{"application/problem+json":{}}}},"deprecated":true}},"/clean-markdown":{"post":{"operationId":"url_to_clean_markdown_clean_markdown","description":"Alias of POST /v1/clean-markdown; prefer /v1/clean-markdown. Convert a public web page to clean LLM-ready Markdown with title, meta description and approximate token count. Removes scripts, styles, navigation, footer and common ad clutter. SSRF and redirect protected. max_chars 1–100000 (default 15000). $0.002; empty results free.","tags":["markdown","scraping","LLM","web-content"],"parameters":[{"in":"header","name":"Idempotency-Key","required":false,"schema":{"type":"string","minLength":8,"maxLength":128}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["url"],"properties":{"url":{"type":"string","minLength":1,"maxLength":2048},"max_chars":{"type":"integer","minimum":1,"maximum":100000,"default":15000}}}}}},"responses":{"200":{"description":"Result; rows with a status other than ok are not charged","content":{"application/json":{"schema":{"type":"object","required":["domain","status"],"properties":{"domain":{"type":"string"},"status":{"type":"string"},"title":{"type":"string"},"meta_description":{"type":"string"},"markdown":{"type":"string"},"token_count_estimate":{"type":"integer"},"truncated":{"type":"boolean"}}}}}},"400":{"description":"Invalid input","content":{"application/problem+json":{}}},"402":{"description":"x402 v2 challenge: $0.002 USDC; private bundles $0.04"},"409":{"description":"Duplicate payment, changed input or operation pending","content":{"application/problem+json":{}}},"503":{"description":"Engine or payment configuration unavailable","content":{"application/problem+json":{}}}},"deprecated":true}}},"servers":[{"url":"https://gethirepulse.xyz"}]}