{"api":"Business verification in Mexico",
"apiRows":{"Employee profile":4725,"Employee email":5208,"Email validation":8590,"Employee phone":2351,"Company profile":2011,"Company headcount":742,"Phone validation":3340,"Post comments":689,"Post reactions":585,"Employee lookalikes":289,"Company lookalikes":1112,"Company technologies":1405,"Company job count":79,"Employee posts":716,"Company posts":759,"Company funding":676,"Company jobs":688,"Employee search":1846,"Company search":831,"Job search":774,"Reverse email lookup":1718,"Post search":639,"Post details":794,"Job details":642,"Employee comments":303,"Employee reactions":254,"Post reposts":143,"Employee recommendations":135,"Job lookalikes":65,"Employee articles":76,"Company enrichment":8129,"People search":3167,"Company discovery":4230,"Local business search":1355,"Local business reviews":332,"Job postings":1351,"Job posting details":663,"Person enrichment":1269,"Leadership changes":225,"Company hierarchy":485,"Web search":1712,"SERP":6243,"Search autocomplete":770,"News search":2293,"Image search":1412,"Video search":1568,"Web scraping":6872,"Keyword research":746,"Ranked keywords":472,"Related keywords":698,"Backlinks":403,"Domain authority":556,"Domain WHOIS":814,"IP company lookup":1180,"X profile":1269,"X posts":1078,"Instagram profile":1376,"Instagram posts":919,"TikTok profile":1118,"TikTok videos":816,"YouTube channel":1093,"YouTube channel videos":825,"Reddit profile":379,"Reddit posts":427,"Facebook page":602,"Facebook posts":497,"Threads profile":330,"Threads posts":280,"Bluesky profile":243,"Bluesky posts":195,"Telegram channel":227,"Telegram channel posts":214,"Pinterest search":217,"Pinterest pin":204,"Pinterest board pins":188,"Pinterest user boards":141,"Hacker News search":179,"Hacker News story comments":104,"Twitch profile":304,"Twitch videos":237,"Twitch clip":123,"Kick clip":98,"Snapchat profile":314,"Truth Social profile":160,"Truth Social posts":148,"GitHub profile":234,"GitHub repository":235,"GitHub user repositories":163,"Douyin profile":167,"Douyin user videos":132,"Douyin video":182,"Weibo profile":163,"Weibo user posts":139,"Weibo post":176,"Xiaohongshu profile":158,"Xiaohongshu user notes":164,"Xiaohongshu note":251,"Zhihu profile":59,"Zhihu question answers":52,"Kuaishou profile":33,"Kuaishou user videos":55,"Kuaishou video":71,"Bilibili profile":161,"Bilibili user videos":109,"Bilibili video":113,"Facebook ads":393,"Google ads":374,"LinkedIn ads":185,"TikTok ads":238,"G2 reviews":128,"Capterra reviews":186,"Trustpilot reviews":326,"Glassdoor reviews":168,"App Store app":530,"App Store reviews":480,"Google Play app":504,"Google Play reviews":370,"Amazon product":1082,"Amazon search":907,"Google Shopping product":334,"Google Shopping search":665,"Walmart product":684,"Walmart search":650,"eBay product":548,"eBay search":640,"eBay sold listings":104,"TikTok Shop product":238,"TikTok Shop search":195,"Facebook Marketplace listing":167,"Facebook Marketplace search":199,"Zillow search":362,"Zillow property":324,"Redfin search":150,"Redfin property":281,"Realtor.com search":114,"Realtor.com property":165,"App Store search":530,"Google Play search":442,"ChatGPT answer":854,"Perplexity answer":560,"Gemini answer":708,"Bing Copilot answer":431,"Google AI Overview answer":595,"Google AI Mode answer":899,"Business verification":1594},
"treeCounts":{"Employee profile":{"best":218,"top":3,"through":{"AnyAPI":5,"Clay":22,"ColdIQ":7,"Databar":15,"Deepline":22,"Monid":7,"Orthogonal":18,"RouterGrowth":1,"treg":26}},"Employee email":{"best":317,"top":3,"through":{"AnyAPI":9,"Clay":23,"ColdIQ":11,"Databar":22,"Deepline":18,"Monid":5,"Orthogonal":12,"RouterGrowth":4,"treg":20}},"Email validation":{"best":563,"top":3,"through":{"AnyAPI":2,"Clay":12,"ColdIQ":5,"Databar":3,"Deepline":7,"Monid":2,"Orthogonal":5,"PayPerQ":1,"RouterGrowth":3,"treg":9}},"Employee phone":{"best":206,"top":3,"through":{"AnyAPI":3,"Clay":14,"ColdIQ":6,"Databar":14,"Deepline":11,"Monid":1,"Orthogonal":6,"RouterGrowth":2,"treg":9}},"Company profile":{"best":161,"top":3,"through":{"Clay":4,"ColdIQ":3,"Databar":4,"Deepline":3,"Orthogonal":5,"RouterGrowth":1,"treg":7}},"Company headcount":{"best":68,"top":3,"through":{"Orthogonal":2,"treg":3}},"Phone validation":{"best":336,"top":3,"through":{"Clay":1,"Databar":1,"Deepline":1,"Orthogonal":1,"treg":2}},"Post comments":{"best":60,"top":3,"through":{"ColdIQ":1,"Deepline":1,"Orthogonal":1,"treg":1}},"Post reactions":{"best":46,"top":3,"through":{"ColdIQ":1,"Deepline":1,"Orthogonal":1,"treg":1}},"Employee lookalikes":{"best":22,"top":3},"Company lookalikes":{"best":105,"top":3,"through":{"Clay":2,"ColdIQ":3,"Databar":3,"Deepline":2,"Orthogonal":4,"treg":4}},"Company technologies":{"best":174,"top":3,"through":{"AnyAPI":1,"Clay":5,"ColdIQ":6,"Databar":7,"Deepline":7,"Monid":1,"Orthogonal":2,"RouterGrowth":1,"treg":2}},"Company job count":{"best":8,"top":2,"through":{"Orthogonal":1}},"Employee posts":{"best":74,"top":3,"through":{"ColdIQ":1,"Deepline":1,"Orthogonal":1,"treg":1}},"Company posts":{"best":89,"top":3,"through":{"ColdIQ":1,"Deepline":1,"Orthogonal":1,"treg":2}},"Company funding":{"best":87,"top":3,"through":{"Clay":1,"ColdIQ":2,"Databar":2,"Deepline":2,"Orthogonal":1,"RouterGrowth":1,"treg":1}},"Company jobs":{"best":92,"top":3,"through":{"AnyAPI":1,"Clay":2,"ColdIQ":1,"Databar":2,"Deepline":2,"Monid":1,"Orthogonal":2,"RouterGrowth":1,"treg":2}},"Employee search":{"best":78,"top":3,"through":{"AnyAPI":1,"Clay":2,"ColdIQ":4,"Databar":4,"Deepline":6,"Monid":1,"Orthogonal":5,"PayPerQ":1,"RouterGrowth":2,"treg":5}},"Company search":{"best":46,"top":3,"through":{"AnyAPI":1,"ColdIQ":3,"Deepline":4,"Monid":1,"Orthogonal":4,"PayPerQ":1,"RouterGrowth":1,"treg":4}},"Job search":{"best":75,"top":3,"through":{"ColdIQ":1,"Deepline":1,"Orthogonal":2,"treg":3}},"Reverse email lookup":{"best":130,"top":3,"through":{"AnyAPI":1,"Clay":5,"ColdIQ":2,"Databar":5,"Deepline":3,"Monid":1,"Orthogonal":5,"RouterGrowth":1,"treg":5}},"Post search":{"best":71,"top":3,"through":{"Orthogonal":1,"treg":1}},"Post details":{"best":81,"top":3,"through":{"Orthogonal":2,"treg":2}},"Job details":{"best":64,"top":3,"through":{"Orthogonal":1,"treg":2}},"Employee comments":{"best":30,"top":3},"Employee reactions":{"best":24,"top":3},"Post reposts":{"best":12,"top":3},"Employee recommendations":{"best":10,"top":2},"Job lookalikes":{"best":7,"top":3},"Employee articles":{"best":8,"top":3},"Company enrichment":{"best":974,"top":3,"through":{"AnyAPI":4,"Clay":12,"ColdIQ":5,"Databar":8,"Deepline":11,"Monid":6,"Orthogonal":11,"RouterGrowth":2,"treg":16,"Unified.to":19}},"People search":{"best":331,"top":3,"through":{"AnyAPI":3,"Clay":9,"ColdIQ":4,"Databar":8,"Deepline":11,"Monid":4,"Orthogonal":7,"PayPerQ":1,"treg":13}},"Company discovery":{"best":553,"top":3,"through":{"AnyAPI":4,"Clay":5,"ColdIQ":6,"Databar":6,"Deepline":13,"Monid":8,"Orthogonal":10,"RouterGrowth":2,"treg":18}},"Local business search":{"best":174,"top":3},"Local business reviews":{"best":51,"top":3},"Job postings":{"best":144,"top":3,"through":{"AnyAPI":1,"Clay":3,"ColdIQ":2,"Databar":4,"Deepline":4,"Orthogonal":2,"RouterGrowth":1,"treg":2}},"Job posting details":{"best":83,"top":3,"through":{"ColdIQ":1,"Deepline":1,"Orthogonal":1,"treg":1}},"Person enrichment":{"best":224,"top":3,"through":{"Databar":1,"treg":1}},"Leadership changes":{"best":28,"top":3},"Company hierarchy":{"best":109,"top":3,"through":{"Deepline":1}},"Web search":{"best":194,"top":3,"through":{"Deepline":4}},"SERP":{"best":241,"top":3,"through":{"Deepline":2}},"Search autocomplete":{"best":67,"top":3},"News search":{"best":267,"top":3},"Image search":{"best":88,"top":3},"Video search":{"best":111,"top":3},"Web scraping":{"best":455,"top":3},"Keyword research":{"best":98,"top":3},"Ranked keywords":{"best":56,"top":3},"Related keywords":{"best":78,"top":3},"Backlinks":{"best":53,"top":3},"Domain authority":{"best":65,"top":3},"Domain WHOIS":{"best":155,"top":3},"IP company lookup":{"best":147,"top":3},"X profile":{"best":137,"top":3},"X posts":{"best":135,"top":3},"Instagram profile":{"best":164,"top":3},"Instagram posts":{"best":131,"top":3},"TikTok profile":{"best":160,"top":3},"TikTok videos":{"best":129,"top":3},"YouTube channel":{"best":143,"top":3},"YouTube channel videos":{"best":132,"top":3},"Reddit profile":{"best":53,"top":3},"Reddit posts":{"best":66,"top":3},"Facebook page":{"best":85,"top":3},"Facebook posts":{"best":75,"top":3},"Threads profile":{"best":52,"top":3},"Threads posts":{"best":45,"top":3},"Bluesky profile":{"best":41,"top":3},"Bluesky posts":{"best":38,"top":3},"Telegram channel":{"best":36,"top":3},"Telegram channel posts":{"best":36,"top":3},"Pinterest search":{"best":34,"top":3},"Pinterest pin":{"best":32,"top":3},"Pinterest board pins":{"best":27,"top":3},"Pinterest user boards":{"best":23,"top":3},"Hacker News search":{"best":40,"top":3},"Hacker News story comments":{"best":21,"top":3},"Twitch profile":{"best":40,"top":3},"Twitch videos":{"best":30,"top":3},"Twitch clip":{"best":19,"top":3},"Kick clip":{"best":16,"top":3},"Snapchat profile":{"best":38,"top":3},"Truth Social profile":{"best":26,"top":3},"Truth Social posts":{"best":26,"top":3},"GitHub profile":{"best":36,"top":3},"GitHub repository":{"best":47,"top":3},"GitHub user repositories":{"best":27,"top":3},"Douyin profile":{"best":27,"top":1},"Douyin user videos":{"best":27,"top":2},"Douyin video":{"best":28,"top":3},"Weibo profile":{"best":19,"top":3},"Weibo user posts":{"best":19,"top":3},"Weibo post":{"best":23,"top":3},"Xiaohongshu profile":{"best":26,"top":3},"Xiaohongshu user notes":{"best":25,"top":2},"Xiaohongshu note":{"best":30,"top":3},"Zhihu profile":{"best":13,"top":3},"Zhihu question answers":{"best":12,"top":3},"Kuaishou profile":{"best":9,"top":3},"Kuaishou user videos":{"best":13,"top":3},"Kuaishou video":{"best":15,"top":3},"Bilibili profile":{"best":17,"top":1},"Bilibili user videos":{"best":20,"top":1},"Bilibili video":{"best":20,"top":2},"Facebook ads":{"best":66,"top":3},"Google ads":{"best":45,"top":3},"LinkedIn ads":{"best":34,"top":3},"TikTok ads":{"best":32,"top":3},"G2 reviews":{"best":19,"top":3},"Capterra reviews":{"best":18,"top":3},"Trustpilot reviews":{"best":43,"top":3},"Glassdoor reviews":{"best":16,"top":3,"through":{"treg":2}},"App Store app":{"best":62,"top":3},"App Store reviews":{"best":63,"top":3},"Google Play app":{"best":55,"top":3},"Google Play reviews":{"best":55,"top":3},"Amazon product":{"best":120,"top":3},"Amazon search":{"best":105,"top":3},"Google Shopping product":{"best":29,"top":3},"Google Shopping search":{"best":66,"top":3},"Walmart product":{"best":60,"top":3},"Walmart search":{"best":62,"top":3},"eBay product":{"best":51,"top":3},"eBay search":{"best":58,"top":3},"eBay sold listings":{"best":5,"top":2},"TikTok Shop product":{"best":39,"top":3},"TikTok Shop search":{"best":35,"top":3},"Facebook Marketplace listing":{"best":28,"top":3},"Facebook Marketplace search":{"best":33,"top":3},"Zillow search":{"best":33,"top":3},"Zillow property":{"best":36,"top":3},"Redfin search":{"best":16,"top":3},"Redfin property":{"best":21,"top":3},"Realtor.com search":{"best":13,"top":3},"Realtor.com property":{"best":15,"top":3},"App Store search":{"best":55,"top":3},"Google Play search":{"best":46,"top":3},"ChatGPT answer":{"best":107,"top":3},"Perplexity answer":{"best":84,"top":3},"Gemini answer":{"best":92,"top":3},"Bing Copilot answer":{"best":52,"top":2},"Google AI Overview answer":{"best":81,"top":3},"Google AI Mode answer":{"best":96,"top":3},"Business verification":{"best":228,"top":3,"through":{"Deepline":1}}},
"bestPages":{"Employee profile":["/best-linkedin-profile-api","LinkedIn profile API: best providers in 2026"],"Employee email":["/best-email-finder-api","Email finder API: best providers in 2026"],"Email validation":["/best-email-verification-api","Email validation API: best providers in 2026"],"Employee phone":["/best-phone-finder-api","Phone finder API: best providers in 2026"],"Company profile":["/best-linkedin-company-data-api","LinkedIn company data API: best providers in 2026"],"Company headcount":["/best-company-headcount-api","Company headcount API: best providers in 2026"],"Phone validation":["/best-phone-validation-api","Phone validation API: best providers in 2026"],"Post comments":["/best-linkedin-post-comment-api","LinkedIn post comment API: best providers in 2026"],"Post reactions":["/best-linkedin-post-reaction-api","LinkedIn post reaction API: best providers in 2026"],"Employee lookalikes":["/best-similar-people-api","Similar people API: best providers in 2026"],"Company lookalikes":["/best-similar-companies-api","Similar companies API: best providers in 2026"],"Company technologies":["/best-tech-stack-api","Tech stack API: best providers in 2026"],"Employee posts":["/best-linkedin-profile-post-api","LinkedIn profile post API: best providers in 2026"],"Company posts":["/best-linkedin-company-post-api","LinkedIn company post API: best providers in 2026"],"Company funding":["/best-company-funding-api","Company funding API: best providers in 2026"],"Company jobs":["/best-company-open-jobs-api","Company job openings API: best providers in 2026"],"Employee search":["/best-linkedin-people-search-api","LinkedIn people search API: best providers in 2026"],"Company search":["/best-linkedin-company-search-api","LinkedIn company search API: best providers in 2026"],"Job search":["/best-linkedin-job-search-api","LinkedIn job search API: best providers in 2026"],"Reverse email lookup":["/best-reverse-email-lookup-api","Reverse email lookup API: best providers in 2026"],"Post search":["/best-linkedin-post-search-api","LinkedIn post search API: best providers in 2026"],"Post details":["/best-linkedin-post-details-api","LinkedIn post details API: best providers in 2026"],"Job details":["/best-linkedin-job-details-api","LinkedIn job details API: best providers in 2026"],"Employee comments":["/best-linkedin-profile-comment-api","LinkedIn profile comment API: best providers in 2026"],"Employee reactions":["/best-linkedin-profile-reaction-api","LinkedIn profile reaction API: best providers in 2026"],"Post reposts":["/best-linkedin-post-repost-api","LinkedIn repost API: best providers in 2026"],"Job lookalikes":["/best-similar-jobs-api","Similar job postings API: best providers in 2026"],"Company enrichment":["/best-company-enrichment-api","Company enrichment API: best providers in 2026"],"People search":["/best-people-search-api","People lookup API: best providers in 2026"],"Company discovery":["/best-company-discovery-api","Company discovery API: best providers in 2026"],"Local business search":["/best-local-business-search-api","Local business search API: best providers in 2026"],"Local business reviews":["/best-local-business-reviews-api","Local business reviews API: best providers in 2026"],"Job postings":["/best-job-postings-api","Job postings API: best providers in 2026"],"Job posting details":["/best-job-posting-details-api","Job posting details API: best providers in 2026"],"Person enrichment":["/best-people-enrichment-api","People enrichment API: best providers in 2026"],"Leadership changes":["/best-leadership-change-api","Leadership change API: best providers in 2026"],"Company hierarchy":["/best-company-hierarchy-api","Company hierarchy API: best providers in 2026"],"Web search":["/best-web-search-api","Web search API: best providers in 2026"],"SERP":["/best-serp-api","SERP API: best providers in 2026"],"Search autocomplete":["/best-search-autocomplete-api","Search autocomplete API: best providers in 2026"],"News search":["/best-news-api","News API: best providers in 2026"],"Image search":["/best-image-search-api","Image search API: best providers in 2026"],"Video search":["/best-video-search-api","Video search API: best providers in 2026"],"Web scraping":["/best-web-scraping-api","Web scraping API: best providers in 2026"],"Keyword research":["/best-keyword-research-api","Keyword research API: best providers in 2026"],"Ranked keywords":["/best-ranked-keywords-api","Ranked keywords API: best providers in 2026"],"Related keywords":["/best-related-keywords-api","Related keywords API: best providers in 2026"],"Backlinks":["/best-backlink-api","Backlinks API: best providers in 2026"],"Domain authority":["/best-domain-authority-api","Domain authority API: best providers in 2026"],"Domain WHOIS":["/best-domain-whois-api","Domain WHOIS API: best providers in 2026"],"IP company lookup":["/best-ip-company-lookup-api","IP company lookup API: best providers in 2026"],"X profile":["/best-x-twitter-profile-api","X (Twitter) profile API: best providers in 2026"],"X posts":["/best-x-twitter-post-api","X (Twitter) post API: best providers in 2026"],"Instagram profile":["/best-instagram-profile-api","Instagram profile API: best providers in 2026"],"Instagram posts":["/best-instagram-post-api","Instagram post API: best providers in 2026"],"TikTok profile":["/best-tiktok-profile-api","TikTok profile API: best providers in 2026"],"TikTok videos":["/best-tiktok-video-api","TikTok video API: best providers in 2026"],"YouTube channel":["/best-youtube-channel-api","YouTube channel API: best providers in 2026"],"YouTube channel videos":["/best-youtube-channel-video-api","YouTube channel video API: best providers in 2026"],"Reddit profile":["/best-reddit-profile-api","Reddit profile API: best providers in 2026"],"Reddit posts":["/best-reddit-post-api","Reddit post API: best providers in 2026"],"Facebook page":["/best-facebook-page-api","Facebook page API: best providers in 2026"],"Facebook posts":["/best-facebook-post-api","Facebook post API: best providers in 2026"],"Threads profile":["/best-threads-profile-api","Threads profile API: best providers in 2026"],"Threads posts":["/best-threads-post-api","Threads post API: best providers in 2026"],"Bluesky profile":["/best-bluesky-profile-api","Bluesky profile API: best providers in 2026"],"Bluesky posts":["/best-bluesky-post-api","Bluesky post API: best providers in 2026"],"Telegram channel":["/best-telegram-channel-api","Telegram channel API: best providers in 2026"],"Telegram channel posts":["/best-telegram-channel-post-api","Telegram channel post API: best providers in 2026"],"Pinterest search":["/best-pinterest-search-api","Pinterest search API: best providers in 2026"],"Pinterest pin":["/best-pinterest-pin-api","Pinterest pin API: best providers in 2026"],"Pinterest board pins":["/best-pinterest-board-pin-api","Pinterest board pin API: best providers in 2026"],"Pinterest user boards":["/best-pinterest-user-board-api","Pinterest user board API: best providers in 2026"],"Hacker News search":["/best-hacker-news-search-api","Hacker News search API: best providers in 2026"],"Hacker News story comments":["/best-hacker-news-comment-api","Hacker News comment API: best providers in 2026"],"Twitch profile":["/best-twitch-profile-api","Twitch profile API: best providers in 2026"],"Twitch videos":["/best-twitch-video-api","Twitch video API: best providers in 2026"],"Twitch clip":["/best-twitch-clip-api","Twitch clip API: best providers in 2026"],"Kick clip":["/best-kick-clip-api","Kick clip API: best providers in 2026"],"Snapchat profile":["/best-snapchat-profile-api","Snapchat profile API: best providers in 2026"],"Truth Social profile":["/best-truth-social-profile-api","Truth Social profile API: best providers in 2026"],"Truth Social posts":["/best-truth-social-post-api","Truth Social post API: best providers in 2026"],"GitHub profile":["/best-github-profile-api","GitHub profile API: best providers in 2026"],"GitHub repository":["/best-github-repository-api","GitHub repository API: best providers in 2026"],"GitHub user repositories":["/best-github-user-repository-api","GitHub user repositories API: best providers in 2026"],"Weibo profile":["/best-weibo-profile-api","Weibo profile API: best providers in 2026"],"Weibo user posts":["/best-weibo-user-post-api","Weibo user posts API: best providers in 2026"],"Xiaohongshu profile":["/best-xiaohongshu-profile-api","Xiaohongshu profile API: best providers in 2026"],"Xiaohongshu note":["/best-xiaohongshu-note-api","Xiaohongshu note API: best providers in 2026"],"Facebook ads":["/best-facebook-ad-library-api","Facebook Ad Library API: best providers in 2026"],"Google ads":["/best-google-ads-transparency-api","Google Ads Transparency API: best providers in 2026"],"LinkedIn ads":["/best-linkedin-ad-library-api","LinkedIn Ad Library API: best providers in 2026"],"TikTok ads":["/best-tiktok-ad-library-api","TikTok Ad Library API: best providers in 2026"],"G2 reviews":["/best-g2-review-api","G2 review API: best providers in 2026"],"Capterra reviews":["/best-capterra-review-api","Capterra review API: best providers in 2026"],"Trustpilot reviews":["/best-trustpilot-review-api","Trustpilot API: best providers in 2026"],"Glassdoor reviews":["/best-glassdoor-review-api","Glassdoor review API: best providers in 2026"],"App Store app":["/best-app-store-api","App Store API: best providers in 2026"],"App Store reviews":["/best-app-store-review-api","App Store review API: best providers in 2026"],"Google Play app":["/best-google-play-api","Google Play API: best providers in 2026"],"Google Play reviews":["/best-google-play-review-api","Google Play review API: best providers in 2026"],"Amazon product":["/best-amazon-product-api","Amazon product API: best providers in 2026"],"Amazon search":["/best-amazon-search-api","Amazon search API: best providers in 2026"],"Google Shopping product":["/best-google-shopping-product-api","Google Shopping product API: best providers in 2026"],"Google Shopping search":["/best-google-shopping-search-api","Google Shopping search API: best providers in 2026"],"Walmart product":["/best-walmart-product-api","Walmart product API: best providers in 2026"],"Walmart search":["/best-walmart-search-api","Walmart search API: best providers in 2026"],"eBay product":["/best-ebay-product-api","eBay product API: best providers in 2026"],"eBay search":["/best-ebay-search-api","eBay search API: best providers in 2026"],"TikTok Shop product":["/best-tiktok-shop-product-api","TikTok Shop product API: best providers in 2026"],"TikTok Shop search":["/best-tiktok-shop-search-api","TikTok Shop search API: best providers in 2026"],"Facebook Marketplace listing":["/best-facebook-marketplace-listing-api","Facebook Marketplace listing API: best providers in 2026"],"Facebook Marketplace search":["/best-facebook-marketplace-search-api","Facebook Marketplace search API: best providers in 2026"],"Zillow search":["/best-zillow-search-api","Zillow search API: best providers in 2026"],"Zillow property":["/best-zillow-property-api","Zillow property details API: best providers in 2026"],"Redfin search":["/best-redfin-search-api","Redfin search API: best providers in 2026"],"Redfin property":["/best-redfin-property-api","Redfin property API: best providers in 2026"],"Realtor.com search":["/best-realtor-com-search-api","Realtor.com search API: best providers in 2026"],"Realtor.com property":["/best-realtor-com-property-api","Realtor.com property API: best providers in 2026"],"App Store search":["/best-app-store-search-api","App Store search API: best providers in 2026"],"Google Play search":["/best-google-play-search-api","Google Play search API: best providers in 2026"],"ChatGPT answer":["/best-chatgpt-scraper-api","ChatGPT scraper API: best providers in 2026"],"Perplexity answer":["/best-perplexity-scraper-api","Perplexity scraper API: best providers in 2026"],"Gemini answer":["/best-gemini-scraper-api","Gemini scraper API: best providers in 2026"],"Google AI Overview answer":["/best-google-ai-overview-scraper-api","Google AI Overview scraper API: best providers in 2026"],"Google AI Mode answer":["/best-google-ai-mode-scraper-api","Google AI Mode scraper API: best providers in 2026"],"Business verification":["/best-business-verification-api","Business verification API: best providers in 2026"]},
"accuratePages":{"Employee email":["/most-accurate-email-finder-api","Most accurate email finder API in 2026"],"Email validation":["/most-accurate-email-verification-api","Most accurate email verification API in 2026"],"Employee phone":["/most-accurate-phone-finder-api","Most accurate phone finder API in 2026"],"Company headcount":["/most-accurate-company-headcount-api","Most accurate company headcount API in 2026"],"Phone validation":["/most-accurate-phone-validation-api","Most accurate phone validation API in 2026"],"Reverse email lookup":["/most-accurate-reverse-email-lookup-api","Most accurate reverse email lookup API in 2026"]},
"narrowedPages":{"Job postings":["/best-full-job-posting-api","Full job posting API: best providers in 2026"]},
"familyPages":[["/best-linkedin-api","Best LinkedIn API in 2026: pricing compared"],["/best-phone-api","Best Phone API in 2026: pricing compared"],["/best-email-api","Best Email API in 2026: pricing compared"],["/best-x-api","Best X (Twitter) API in 2026: pricing compared"],["/best-instagram-api","Best Instagram API in 2026: pricing compared"],["/best-reddit-api","Best Reddit API in 2026: pricing compared"],["/best-threads-api","Best Threads API in 2026: pricing compared"],["/best-pinterest-api","Best Pinterest API in 2026: pricing compared"],["/best-seo-api","Best SEO API in 2026: pricing compared"],["/best-data-enrichment-api","Best Data enrichment API in 2026: pricing compared"]],
"price":{"words":"Mexico business verification","least":["NeuralVerge's $50 monthly plan","/business-verification-apis/neuralverge/50-monthly-base-post-functions-v1-run-mx-companies-search","$50.00"],"plans":72,"free":7},
"unfollowed":["/business-verification-apis/neuralverge/50-monthly-base-post-functions-v1-run-mx-companies-search"],
"first":[{"provider":"API Market MX","api":"Business verification in Mexico","website":"https://apimarket.mx","pricingPage":"https://apimarket.mx/pricing","pitch":"Consulta si tu usuario está en la lista negra (Lista 69B) del SAT con múltiples filtros avanzados.","strengths":[],"aggregators":[],"freshness":null,"fieldFreshness":null,"history":null,"countries":["Mexico"],"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"El Cliente se compromete a utilizar la información proporcionada a través de nuestros servicios de manera lícita, conforme a todas las leyes, regulaciones y normativas aplicables, y de acuerdo con los términos y condiciones aquí establecidos. [...] El Cliente que solicita a API MARKET el servicio de obtención de datos personales y/o verificación de identidad deberá cumplir con lo siguiente: Obtener, en todos los casos y previamente, el consentimiento expreso y por escrito de los titulares de los datos e información personal de quienes solicita el servicio de obtención de datos personales y/o de verificación de identidad. [...] Si el Cliente revende los servicios de API Market o permite que terceros accedan a la información obtenida, deberá asegurarse de que dichos terceros cumplan con todas las obligaciones legales en materia de protección de datos personales.","plan":"Pro","who":"anyone who signs up","billing":"one-time","charged":null,"topUp":false,"pay":5000,"currency":"MXN","exchangeRate":0.054396,"termMonths":null,"from":null,"graduated":null,"units":10000,"unit":"credit","renews":"never","expires":"never","costUnits":1,"calls":10000,"monthlyCap":null,"perThousand":27.198,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":"hard","addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["54 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":4.17,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Consulta la lista negra (Lista 69B SAT)","method":"POST","path":"/api/sat/v2/lista69b","send":"Accept header \"application/json\"; rfc, contribuyente, select, Range header","fields":["success","validation code","message","status code","record ID","RFC","taxpayer name","situation","presumption notice number (SAT)","presumption published date (SAT)","presumption notice number (DOF)","presumption published date (DOF)","rebuttal notice number (SAT)","rebuttal published date (SAT)","rebuttal notice number (DOF)","rebuttal published date (DOF)","definitive notice number (SAT)","definitive published date (SAT)","definitive notice number (DOF)","definitive published date (DOF)","ruling notice number (SAT)","ruling published date (SAT)","ruling notice number (DOF)","ruling published date (DOF)"]},{"provider":"INEGI DENUE","api":"Business verification in Mexico","website":"https://www.inegi.org.mx","pricingPage":"https://www.inegi.org.mx/servicios/api_denue.html","pitch":"Realiza una consulta de todos los establecimientos por nombre o razón social y puede ser acotado por entidad federativa.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"countries":["Mexico"],"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"\"Puede explotar comercialmente la información, utilizándola como insumo para generar otros productos o servicios. Debe otorgar los créditos correspondientes al INEGI como autor [...] “Fuente: INEGI, nombre del producto de donde se extrae la información” [...] No debe aparentar que el uso que haga de la información representa una postura oficial del INEGI\"","plan":"Token","who":"anyone who registers for a token","billing":"free","charged":null,"topUp":null,"pay":0,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":null,"unit":"request","renews":null,"expires":null,"costUnits":0,"calls":null,"monthlyCap":null,"perThousand":0,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":[],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Nombre","method":"GET","path":"/app/api/denue/v1/consulta/Nombre/{Nombre del establecimiento ó razón social}/{Entidad federativa}/{Registro inicial}/{Registro final}/{Token}","send":"Nombre del establecimiento ó razón social, Entidad federativa, Registro inicial, Registro final","fields":["CLEE","establishment ID","establishment name","legal name","economic activity class","employee size range","street type","street","exterior number","interior number","neighborhood","postal code","locality, municipality and state","phone","email","website","establishment type","longitude","latitude","industrial corridor type","industrial corridor name","local number"]},{"provider":"Kiban","api":"Business verification in Mexico","website":"https://kiban.com","pricingPage":"https://www.kiban.com/en/modules/api-hub","pitch":"This API is meant to validate a list of RFCs for Persona Física and for Persona Moral in the SAT website.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"countries":["Mexico"],"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"Al utilizar los servicios, usted se compromete a abstenerse de: [...] Copiar, modificar, reproducir, eliminar, distribuir, descargar, almacenar, transmitir, vender, revender, publicar, realizar ingeniería inversa, licenciar, transferir, sublicenciar, otorgar derechos a terceros, total o parcialmente, o crear productos derivados de la información o servicios de kiban.","use":"Al utilizar los servicios, usted se compromete a abstenerse de: [...] Copiar, modificar, reproducir, eliminar, distribuir, descargar, almacenar, transmitir, vender, revender, publicar, realizar ingeniería inversa, licenciar, transferir, sublicenciar, otorgar derechos a terceros, total o parcialmente, o crear productos derivados de la información o servicios de kiban. [...] usted acepta abonar las tarifas y los impuestos correspondientes según lo establecido en la Tabla de precios para su negocio","plan":"Pay per use","who":"an authorized representative of a company, accepted by kiban's registration review and its sales team after a demo request","billing":"contact","charged":null,"topUp":null,"pay":null,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":null,"unit":"request","renews":null,"expires":null,"costUnits":null,"calls":null,"monthlyCap":null,"perThousand":null,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":null,"sharesBudgetWith":null,"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":null,"resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":null,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Validation for RFCs","method":"POST","path":"/api/v2/sat/rfc_validate","send":"rfcs[].rfc","fields":["RFC","validation result"]},{"provider":"Moffin","api":"Business verification in Mexico","website":"https://moffin.com","pricingPage":"https://moffin.com/como-contratar","pitch":"Consulta Buró, SAT, CURP y más fuentes desde tu sistema. Una API REST para conectar Moffin con tu producto: creas perfiles, corres consultas a 10 fuentes de crédito, identidad y cumplimiento, recibes documentos y evaluaciones, y te enteras por webhook cuando algo cambia.","strengths":[],"aggregators":[],"freshness":null,"fieldFreshness":null,"history":null,"countries":["Mexico"],"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"Moffin se ofrece para procesos legítimos de crédito, riesgo, compliance, recursos humanos y procurement. Está prohibido usar la plataforma para: Actividades ilegales o que infrinjan derechos de terceros. Consultas sobre personas sin la autorización correspondiente. Discriminación con base en categorías protegidas. Evadir controles de seguridad o de compliance.","plan":"Moffin Plataforma","who":"Companies of any line of business (no need to be a lender), individuals with business activity, and foreign companies; queries are about people and companies in Mexico","billing":"monthly","charged":null,"topUp":null,"pay":5000,"currency":"MXN","exchangeRate":0.054396,"termMonths":1,"from":null,"graduated":null,"units":null,"unit":"request","renews":null,"expires":null,"costUnits":null,"calls":null,"monthlyCap":null,"perThousand":null,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":[],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":null,"resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":10,"concurrent":null,"batch":1,"minBatch":null,"answer":"by webhook","latencyMs":null,"call":"Certificados de RFC ante el SAT","method":"POST","path":"/api/v1/query/sat_rfc","send":"rfc, accountType \"PM\" or \"PF\"; email, externalId, firstName, middleName, firstLastName, secondLastName, tradeName, phone, curp, address, neighborhood, city, municipality, state, zipCode, exteriorNumber, interiorNumber, country, nationality, nss, birthdate, metadata","fields":["RFC found","trade name","certificate type","certificate serial number","certificate status","certificate start date","certificate end date","certificate URL","certificate subject","certificate holder name","certificate holder organization","certificate holder RFC","certificate holder CURP","certificate holder country","certificate holder email","legal representative RFC","legal representative CURP"]},{"provider":"NeuralVerge","api":"Business verification in Mexico","website":"https://neuralverge.ai","pricingPage":"https://neuralverge.ai/pricing","pitch":"Search Mexican companies by name in the company publications of the Registro Público de Comercio (PSM): name, legal form and the latest publication with its number, type, title and date.","strengths":[],"aggregators":[],"freshness":null,"fieldFreshness":null,"history":null,"countries":["Mexico"],"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"not longer than necessary","use":"legitimate business purposes, including business research and enrichment, due diligence, risk and compliance assessment, fraud prevention, and professional (business-to-business) outreach, in each case conducted lawfully and proportionately. You must not use the Services, or any data obtained through them, to: violate any applicable law, regulation, sanctions, or third-party rights; determine an individual’s eligibility for credit, employment, insurance, housing, education, or another benefit, or for any other purpose regulated by the U.S. Fair Credit Reporting Act (FCRA) or similar consumer-protection or credit laws; target, profile, or make decisions about individuals on the basis of race, ethnicity, national origin, religion, sex, sexual orientation, gender identity, disability, health, age, union membership, or other protected characteristics, or otherwise in a way that is unlawfully discriminatory; stalk, harass, threaten, dox, surveil, or facilitate harm to any individual, or use the Services in connection with domestic abuse or intimate-partner monitoring; carry out surveillance or monitoring in violation of privacy, wiretapping, or data-protection laws; attempt to re-identify individuals from de-identified or aggregated data except as expressly permitted; scrape, crawl, or use automated means to extract data from the Services except as we expressly permit, or interfere with, disrupt, or place undue load on the Services; attempt unauthorized access to the Services, other users’ data, or related systems; probe or test vulnerabilities without authorization; or introduce malware or harmful code; reverse engineer, decompile, or create derivative datasets or competing products from the Services, or resell or redistribute the Services or their outputs, except as expressly permitted; send unlawful, unsolicited, or deceptive communications, or misrepresent your identity, affiliation, or the source of a communication; submit special category data, or data about minors, except where expressly agreed in writing and subject to additional safeguards. When the Services provide information about individuals, you must handle it fairly and lawfully, use it only for the permitted purposes above, keep it secure, honor individuals’ privacy rights and any objection or deletion requests, and not retain it longer than necessary.","plan":"Base","who":"business and professional use, 18 or over","billing":"monthly","charged":null,"topUp":null,"pay":50,"currency":"USD","exchangeRate":1,"termMonths":1,"from":null,"graduated":null,"units":50000,"unit":"credit","renews":"month","expires":"points reset every billing cycle","costUnits":1,"calls":50000,"monthlyCap":null,"perThousand":1,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":0,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["363 other calls"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":10,"concurrent":50,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Mexico companies search","method":"POST","path":"/functions/v1/run-mx-companies-search","send":"keyword; max_items, start_page, status","fields":["session ID","kind","input keyword","input max items","input start page","partial","human summary","results on page","registration number","name","status","address","URL","company type","incorporation date","last publication number","last publication type","last publication title","last publication date","publications on page","total results","page count","blocked","proxy traffic bytes","points charged"]},{"provider":"Nubarium","api":"Business verification in Mexico","website":"https://nubarium.com","pricingPage":"https://nubarium.com/contacto","pitch":"This service provides real-time validation of business entity records against Mexico’s Registro Público de Comercio (RPC) through the Sistema Integral de Gestión Registral (SIGER) managed by the Ministry of Economy.","strengths":[],"aggregators":[],"freshness":null,"fieldFreshness":null,"history":null,"countries":["Mexico"],"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no API terms","use":"no API terms","plan":"Contact us","who":"anyone","billing":"contact","charged":null,"topUp":null,"pay":null,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":null,"unit":"request","renews":null,"expires":null,"costUnits":null,"calls":null,"monthlyCap":null,"perThousand":null,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":null,"sharesBudgetWith":null,"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":null,"resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Public Registry of Commerce - SIGER","method":"POST","path":"/mex/documents/v1/validate-prc","send":"documentNumber","fields":["status","message code","validation code","registered act","entry date","electronic commercial folio","precoded form","company name","notary","document number","document type","entry date and time","entry control number","applicant","payment date","payment amount","payment reference","unique document number","document PDF"]},{"provider":"NuFi","api":"Business verification in Mexico","website":"https://www.nufi.mx","pricingPage":"https://docs.nufi.mx/docs/api-docs-2023/m7rs9qakw21oi-api-keys","pitch":"Consulta de información sobre el registro público del comercio por razón social","strengths":[],"aggregators":[],"freshness":null,"fieldFreshness":null,"history":null,"countries":["Mexico"],"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"Queda prohibida la reventa del servicio sin autorización expresa de Nufi. [...] Queda totalmente prohibido el uso del código del servicio para fines no autorizados, así como de su tecnología API para desarrollar productos que le compitan sin previo acuerdo firmado por ambas partes. [...] Previo a realizar alguna búsqueda en la plataforma de Nufi, los Controladores (personas físicas o morales) clientes de Nufi deberán tener el Consentimiento expreso por el Candidato para realizar el tratamiento de sus datos","plan":"Production API key","who":"anyone who contacts NuFi to request a production API key","billing":"contact","charged":null,"topUp":null,"pay":null,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":null,"unit":"request","renews":null,"expires":null,"costUnits":null,"calls":null,"monthlyCap":null,"perThousand":null,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":[],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":null,"resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"SIGER Búsqueda Razón Social","method":"POST","path":"/siger/v4/obtener_datos_por_razon_social","send":"razon_social, Content-Type header \"application/json\"","fields":["total results","electronic commercial folio","registered name","corporate purpose","company duration","registered address","nationality","folio status","RFC","number of partners","partner status","partner nationality","partner first name","partner paternal surname","partner maternal surname","partner RFC","partner CURP","partner series","partner incorporation date","partner birth date","partner shares","partner total","partner share value","person type","registry precedent","legal regime","business line","state","municipality","registry office","registration date","CURP","documents PDF UUID"]},{"provider":"OrigoID","api":"Business verification in Mexico","website":"https://origoid.com","pricingPage":"https://origoid.com","pitch":"Use this endpoint to automate vendor onboarding and to keep your records of partners' fiscal data continuously up to date.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"countries":["Mexico"],"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"El cliente es el único responsable de contar con el consentimiento de los titulares o con facultad legal para consultar sus datos —expreso cuando se trate de datos sensibles—.","plan":"Mega","who":"companies, after OrigoID's validation of the company (legal name and RFC)","billing":"monthly","charged":null,"topUp":null,"pay":5000,"currency":"MXN","exchangeRate":0.054396,"termMonths":1,"from":null,"graduated":null,"units":5000,"unit":"credit","renews":"month","expires":"end of the calendar month, unused credits do not roll over","costUnits":1,"calls":5000,"monthlyCap":null,"perThousand":54.396,"waterfall":null,"listPerThousand":null,"overagePerThousand":54.396,"unitsCap":"soft","addons":null,"notFoundPerThousand":54.396,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Validate CURP","Retrieve CURP via Demographics","CURP Official Document (PDF)","Get NSS","Get NSS (Async)","Employment Status","Employment Status (Async)","Contribution Weeks","Validate Voter List","ID Data Extraction (OCR & Geocoding)","INE QR Code Data Extraction","Global Biometric Face Match","Liveness Detection","SAT Article 69 Check","SAT Article 69-B Check (EFOS)","OFAC Sanctions List Check","PEP (Politically Exposed Person) Check","Email Deliverability & Fraud Validation","Universal Extraction (Proof of Address)","RFC Status and LCO Validation","Validate CFDI (Electronic Invoice)","CEP / SPEI Payment Validation","ISSSTE Record"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"CSF Data Extraction & Validation (Multi-input)","method":"POST","path":"/mex/fiscal/v1/csf-extractions","send":"one of document, or rfc and cif","fields":["RFC","tax certificate ID","taxpayer type","registry status","registration date","last status change date","given names","first surname","second surname","legal name","legal type","commercial name","CURP","date of birth","constitution date","street","exterior number","interior number","neighborhood","ZIP code","municipality","state","country","between streets","email","tax regimes","economic activities","tax obligations","result type","message","transaction ID","processed at","billable"]},{"provider":"Syntage","api":"Business verification in Mexico","website":"https://syntage.com","pricingPage":"https://docs.syntage.com/using-syntage/dashboard/plan-and-billing","pitch":"The API lets you work with organization entities and retrieve structured data from SAT, RPC, RUG, Buró de Crédito, Buró Empresas, Infonavit, and more.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"countries":["Mexico"],"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"\"Los Servicios podrán ser contratados para uso personal del Usuario o para la optimización y/o integración de los servicios y/o ofrecidos por el Usuario a sus clientes/usuarios.\" \"queda estrictamente prohibido al Usuario permitir que cualquier tercero distinto a él sus empleados, socios, accionistas o personal, ingrese y haga uso de la Plataforma. Del mismo modo, queda estrictamente prohibido revender el acceso a la Plataforma.\" \"queda estrictamente prohibida cualquier utilización de la Plataforma de manera distinta a su uso y destino normal.\"","plan":"Contact","who":"organizations that sign Syntage's service quote; its terms: \"Los Servicios podrán ser contratados para uso personal del Usuario o para la optimización y/o integración de los servicios y/o ofrecidos por el Usuario a sus clientes/usuarios\"","billing":"contact","charged":null,"topUp":null,"pay":null,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":null,"unit":"request","renews":null,"expires":null,"costUnits":1,"calls":null,"monthlyCap":null,"perThousand":null,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":[],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":1,"minBatch":null,"answer":"by polling or webhook","latencyMs":null,"call":null,"method":"POST","path":"/extractions","send":"entity, extractor \"rpc\"; options.nameThreshold, options.nameLimit","fields":["registration folio","legal name","corporate purpose","company duration","registered address","nationality","folio status","RFC","person type","registry antecedent","legal regime","business line","state","municipality","registry office","registration date","CURP","lookup type","acts","act name","pre-coded form","NCI","act entry date","act registration date","act document number","act modality","act data","act file","shareholders","shareholder status","shareholder nationality","shareholder first name","shareholder paternal surname","shareholder maternal surname","shareholder RFC","shareholder CURP","shareholder birth date","share series","shareholder incorporation date","share count","share total","share value","created at","updated at"]},{"provider":"Tu Identidad","api":"Business verification in Mexico","website":"https://tuidentidad.com","pricingPage":"https://tuidentidad.com/en/preguntas-frecuentes/","pitch":"Validates whether an RFC is correct and structured according to the SAT, detecting formatting errors.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"countries":["Mexico"],"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"Additionally, it is prohibited to use methods other than the provided interface. Improper use of the service may result in suspension of service. It is prohibited to sell or resell the results provided by our service. The user is solely responsible for the use of the provided content.","plan":"Pay per use","who":"a company that asks the commercial team for a quote; each company is assigned its own non-transferable API key","billing":"contact","charged":null,"topUp":null,"pay":null,"currency":"USD","exchangeRate":1,"termMonths":null,"from":null,"graduated":null,"units":null,"unit":"request","renews":null,"expires":null,"costUnits":1,"calls":null,"monthlyCap":null,"perThousand":null,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":null,"addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":[],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":null,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":"Tax Identity Verification","method":"POST","path":"/api/rfc/validate","send":"rfc","fields":["valid","RFC","person type","business name","name","registration status","contact email","effective date"]},{"provider":"Verificamex","api":"Business verification in Mexico","website":"https://verificamex.com","pricingPage":"https://verificamex.com/precios/verificacion-identidad","pitch":"Valida un RFC y obtén su razón social y código postal como están en el SAT. Con la validación de RFC avanzada de Verificamex envías solo el RFC y recibes la razón social y el código postal del domicilio fiscal con que tu cliente está dado de alta ante el SAT.","strengths":[],"aggregators":[],"freshness":"live","fieldFreshness":null,"history":null,"countries":["Mexico"],"fullFamilyTree":null,"checks":null,"searchesIn":null,"keep":"no limit","use":"Usuario Final. [...] El Usuario reconoce ser el beneficiario final de los Servicios, tanto los prestados por el Prestador de Servicios, como los que a su vez prestan los Proveedores Externos, por lo que únicamente hará uso de estos de manera personal. Queda estrictamente prohibido para el Usuario cualquier tipo de reventa, subcontratación, y/o cualquier forma de ofrecimiento no autorizado a favor de Terceros, de los Servicios del Prestador de Servicios y/o de los Proveedores Externos. Uso lícito. El Usuario se obliga en todo momento a hacer uso del Sistema y/o contratar los Servicios únicamente para fines lícitos y en estricto apego a la Legislación Aplicable. Previo a la utilización del Sistema, el Usuario deberá recabar el consentimiento y autorización del Tercero Titular de cualesquiera Datos Personales y retrato que aparezcan en los Documentos de Identificación que el Usuario ingrese al Sistema.","plan":"1,000 tokens","who":"anyone of legal age","billing":"one-time","charged":null,"topUp":true,"pay":892.5,"currency":"MXN","exchangeRate":0.054396,"termMonths":null,"from":null,"graduated":null,"units":1000,"unit":"token","renews":"never","expires":"12 months","costUnits":5,"calls":200,"monthlyCap":null,"perThousand":242.7422,"waterfall":null,"listPerThousand":null,"overagePerThousand":null,"unitsCap":"hard","addons":null,"notFoundPerThousand":null,"catchAllPerThousand":null,"bounceRefund":null,"repeatFree":null,"alsoPaysFor":[],"sharesBudgetWith":["Lectura OCR INE frontal","Lectura OCR INE dorso","Face-match","Prueba de vida con video","Validar INE","Validar QR INE","Validar CURP","Certificado PDF de CURP","Validación de pasaporte","Pasaporte con facematch","Afiliación a partidos políticos","Ubicación en sesiones de verificación","Validación completa (all-in-one)","Validación completa con QR INE","RFC ante SAT (obtén CP)","Prueba de centavo (penny test)","Validación de teléfono","Validación de comprobante CFE","Vigencia de e.firma SAT","Constancia NOM-151","Sello de tiempo (TSA)"],"startPerCall":null,"startPerCallMax":null,"monthlyFee":null,"monthlyFeePer":null,"extras":[],"per":"call","resultsPerPage":null,"resultsCap":null,"perDay":null,"perSecond":0.5,"concurrent":null,"batch":1,"minBatch":null,"answer":"in the call","latencyMs":null,"call":null,"method":"","path":"","send":"","docsBehind":"sign-up","docs":"https://verificamex.com/soluciones/api-validacion-rfc-sat","fields":["RFC found","RFC","legal name","postal code"]}],
"total":72,
"checked":["2026-11-02","2026-11-10"],
"freshness":["Live","Within an hour","Within a day","Within a week","Within a month","Within a year","Stored, age unknown"],
"providers":[{"label":"A to N","kids":[{"label":"API Market MX","value":"API Market MX on its own site"},{"label":"INEGI DENUE","value":"INEGI DENUE on its own site"},{"label":"Kiban","value":"Kiban on its own site"},{"label":"Moffin","value":"Moffin on its own site"},{"label":"NeuralVerge","value":"NeuralVerge on its own site"},{"label":"Nubarium","value":"Nubarium on its own site"},{"label":"NuFi","value":"NuFi on its own site"}],"range":true},{"label":"O to V","kids":[{"label":"OrigoID","value":"OrigoID on its own site"},{"label":"Syntage","value":"Syntage on its own site"},{"label":"Tu Identidad","value":"Tu Identidad on its own site"},{"label":"Verificamex","value":"Verificamex on its own site"}],"range":true}],
"at":[6,15,16,18,22,28,32,41,61,62,65],
"fields":{"Business verification in Mexico":["RFC","legal name","CURP","municipality","person type","registration date","state","business line","company duration","corporate purpose","electronic commercial folio","email","exterior number","folio status","interior number","legal regime","message","name","nationality","neighborhood","postal code","registered address","registry office","RFC found","status","street","total results","validation code","act data","act document number","act entry date","act file","act modality","act name","act registration date","acts","address","applicant","between streets","billable","blocked","business name","certificate end date","certificate holder country","certificate holder CURP","certificate holder email","certificate holder name","certificate holder organization","certificate holder RFC","certificate serial number","certificate start date","certificate status","certificate subject","certificate type","certificate URL","CLEE","commercial name","company name","company type","constitution date","contact email","country","created at","date of birth","definitive notice number (DOF)","definitive notice number (SAT)","definitive published date (DOF)","definitive published date (SAT)","document number","document PDF","document type","documents PDF UUID","economic activities","economic activity class","effective date","employee size range","entry control number","entry date","entry date and time","establishment ID","establishment name","establishment type","first surname","given names","human summary","incorporation date","industrial corridor name","industrial corridor type","input keyword","input max items","input start page","kind","last publication date","last publication number","last publication title","last publication type","last status change date","latitude","legal representative CURP","legal representative RFC","legal type","local number","locality, municipality and state","longitude","lookup type","message code","NCI","notary","number of partners","page count","partial","partner birth date","partner CURP","partner first name","partner incorporation date","partner maternal surname","partner nationality","partner paternal surname","partner RFC","partner series","partner share value","partner shares","partner status","partner total","payment amount","payment date","payment reference","phone","points charged","pre-coded form","precoded form","presumption notice number (DOF)","presumption notice number (SAT)","presumption published date (DOF)","presumption published date (SAT)","processed at","proxy traffic bytes","publications on page","rebuttal notice number (DOF)","rebuttal notice number (SAT)","rebuttal published date (DOF)","rebuttal published date (SAT)","record ID","registered act","registered name","registration folio","registration number","registration status","registry antecedent","registry precedent","registry status","result type","results on page","ruling notice number (DOF)","ruling notice number (SAT)","ruling published date (DOF)","ruling published date (SAT)","second surname","session ID","share count","share series","share total","share value","shareholder birth date","shareholder CURP","shareholder first name","shareholder incorporation date","shareholder maternal surname","shareholder nationality","shareholder paternal surname","shareholder RFC","shareholder status","shareholders","situation","status code","street type","success","tax certificate ID","tax obligations","tax regimes","taxpayer name","taxpayer type","trade name","transaction ID","unique document number","updated at","URL","valid","validation result","website","ZIP code"]},
"same":["api","strengths","aggregators","waterfall","repeatFree","resultsCap","startPerCall","monthlyFee","extras","addons","catchAllPerThousand","bounceRefund","history","countries","fullFamilyTree","checks","searchesIn","ends","perDay","latencyMs"],
"facets":["defaults","provider","price","fields","billing","who","freshness","use","answer","paysFor"],
"ties":{"Business verification in Mexico":{"tied":["API Market MX, MX$5,000 pack","API Market MX, MX$5,000 pack, Pro","Kiban, contact us","Kiban, contact us, Pay per use","Moffin, MX$5,000 monthly","Moffin, MX$5,000 monthly, Moffin Plataforma","NeuralVerge, $50 monthly","NeuralVerge, $50 monthly, Base","Nubarium, contact us","OrigoID, MX$5,000 monthly","OrigoID, MX$5,000 monthly, Mega","Tu Identidad, contact us","Tu Identidad, contact us, Pay per use"],"movedPages":{},"canonicals":{"API Market MX":"mx-1000-pack-starter-post-api-sat-v2-lista69b","Moffin":"mx-5000-monthly-moffin-plataforma-post-api-v1-query-sat-rfc","NeuralVerge\nPOST /functions/v1/run-mx-companies-search":"50-monthly-base-post-functions-v1-run-mx-companies-search","NeuralVerge":"50-monthly-base-post-functions-v1-run-ar-companies-search","NuFi":"free","OrigoID":"free-trial-post-mex-fiscal-v1-csf-extractions","Verificamex":"free"},"unindexed":["/business-verification-apis/neuralverge/50-monthly-base-post-functions-v1-run-mx-companies-search"]}},
"shared":[],
"notes":{"name":"The sheet's first column gives each row's name. No two rows on the sheet share a name. The name starts with the provider, then the plan's price. Some names: \"API Builderz, $50 monthly\", \"HarvestAPI, $280 pack\", \"Crawlbase, pay as you go\", \"Bright Data, top-up\" (a prepaid balance of any amount), \"AnyAPI, top-up from $10\" (a balance you top up by $10 or more), \"free\" or \"contact us\". Two plans with the same price also get the plan's name. We drop any words in the plan's name that the price already gives. If two rows share a name after that, we add the call's method and path to each name. When two names still match, we add the plan's units. When they still match after that, we add the call's name. The sheet's own CSV and JSON files have no name column. datacircle.json and datacircle.csv have a name column with the same names as the sheets.","api":"This column names each row's API. Each API has a sheet in the GTM APIs list. Most sheets share the API's name. For the rest, we give the sheet's name after the API. \"Employee profile\", on the LinkedIn profiles sheet, returns a person's LinkedIn profile. \"Employee email\", on the Find email sheet, finds a person's work email. \"Email validation\", on the Validate email sheet, checks whether an email address takes mail. \"Employee phone\", on the Find phone sheet, finds a person's phone number. \"Company profile\", on the LinkedIn company profiles sheet, returns a company's LinkedIn page. \"Company headcount\" counts a company's staff. \"Phone validation\", on the Validate phone sheet, checks whether a phone number is valid. \"Post comments\", on the LinkedIn post comments sheet, returns the comments on a LinkedIn post. \"Post reactions\", on the LinkedIn post reactions sheet, returns the reactions to a LinkedIn post, each with the person who reacted. \"Employee lookalikes\", on the Similar people sheet, returns people similar to the person you send. \"Company lookalikes\", on the Similar companies sheet, returns companies similar to the company you send. \"Company technologies\" returns the tools a company uses. \"Company job count\" counts the jobs a company has open on LinkedIn. \"Employee posts\", on the LinkedIn person posts sheet, returns a person's LinkedIn posts. \"Company posts\", on the LinkedIn company posts sheet, returns a company's LinkedIn posts. \"Company funding\" returns a company's funding rounds. \"Company jobs\", on the Company open jobs sheet, returns the jobs a company has open. \"Employee search\", on the LinkedIn people search sheet, finds people by job title, company and place. \"Company search\", on the LinkedIn company search sheet, finds companies by industry, size and place. \"Job search\", on the LinkedIn job search sheet, finds jobs by title, company and place. \"Reverse email lookup\" finds the person behind an email address. \"Post search\", on the LinkedIn post search sheet, finds posts by keyword. \"Post details\", on the LinkedIn post details sheet, returns a post from the post's URL or ID. \"Job details\", on the LinkedIn job details sheet, returns a job from the job's URL or ID. \"Employee comments\", on the LinkedIn person comments sheet, returns the comments a person left on posts. \"Employee reactions\", on the LinkedIn person reactions sheet, returns the posts a person reacted to. \"Post reposts\", on the LinkedIn post reposts sheet, returns the people who reposted a LinkedIn post. \"Employee recommendations\", on the LinkedIn person recommendations sheet, returns the recommendations on a person's LinkedIn profile. \"Job lookalikes\", on the Similar jobs sheet, returns jobs similar to the job you send. \"Employee articles\", on the LinkedIn person articles sheet, returns a person's LinkedIn articles. \"Company enrichment\" returns a company's profile from each seller's own database. \"People search\" finds people in each seller's own database. \"Company discovery\" finds companies in each seller's own database. \"Job postings\" finds job postings in each seller's own database. \"Job posting details\" returns a job posting from the posting's ID. \"Person enrichment\" returns a person's profile. \"Leadership changes\" returns the new hires, promotions and departures in a company's senior roles. \"Company hierarchy\" returns a company's parent companies and subsidiaries. \"Web search\" returns the web pages that match a query. \"SERP\" returns a search engine's results page as data. \"News search\" returns the news articles that match a query. \"Image search\" returns the images a search engine finds for a query, in the order the engine ranks them. \"Video search\" returns the videos a search engine finds for a query, in the order the engine ranks them. \"Search autocomplete\" returns the searches a search engine suggests as you type a query. \"Web scraping\" returns a page's content from the page's URL. \"Keyword research\" returns a keyword's search volume, cost per click and competition. \"Ranked keywords\" returns the keywords a domain ranks for in Google, with the domain's position and traffic for each keyword. \"Related keywords\" returns keywords like the keyword you send, with the search volume of each. \"Backlinks\" returns the links that point to a domain. \"Domain authority\" returns a domain's authority score and the number of links to the domain. \"X profile\" returns an X (Twitter) account's profile from the account's handle. \"X posts\" returns an X account's posts. \"Instagram profile\" returns an Instagram account's profile. \"Instagram posts\" returns an Instagram account's posts. \"TikTok profile\" returns a TikTok account's profile. \"TikTok videos\" returns a TikTok account's videos. \"YouTube channel\" returns a YouTube channel's name, subscribers and description. \"YouTube channel videos\" returns a YouTube channel's videos. \"Reddit profile\" returns a Reddit account's profile. \"Reddit posts\" returns a Reddit account's posts. \"Facebook page\" returns a Facebook page's details from the page's URL. \"Facebook posts\" returns a Facebook page's posts. \"Threads profile\" returns a Threads account's profile. \"Threads posts\" returns a Threads account's posts. \"Bluesky profile\" returns a Bluesky account's profile. \"Bluesky posts\" returns a Bluesky account's posts. \"Telegram channel\" returns a Telegram channel's details. \"Telegram channel posts\" returns a Telegram channel's posts. \"Pinterest search\" returns the pins Pinterest finds for a query. \"Pinterest pin\" returns a Pinterest pin's details. \"Pinterest board pins\" returns the pins on a Pinterest board. \"Pinterest user boards\" returns a Pinterest account's boards. \"Hacker News search\" returns the Hacker News stories for a query. \"Hacker News story comments\" returns the comments on a Hacker News story. \"Twitch profile\" returns a Twitch channel's profile. \"Twitch videos\" returns a Twitch channel's videos. \"Twitch clip\" returns a Twitch clip's details. \"Kick clip\" returns a Kick clip's details. \"Snapchat profile\" returns a Snapchat account's profile. \"Truth Social profile\" returns a Truth Social account's profile. \"Truth Social posts\" returns a Truth Social account's posts. \"GitHub profile\" returns a GitHub account's profile. \"GitHub repository\" returns a GitHub repository's details. \"GitHub user repositories\" returns a GitHub account's repositories. \"Douyin profile\" returns a Douyin account's profile. \"Douyin user videos\" returns a Douyin account's videos. \"Douyin video\" returns a Douyin video's details. \"Weibo profile\" returns a Weibo account's profile. \"Weibo user posts\" returns a Weibo account's posts. \"Weibo post\" returns a Weibo post's details. \"Xiaohongshu profile\" returns a Xiaohongshu (RedNote) account's profile. \"Xiaohongshu user notes\" returns a Xiaohongshu account's notes. \"Xiaohongshu note\" returns a Xiaohongshu note's details. \"Zhihu profile\" returns a Zhihu account's profile. \"Zhihu question answers\" returns the answers to a Zhihu question. \"Kuaishou profile\" returns a Kuaishou account's profile. \"Kuaishou user videos\" returns a Kuaishou account's videos. \"Kuaishou video\" returns a Kuaishou video's details. \"Bilibili profile\" returns a Bilibili account's profile. \"Bilibili user videos\" returns a Bilibili account's videos. \"Bilibili video\" returns a Bilibili video's details. \"Facebook ads\" returns a company's ads from Meta's Ad Library. \"Google ads\" returns a company's ads from Google's Ads Transparency Center. \"LinkedIn ads\" returns a company's ads from LinkedIn's Ad Library. \"TikTok ads\" returns a company's TikTok ads. \"G2 reviews\" returns a software product's reviews on G2. \"Capterra reviews\" returns a software product's reviews on Capterra. \"Trustpilot reviews\" returns a company's reviews on Trustpilot. \"Glassdoor reviews\" returns a company's reviews on Glassdoor, written by people who work or worked there. \"App Store app\" returns an app's listing on the App Store from the app's App Store ID. \"App Store reviews\" returns an app's reviews on the App Store. \"Google Play app\" returns an app's listing on Google Play from the app's package name. \"Google Play reviews\" returns an app's reviews on Google Play. \"Amazon product\" returns a product's listing on Amazon from the product's ASIN. \"Amazon search\" returns the products Amazon finds for a query, in the order Amazon ranks them. \"Google Shopping product\" returns a product's offers on Google Shopping from the product's Google Shopping ID. \"Google Shopping search\" returns the products Google Shopping shows for a query, in the order Google Shopping ranks them. \"Walmart product\" returns the Walmart listing for a Walmart ID. \"Walmart search\" returns the products Walmart finds for a query, in the order Walmart ranks them. \"eBay product\" returns the eBay listing for a listing ID. \"eBay search\" returns the listings eBay finds for a query, in the order eBay ranks them. \"eBay sold listings\" returns the listings eBay shows as sold for a query, newest sale first. \"TikTok Shop product\" returns the listing at a TikTok Shop product link. \"TikTok Shop search\" returns the products TikTok Shop finds for a query, in the order TikTok Shop ranks them. \"Facebook Marketplace listing\" returns one listing from the listing's link or ID. \"Facebook Marketplace search\" returns the listings Facebook Marketplace shows for a search term in a city. \"Zillow search\" returns the homes Zillow lists in a place, in the order Zillow ranks them. \"Zillow property\" returns a home's Zillow listing from the home's Zillow URL. \"Redfin search\" returns the homes Redfin lists in a ZIP code, in the order Redfin ranks them. \"Redfin property\" returns a home's Redfin listing from the home's Redfin URL. \"Realtor.com search\" returns the homes Realtor.com lists in a place, in the order Realtor.com ranks them. \"Realtor.com property\" returns a home's Realtor.com listing from the home's Realtor.com ID. \"App Store search\" returns the apps the App Store finds for a query, in the order the App Store ranks them. \"Google Play search\" returns the apps Google Play finds for a query, in the order Google Play ranks them. \"ChatGPT answer\" returns ChatGPT's answer to a prompt. \"Perplexity answer\" returns Perplexity's answer to a prompt. \"Gemini answer\" returns Gemini's answer to a prompt. \"Bing Copilot answer\" returns Bing Copilot's answer to a prompt. \"Google AI Overview answer\" returns the AI Overview Google shows for a prompt, over its search results. \"Google AI Mode answer\" returns the answer Google's AI Mode gives a prompt. \"Business verification\" looks a company up by legal name in a state's register and returns the register's record of the company. \"Local business search\" finds businesses on a map that match your search in an area. You get each business's address, phone and website when the map lists them. \"Local business reviews\" returns a business's reviews on a map. You send the business's place ID. \"Domain WHOIS\" returns a domain's WHOIS record: who registered it, its registrar, and when it was created, last updated and expires. \"IP company lookup\" returns the name of the company or network that owns an IP address. Some answers give the owner's domain, kind of owner or ASN too.","score":"We score each plan out of 100 on five parts: price, accuracy, cost to get started, bundled calls and performance. We score accuracy and performance from our benchmark of the provider's call. Until we benchmark the call, the plan's accuracy, performance and Overall scores are N/A. The accuracy, performance and Overall scores are also N/A on a plan that lacks a check or feature the benchmarked plan has. The accuracy, performance and Overall scores are also N/A when we can't tell which benchmark score fits the plan. A plan whose accuracy score is 0 has an Overall score of 0, whatever the plan's other scores. Each API's sheet shows what we measured on each benchmarked plan, in the columns after the price. We rank a plan's price per 1,000 against the other scored plans of the same API. We score cost to get started and bundled calls on the plan alone. We give N/A to yearly plans, contact us plans and plans over $500 to start. We also give N/A to plans bought on a marketplace and plans that need your own LinkedIn, X or WhatsApp account. We give N/A to plans for personal, non-commercial or academic use only, too. We score a free plan only when the provider has no paid plan for that call. The free plan must never end. Any limit on the plan's calls must reset each day or sooner. Other free plans get N/A. A plan we don't score gets no score for any of the five parts, even when we benchmarked the call. Click Score in the sheet's bar to set the five weights. The JSON, datacircle.json and datacircle.csv give each plan's score at the default weights. A plan with N/A has an empty score in the JSON, datacircle.json and datacircle.csv. The sheet's CSV has no scores.","Price score":"The plan's price score out of 100. We rank the plan's $ per 1,000 against the $ per 1,000 of the other scored plans of the same API. A plan that charges nothing for a call that finds nothing keeps the whole price score. A plan that charges full price for a call that finds nothing keeps half the price score. Some plans give no $ per 1,000. For those plans, when each call returns one result, we use the price our benchmark paid per call. We scale that price by what a credit costs on the plan. We skip our benchmark's price for a plan if another paid plan for the same call lists a $ per 1,000. Plans for one call can each charge a different price per call. On the sheet, click or tap the score to see how we worked out the score.","Accuracy score":"The plan's accuracy score out of 100, from our benchmark of the provider's call. On some APIs, the score measures how complete the call's answer is. On others, the score measures how often the answer is right. We lower the score when we test the call on fewer inputs than the benchmark has. Until we benchmark the call, the score is N/A, and so is the Overall score. The accuracy, performance and Overall scores are also N/A on a plan that lacks a check or feature the benchmarked plan has. The accuracy, performance and Overall scores are also N/A when we can't tell which benchmark score fits the plan. On the sheet, click or tap the score to see how we scored the plan. Each API's sheet shows what we measured on each benchmarked plan, in the columns after the price.","Cost to get started score":"The plan's score out of 100 for getting your first result. The score weighs who can get the plan, how you pay, and the least you pay to start. On the sheet, click or tap the score to see why.","Bundle score":"The plan's score out of 100 for the other calls the plan's price gets you. Also pays for lists those calls. On the sheet, click or tap the score to see why.","Performance score":"The plan's performance score out of 100, from our benchmark of the provider's call. We divide the fastest benchmarked provider's median time by this provider's median time, then multiply by 100. We compare live calls with live calls, and calls that answer from a copy with each other. Some sheets have both kinds of call. On those sheets, each Performance score shows the group we compare the score with: \"among live calls\" or \"among copies\". A median under 0.1 s counts as 0.1 s, since the baseline we take off varies by about that much. The Performance score and the Overall score are N/A until we benchmark the call. The accuracy, performance and Overall scores are also N/A on a plan that lacks a check or feature the benchmarked plan has. The accuracy, performance and Overall scores are also N/A when we can't tell which benchmark score fits the plan. If the call gave no answer we could time, the Performance score is N/A. The Overall score then counts Performance as 0. The Performance score is N/A when we timed no other call of the same kind in the same benchmark. The Overall score then leaves Performance out. On the sheet, click or tap the score to see how we scored the plan. Each API's sheet shows what we measured on each benchmarked plan, in the columns after the price.","perThousand":"The price of 1,000 companies on this plan, in dollars. The price is 0 on a free plan. A lifetime plan is one you pay for once. Its units come back each day or month, with no end. On a lifetime plan, we spread the price over 24 months of units. On a plan that charges by the call, each call asks for one company. We add the Start fee to each company's price. When the call has a Minimum per call above that, each company costs the minimum. On a plan that charges by the page, we divide a page's price by the most results one page holds. Then we multiply by 1,000. We leave the price blank when the provider doesn't say how many results a page holds. On a search that charges by the page, we price the first page of each search, whatever the page holds. On a flat fee, we take the most companies the plan allows in one month. We multiply those companies by the months the fee covers. We divide the fee by that total. Then we multiply by 1,000. We leave the price blank when the provider doesn't say how many companies the plan allows. A plan with no end date and only limits per second, minute, hour or day has no cap on companies. A flat fee with no cap on companies shows \"no limit\" on the sheet. We leave the price blank in the CSV and JSON. On a waterfall's paid plan, we show the average cost of a call. We take the price of each provider listed under Waterfall. We weight each price by how often a call reaches that provider. We leave the price blank when a provider a call can reach has no hit rate or page size. On a plan with a Monthly fee, we first subtract one month of the fee from the plan's units. Then we divide the plan's price by the number of companies the remaining units buy. Then we multiply by 1,000. We leave the price blank when the Monthly fee uses up all the plan's units. Some plans limit calls per second, minute, hour, day or month. We divide the price by the companies the limit allows, if that is fewer than the companies you pay for. Then we multiply by 1,000. We leave the price blank on a top-up, because a top-up buys no fixed number of companies. We also leave the price blank when the provider's website doesn't say what a company costs on this plan. We leave the price blank, too, when the website doesn't say how many companies the price buys.","per":"The price counts a \"call\" or a \"result\". A call asks for one company. A result is each company a call returns. Some calls return a page of results. \"result\" means you pay for each result on the page. \"page of 50\" means you pay for each page of up to 50 results. You pay for a whole page even when the page holds fewer than 50. In the JSON, resultsPerPage is the most results a page holds. resultsPerPage is null when the price isn't per page or the provider doesn't say the page size. \"page, size not stated\" means the provider doesn't say how many results a page holds. On a search, a call is one search, and a \"page of 10\" holds up to 10 results. The price is for the first page of each search. Each further page costs the same as the first page.","billing":"How you pay. \"free\": the plan costs nothing. \"on-demand\": you pay for what you use, with nothing to buy first. \"one-time\": a pack or a top-up you pay for first, then use. \"contact\": no public price, so you ask the provider for one. A subscription: \"monthly\", \"quarterly\" (every three months), \"half-yearly\" (every six months) or \"yearly\". The sheet shows \"one-time\" as \"pay first\" and \"on-demand\" as \"pay as you go\".","perMonth":"On a subscription: the plan's price for one month in dollars. We divide the plan's Pay by the months the plan buys (termMonths), 12 on most yearly plans. We work out this price for the sheet, to the cent. The sheet's CSV and JSON leave this price out. datacircle.json and datacircle.csv have this price. Blank (null) on every other plan.","notFoundPerThousand":"What you pay for 1,000 companies the provider can't find. 0 when the provider charges nothing for them, as on free plans. On a waterfall, the cost of a call when no provider finds the answer. That cost is the sum of the prices of the providers that charge for a miss.","strengths":"The plan's strengths, which we work out from the plan's row. Each strength is a band that many plans of the same API are in. Strengths differ by API. We list and explain them under Strengths on datacircle.dev/fields. Only LinkedIn profiles and Find email have strengths so far. Blank ([] in the JSON) when the plan has none, and then the plan's page leaves Strengths out. Under Filters, you see only the rows with every strength you tick.","aggregators":"Aggregators like treg and Deepline sell the row's call. With one aggregator account, you reach many providers. Each cell gives what a call costs through the aggregator with your own provider key. The cell also gives what 1,000 companies cost when you pay the aggregator and have no account at the provider: \"treg: your key free, paid $1.50\". We add \"per 1,000 results\" when the aggregator charges per result found. We say \"paid, no fixed price\" when the aggregator publishes no price. When an aggregator charges by the page, we divide a page's price by the most results one page holds. Then we multiply by 1,000. We write \"paid, page size not stated\" when the aggregator doesn't say how many results a page holds. Some aggregators list the call but don't say whether you pay them or use your own key. For those, we write \"listed, how it's sold not stated\". An aggregator may sell one of the provider's calls without saying which. Then the cell ends with \"this call or another\", the provider's name and \"call\": \"this call or another Pubrio call\". A cell says \"none\" when no aggregator we checked for the row's API sells the call. A blank cell (null in the JSON) means we haven't checked any aggregator for that API. We skip calls an aggregator doesn't list. In the JSON, each aggregator has these keys. aggregator is the aggregator's name. url is the aggregator's page for the call. ownKey is what a call costs there with your own key, or null when you can't use yours. paid is true when you can pay the aggregator. paid and ownKey are both null when the aggregator doesn't say how the call is sold. callStated is false when the aggregator doesn't say whether the call is this one or another of the provider's. usd is the aggregator's price in dollars for one per, or null when the aggregator sets no price. perThousand is the aggregator's price in dollars for 1,000. per is \"call\", \"result\" or \"page\". resultsPerPage is the most results a page holds, or null.","waterfall":"Some routers, like treg's, try one provider after another until one finds the answer. On a router's call, the Waterfall column lists each provider the router tries, in order. After each provider, we give in brackets the name the router uses for that provider's call. Then we give the provider's price per 1,000 on this plan and how often the provider finds the answer. For Validate email and Validate phone, we give how often the provider checks what you send. We count a check whether the provider's verdict is right or wrong. We add \"misses billed\" when the provider charges for a miss. For a provider that charges by the page, we divide a page's price by the most results one page holds. Then we multiply by 1,000. We write \"page size not stated\" when the provider doesn't say how many results a page holds. The router publishes how often each provider finds an answer over all the router's calls. We assume each provider finds answers at the published rate. We assume this even on calls where the earlier providers found nothing. We leave the Waterfall column blank on calls with a single provider. In the JSON, each provider in the Waterfall is a step with these keys. provider is the provider's name. call is the provider's call, which you can also make alone. perThousand, per and resultsPerPage mean the same as the keys of the same names on a plan's row. hitRate is from 0 to 1, or null when the router publishes no rate. missesBilled is true when the provider charges for a miss.","repeatFree":"On a call that costs units: how long you can get a paid company again for free. On a flat fee with a call limit, the time before the same company counts toward the limit again. We copy the time from the provider's pages, like \"20 minutes\". \"no limit\" means the provider never charges again for a company you paid for once. \"never\" means the provider charges each time you get the company again. Blank when the provider's pages don't say.","resultsCap":"For a search API: the most results one search gets on this plan, however many pages you ask for. \"no limit\" when the provider says you can get every match. Blank (null in the JSON) when the provider's docs don't say, or when the API isn't a search. On a plan that charges by the page, you pay for each page you ask for.","startPerCall":"A fee in dollars you pay once for each call, on top of the price per company. An Apify Actor's start fee is one. You pay the same fee for a call of 1,000 companies or a call of one company. On a plan that charges by the call, each call asks for one company. On that plan, the $ per 1,000, List $ per 1,000, Overage and Enough for columns all count the Start fee. On a plan that charges by the result or the page, a call can return any number of results. On those plans, the $ per 1,000, List $ per 1,000, Overage and Enough for columns leave the Start fee out. The Start fee is $0.00 on a free plan, and blank when the plan has no start fee. A provider's page can give a range, like \"2-3 credits\". startPerCall then holds the lowest fee and startPerCallMax holds the highest. The sheet and the CSV show \"$0.04 to $0.06\". startPerCallMax is blank on a plan with one start fee or none.","monthlyFee":"You pay this fee each month to use the call. The provider takes the fee from your plan's units. For example, RouterGrowth charges $9.625 a month for each connected LinkedIn account. monthlyFee is the fee in dollars. On a free plan, the provider can take the fee from your free credits. We treat each free credit as worth the provider's lowest price for one credit on this call. monthlyFeePer names what one fee pays for, such as \"LinkedIn account\". The Enough for column counts only the units left after you pay one month's fee. The $ per 1,000 column does the same. The Monthly fee column is blank (null in the JSON) when the call has no monthly fee.","extras":"Fields that cost more than the row's price. Each group of extra fields has fields and perThousand. perThousand is the price you pay on top of the row's price. Some providers charge for each search and also for the extra fields on each result. For those providers, perThousand is the price for 1,000 searches. We assume each search returns the most results the plan allows.","Also pays for":"The other calls you get for the plan's price. The other calls each have a separate limit. We use the provider's words, in English where the provider writes them in another alphabet, as the Call column does. When a plan pays for more than 40 other calls, we write their count instead, like \"300 other calls\", which the sheet says with the provider's name: \"3,535 other ReefAPI calls\". We leave out apps, extensions, MCP servers, proxies and storage, since they are not calls. We also leave out features you can use only in the provider's app, like sending the provider's email campaigns. For example, gtm-api.com's account price also buys 100 searches, 50 messages and 25 connection requests a day. \"nothing\" when you get only the row's call. The row's $ per 1,000 is for that call alone, since providers don't say how to split their price. Blank (null in the JSON) until we read the provider's plan. Also blank on a \"contact\" plan whose pages don't say what the price buys.","overagePerThousand":"On a subscription: dollars for each 1,000 companies you get past the plan's units, when the provider sells extra companies. On a plan that charges by the call, Overage includes the Start fee.","unitsCap":"\"hard\" means calls stop once the plan's units run out. \"soft\" means calls go on after the plan's units run out. Those calls cost the Overage price when the provider gives one. Blank (null in the JSON) when the provider's pages don't say.","addons":"On an email API's subscription: the packs of units the provider sells on top of the plan. We read them on the pricing page. Each pack has units and pay, in the plan's currency. renews is \"month\" or \"year\" when you pay for the pack again with the plan. renews is \"never\" when you buy the pack once. perThousand is dollars for 1,000 emails at the pack's price. The sheet's CSV says \"500 credits a month for $10 ($20.00 per 1,000)\". An empty list when the provider sells none. Blank (null) on every other plan.","catchAllPerThousand":"On an email API: dollars for 1,000 calls that return an address at a catch-all domain. Such a domain takes mail for any address. So you can't check whether the person's mailbox exists, and the email may bounce. 0 when such calls cost nothing, or when the provider returns no such address. The same as the row's $ per 1,000 when the provider charges for any address found. Blank when the provider's pages don't say.","bounceRefund":"On an email API: the credit or refund the provider gives when a paid address bounces. Also the conditions, in the provider's words, like \"the credit, reported from the dashboard or the API and reviewed\". \"never\" when the provider's pages say a bounced address stays charged. Blank when the pages don't say.","pitch":"How the provider sells the row's call, quoted from the call's own page. When one page covers all the provider's calls, we quote the provider's own pitch. \"[...]\" marks a cut.","freshness":"How old the answer may be, as the provider's pages say. \"live\": the provider gets the data at the moment you call. The provider reads sources like LinkedIn, company websites, job boards, search results, keyword data or a page you send. Or the provider finds or checks an email or phone number at the moment you call. Some providers keep each answer for an hour or less. They give the same answer to anyone who asks the same question in that time. We call a plan that keeps answers for an hour or less \"live\" too. Renidly, for example, keeps each answer for 20 minutes. \"1 month\" or \"30 days\": the provider answers from a copy and refreshes the copy as often as the value says. \"as of 2025-11-13\": from a copy last refreshed that day. \"stored\": from a copy with no date on the provider's pages. Some email or phone checks never ask the mail server or the carrier. They read only the format, the domain's DNS and the provider's own lists. We mark those checks \"stored\" too. Freshness is blank (null in the JSON) when the provider's pages don't say how fresh the answer is. Freshness is also blank when the pages don't agree with each other. Plans that answer from a copy are on the same sheet as the plans that read live. When the provider's pages give some fields a different freshness from the rest, we list those fields in brackets. fieldFreshness gives the freshness of each field in brackets. Bright Data's LinkedIn profile is \"live (current title, jobs, schools: as of 2025-11-13)\". LinkedIn put current title, jobs and schools behind a login wall. Bright Data serves those three fields from a copy.","history":"How far back the answers reach, on an API whose answers are dated. A company's funding rounds and open jobs are dated. \"since 2016\": back to 2016. \"open only\": only what is open now. \"the last 7 days\": a window that ends today. \"no limit\": every one ever. \", closed only\" after a value: the closed ones alone. Blank (null in the JSON) when the provider's pages don't say, or when the answers aren't dated.","countries":"On Validate phone, the countries whose numbers the call checks, like \"United States\". On Business verification, Company enrichment, Company discovery, Company hierarchy, Company headcount and Similar companies, the countries of the companies found. On People search, Person enrichment and Find email, the countries whose people the call finds. We take them from the provider's pages. \"Worldwide\": the call covers any country. \"Worldwide\" also means the call covers over 100 countries. Blank (null in the JSON) until we read the countries on the provider's pages. Also blank when the provider's pages don't list the countries. Blank on every other API.","fullFamilyTree":"On Company hierarchy, this column says whether one call gives the whole family tree. The whole tree runs from the top parent down each branch. \"yes\" (true in the JSON): one call gives the whole tree, counting every page of results the call returns. \"no\" (false): one call gives part of the tree, like the parents or one level of subsidiaries. You call again for each company to get the rest. The column is blank (null in the JSON) until we read the provider's website. The column is also blank when the provider's website doesn't say. Always blank on every other API.","checks":"This column lists the checks each call makes, as the provider's pages describe them. You find this column on the Validate email and Validate phone sheets. On Find email, the column lists the checks a finder makes on an address before giving you the address. A finder that asks the mail server takes longer than a finder that doesn't. On an email, \"format\": the address is well formed. \"mail servers\": the domain has servers that take mail. \"disposable domains\": the call spots a domain on a list of throwaway domains. \"role addresses\": the call spots a shared address, like sales@. \"mailbox\": the call checks with the mail server that the mailbox exists. On a number, \"numbering plan\": the number fits the rules of the number's country. \"carrier\": the call finds the carrier the number is with today. If the owner moved the number to a new carrier, you see the new carrier. \"line in service\": the call checks with the network that the line is live. \"messaging apps\": the call checks with a messaging app, like WhatsApp, that the number has an account there. A call without \"mailbox\" doesn't check the mailbox. Such a call can pass an address that bounces. The column is blank (null in the JSON) until we read the provider's pages. Also blank when the provider's pages don't say. Always blank on every other API.","searchesIn":"This column says where the call looks for posts. We read where the call looks on the provider's pages. You find this column on the LinkedIn post search sheet. \"LinkedIn's search\": the call runs LinkedIn's own search. \"Google's index\": the call searches Google for LinkedIn posts. Google sets how many posts the call can find. New posts show up only after Google indexes them. \"a search engine's index\": the call searches another search engine for LinkedIn posts. We also mark a call \"a search engine's index\" when the provider's pages don't name the search engine. \"the provider's own database\": the call searches a copy of LinkedIn posts the provider keeps. We leave the column blank (null in the JSON) when the provider's pages don't say. We leave the column blank for every other API.","keep":"How long the provider's terms let you keep the API's answers. \"no limit\" when the terms set none. \"no API terms\" when the provider has no API terms.","use":"What the provider's terms let you use the API's answers for. Also what the terms ask in return, like a link back or a credit. \"any\" when the terms limit nothing and ask nothing. \"no API terms\" when the provider has no API terms.","pay":"The plan's price, in the plan's currency. On a subscription, the price covers the months in termMonths. In the sheet's CSV, we write the months after the price. Some examples: \"$39.00/month\", \"€99.00/month\" on a plan in euros, or \"$468.00/15 months\" on gtm-api.com's yearly plan. A pack's Pay is the pack's price. A top-up's Pay is the smallest amount you can top up. On a top-up with no minimum from the provider, Pay is blank (null in the JSON). A free plan's Pay is $0.00. On a usage tier, Pay is what you pay each month for your calls below that tier. Each of those calls costs the price of the tier the call is in. Some tiers have a minimum. If your calls below the tier cost less than the minimum, you pay the minimum. When a usage tier sits on a subscription, you also pay the plan's price. Crawlbase has a tier for the next 10M requests. On that tier, Pay is $583: what you pay each month for your calls below the tier. On Mailgun's Foundation plan, you pay $95 a month for up to 5,000 validations. The $95 is the $35 plan plus $60 for the validations. On a pay-as-you-go plan, the sheet's Pay column shows Charged.","units":"What the plan gives for the price, counted in unit. On a usage tier, where the tier starts: \"from the 51st call a month\".","calls":"The number of companies you get for the plan's price, counted in per. On a plan that charges by the page, calls and monthlyCap count pages. calls is the number of companies the plan's units pay for: \"100 calls, once\" for a free trial, \"1,250 results a month\" for an allowance. On a plan that charges by the call, calls is the plan's units divided by the cost of one call. That cost includes the Start fee. A plan can limit calls per day or per month. Then calls is the most calls the limit allows before the units renew. The limit counts each call as one company. On a plan that charges by the page, the limit counts each call as one page. Say a plan allows 10,000 requests a month and 200 calls a day. You get 6,000 calls a month, because 30 days of 200 calls is 6,000. Some providers count each result toward the limit. A list you send in one call counts one result for each row. When a provider counts results, limitsCountedIn says \"result\", and calls and monthlyCap count results. A limit of 2,000 results a day allows 60,000 results in a month of 30 days. We fill monthlyCap when a call costs 0 units, like a call on a flat fee. monthlyCap is the most companies you get a month, or \"no limit\". On a plan with a daily or monthly limit, monthlyCap is the most calls in 30 days. 3,000 calls a day make 90,000. The Enough for column shows 3,000 calls a day as \"90,000 calls a month\". A call that charges by the result can take several companies at once. Each company then counts as one result: 50 calls a day of 10 companies make 15,000 results in 30 days. A call that returns a list, like a search, gets as many results as it finds. A limit on its calls doesn't cap its results. Any plan can limit calls per hour, minute or second. calls and monthlyCap also hold the most calls a limit per hour, minute or second allows. A limit of 50 calls an hour allows 36,000 calls in 30 days. We count a call limit in monthlyCap only when each call returns one company or a fixed-size page. Some providers say they limit the month but give no number. When such a plan has no daily or monthly limit, monthlyCap is null, whatever its limit per hour, minute or second. Such a limit says how fast you can call, not how many companies the month gives. On a free trial shorter than 30 days, monthlyCap is the most calls you get over the whole trial. The trial's calls never renew. A 7-day trial with 1,000 calls a day shows as \"7,000 calls, once\". Enough for shows calls, or monthlyCap when a row has no calls. On a plan with a Monthly fee, the provider first takes one month's fee from the plan's units. calls counts the calls left after the fee. We count the calls again each time the provider refills the plan's units. Enough for says \"0 calls left after the monthly fee\" when the fee uses up all the plan's units. Enough for is blank when the provider doesn't say how many companies you get. Enough for is also blank on pay as you go plans and on top-ups. Enough for is blank too on subscriptions that charge for each company on top of the fee. Enough for is also blank when a waterfall's average call costs nothing. calls and monthlyCap are null when Enough for is blank.","expires":"When the units you don't use lapse, in the provider's words: \"never\", \"365 days\", \"at renewal: unused credits do not carry over\". Blank when the provider's pages don't say.","ends":"The plan's last day, as the provider gives the date: 2026-12-02 for Explorium. We don't score a plan that ends. We don't link to the provider's site. The day after the last day, we take the plan off the sheet. Blank for plans with no last day.","perDay":"The most calls a day. Some providers count each result of a call instead, like each row of a list. limitsCountedIn says what the provider counts: \"call\", \"result\" or \"page\". The provider counts the same unit for this column and for the plan's monthly limit. limitsCountedIn says \"call\" when the provider's docs don't say.","perSecond":"The most calls a second you can keep up. When the provider counts a limit over a longer window, we divide the limit. We divide a limit per minute by 60, per 5 minutes by 300, per hour by 3,600. When the provider sets several limits, we show the tightest: 25 a second and 40 a minute is 0.67. We round to two decimals. A rate under 0.1 keeps two digits past the zeros: 5 an hour is 0.0014.","concurrent":"The most calls running at once, or \"no limit\". \"n/a\" when the provider sets no cap on calls at once but limits calls by the second. Then Per second sets your limit. Blank (null) when the provider's pages don't say.","batch":"The most companies in one call on this plan. 1 when the call takes one at a time. \"no limit\" when the provider says a call takes any number. Blank (null) when a call takes a list and the provider's pages don't say how many. A call that refuses fewer than a set number shows the fewest and the most, like \"2,000 to 2,000,000\". A call that needs at least 2,000 and has no top limit shows \"2,000 or more\". A call that needs at least 2,000 shows \"at least 2,000\" when the provider's pages don't give the top limit.","answer":"The way you get the call's answer. \"in the call\" when the call's response holds the answer. \"by polling or webhook\" when the call returns a job. Once the job is done, you get the answer from another call or at your webhook. \"in the call or by polling\" when the call returns the answer if the answer is ready in time. If the answer isn't ready, the call returns a job you check later. An Apify Actor returns a job when the run goes past 5 minutes. \"in the call or by webhook\" when you choose in your request. \"by polling\" when only another call gets the answer. \"by webhook\" when only a URL you give gets the answer. Blank (null) when the provider's pages don't say.","latencyMs":"The median time a call takes. For a benchmarked call, we show our benchmark's median. The API's benchmark columns show the same median. From each call's time, we subtract the mean time of three free calls to the same provider, made just before. If that mean is longer than the call, we use the provider's median baseline instead. We cap the baseline at the call's time, so no time is below zero. For a call we didn't benchmark, we show the time from the provider's pages. Or we show a time we measured when we added the row. On a plan without a check or feature of the benchmarked plan, we show the provider's time or our own. We leave the median blank (null) when we have no time. We also leave the median blank when the benchmarked call gave no answer we could time. The JSON and datacircle.csv give the time in milliseconds. The sheet and the sheet's CSV give the time in seconds.","send":"You send a company's legal name, and for some calls the company's US state or country. You must send every input listed before \"Optional:\". In the CSV and JSON downloads, the inputs after a semicolon are optional.","method":"The call's HTTP method.","path":"We give the path from the provider's docs. When that path fails, we give the path that works. Each plan of a call has the same path. A plan the provider serves at a separate address has a separate path.","plan":"The plan's name on the provider's pricing page, in English where that page writes it in another alphabet (XMLStock's \"Максимум\" is \"Maximum\"). Its plan page gives its own name too.","who":"Who the provider offers the plan to: \"anyone\", or the condition the provider's pages set, like \"anyone with a work email\" or \"on approval of an application\".","readFrom":"The pages we read the row's values from. They are the sheet's last column: click a cell to see each page, or press ⌘C to copy them all."},
"billed":{"free":"Free: nothing to pay","on-demand":"Nothing to buy first: you pay as you go","one-time":"You buy credit first, as a pack or any amount you like, then spend the credit on calls","contact":"No public price: you ask the provider for one","monthly":"A monthly subscription","quarterly":"A quarterly subscription","half-yearly":"A subscription for 6 months","yearly":"A yearly subscription"},
"defaults":["No contact us plans","No free plans","$500 or less to start"],
"kept":11,
"free":true,
"paid":{"ranked":{"Business verification in Mexico":[0,1,1,1,1,27.198,27.198,27.198,40.797,40.797,40.797,54.396,54.396,54.396,54.396,54.396,54.396,54.396,72.3467,72.3467,72.3467,72.3467,218.4679,242.7422]},"bench":{},"free":["Business verification in Mexico|INEGI DENUE|/app/api/denue/v1/consulta/Nombre/{Nombre del establecimiento ó razón social}/{Entidad federativa}/{Registro inicial}/{Registro final}/{Token}|Nombre"]},
"bench":{"groups":[{"name":"Entities checked","note":"We called each provider once on the same 10 companies, on 9 November 2026. Time is each call minus a baseline, so the distance to the provider's servers drops out. Companies where we know the right answer. Called: the companies we called each provider on. Some provider accounts held too few lookups. We called those providers on as many companies as their lookups allowed. We started at the top of our list. For 2s.io, we started with the first registered company of each list. Registered: the company's own legal page gives the company's legal name. For the Austin list, a City Council agenda or the company's own page gives the legal name. For the Montgomery County list, the legal name comes from the company's own website. We read the copy of the company's website that the Internet Archive saved before June 24, 2021. A US company's page also names the state the company formed in. For US investment advisers, nonprofits and banks, we give the state of the company's main office. Registered, found: the call found the company under the name we gave. If we gave the call a state, the call also found the company in that state. A made-up name is two invented words and a company suffix, like Inc. or LLC. We searched the web for the name in quotes and found no company. We have a list of French companies too. The legal page of each French company names the company and the legal form, like SAS. The page also gives the company's number in France's register. The made-up French names end in SAS, SA or SASU. A call that looks up only France's register runs only on the French companies. We have a list of UK companies too. The legal page of each UK company names the company with Ltd, Limited or PLC. The page also gives the company's number in the UK's register, Companies House. The made-up UK names end in Ltd, Limited or PLC. A call that looks up only the UK's register runs only on the UK companies. We have a list of Czech companies. On each company's legal page, the name ends in s.r.o. or a.s. The page also gives the company's ID number in the Czech register. The Czech company names we made up end in s.r.o., a.s. or spol. s r.o. We call Czech-only APIs just for companies on our Czech list. Made up, said none: the call found no company for the name. Wrong: the call found no match for a registered company, or found a match for a made-up name. We set aside case, punctuation, spaces and the form of the suffix when we compare names. No answer: the call failed or the provider refused the call.","columns":[{"name":"Called","kind":"count","values":{"Verificamex":[10,10]}},{"name":"Registered, found","kind":"count","values":{"Verificamex":[6,7]}},{"name":"Made up, said none","kind":"count","values":{"Verificamex":[0,3]}},{"name":"Wrong","kind":"count","values":{"Verificamex":[0,10]}},{"name":"No answer","kind":"count","values":{"Verificamex":[4,10]}}]},{"name":"Time per registry lookup","note":"We time our first call on each company. Each time is the call's time minus a baseline. We time only right answers, however fast a wrong answer or no answer came. The baseline is the mean of three free calls to the same provider just before the call, on the same connection. If that mean is longer than the call, we use the provider's median baseline instead. We cap the baseline at the call's time, so no time drops below zero. If we checked for a provider's answer every few seconds, the time is when we saw the answer. The answer may have come a few seconds earlier. Nothing to time means the call found none of the registered companies. We have no answer to time. A \"not found\" answer to a name we made up does not show how fast the call is. The call gets an Accuracy score of 0 and a Performance score of N/A.","columns":[{"name":"Median","kind":"ms","values":{"Verificamex":null}},{"name":"10th percentile","kind":"ms","values":{"Verificamex":null}},{"name":"90th percentile","kind":"ms","values":{"Verificamex":null}},{"name":"Fastest","kind":"ms","values":{"Verificamex":null}},{"name":"Slowest","kind":"ms","values":{"Verificamex":null}},{"name":"Baseline","kind":"ms","values":{"Verificamex":null}}]},{"name":"The registry lookup call","note":"The provider's registry lookup, given the company's legal entity name. For a US company, we also give the state the company formed in, when the call takes a state. For a US investment adviser, nonprofit or bank, we give the state of the main office. We also show what one lookup cost on this run. GLEIF, Registry Lookup, CompanyData.com and GovFiles keep their own copy of company records. They answer from that copy. When we call, they do not check the state's register. GLEIF lists only companies that hold a Legal Entity Identifier. SAM.gov lists only the companies registered to do business with the US government. OneShot looks up the name in GLEIF's list. OneShot's lookup has no field for the state the company formed in, so we send OneShot only the name. CompanyData.com's search has no field for the state. We send CompanyData.com the company name and the country, the US. CompanyData.com's records don't say which state a company formed in. If we find a record under the company's name, we count the company as found. GLEIF and OneShot found none of the registered companies we tested. GovFiles charges for each company the search returns. INSEE and Annuaire des Entreprises search France's register. We send them the company's name without the legal form, like SAS. France's register keeps the legal form apart from the name. INSEE and Annuaire des Entreprises answer from a copy of the register that is updated every day. Companies House is the UK's register. We send Companies House the company's name with the legal form, like Ltd. Companies House stores each name with the legal form. Companies House has two search calls. We show each call on a separate row. Data8 searches Companies House records. We send Data8 the company name with the legal form, like Ltd. CompanyPulse searches Companies House records. We send CompanyPulse the company name with the legal form, like Ltd. ARES is the Czech register. We send ARES the company's name with the legal form, like s.r.o. ARES stores each name with the legal form. CZ Agents searches ARES records. We send CZ Agents the company name with the legal form, like s.r.o. CZ Agents keeps each answer for an hour. NeuralVerge has a search call for each of 35 national company registers. We ran the UK call on our UK companies, the French call on our French companies and the Czech call on our Czech companies. We send NeuralVerge's UK and Czech calls the company name with the legal form. We send NeuralVerge's French call the company name without the legal form. NeuralVerge reads the register's website each time we call. Each call returns up to 25 companies. NeuralVerge charges for each company in the answer. NeuralVerge's French call gives some names with the company's short name in brackets at the end. For those names, we also compare the name with the brackets and short name removed. Dataroia's and Driva's calls take a company number, not a name. We send Dataroia each French company's SIREN number. We send Driva each Brazilian company's CNPJ number. For each made-up company name, we send a made-up number. Croma's National Tax Agency, RUES and SUNAT calls take a company number, not a name. We send each Japanese company's corporate number to Croma's National Tax Agency call. We send each Colombian company's NIT to Croma's RUES call. We send each Peruvian company's RUC to Croma's SUNAT call. Croma's National Tax Agency call refuses a corporate number with a wrong check digit. When Croma's National Tax Agency call rejects a corporate number, we count it as no company found. EuroValidate's call takes a VAT number, not a name. We send each French company's VAT number to EuroValidate. Korea Business Verify's call takes a business registration number, not a name. We send each Korean company's business registration number to Korea Business Verify. Agent Data Tools' call takes a VAT number, not a name. We send each French company's VAT number to Agent Data Tools. Mekong Trade Intel's call takes a tax code, not a name. We send each Vietnamese company's tax code to Mekong Trade Intel. For each made-up Vietnamese company name, we send a made-up tax code. We send Date Firme the company name without the legal form, like SRL. Hong Kong Companies Registry gives back the companies whose names start with the name we send. When no company name starts with the name we send, Hong Kong Companies Registry answers with an error page. We count that error page as finding no company. Hong Kong Companies Registry's open data is a copy of its register, updated every day. Entyrix's call takes a company number, not a name. We send Entyrix each Slovak and Czech company's IČO number. For each made-up company name, we send Entyrix a made-up IČO number. Latinfo's Colombian and Peruvian searches take the company name without the legal form. W System's KYB call reads GLEIF's list for Slovakia, Belgium, Ireland, Latvia and Denmark. We send CompanyBook the company name without the legal form, like AD. Filed's search skips the state register in Delaware and most other states. Virkdata answers with one company, the register's best match for the name. FastCAC searches CAC, Nigeria's company register. We send FastCAC the full company name with the ending, like Limited. We set all 7 options of Asimplek's resolve call to true. Hacienda Costa Rica can't look up a company by name. We send Hacienda Costa Rica each Costa Rican company's cédula jurídica number. We send Hacienda Costa Rica a made-up cédula number for each made-up company name. We look up each French company in BODACC by SIREN number. For each made-up company name, we send BODACC a made-up SIREN number. BODACC lists a company only after a notice about the company is published. MORVS has no field for the state. We send MORVS only the company name. ProPublica Nonprofit Explorer answers with a \"not found\" error for an unknown name. We count a \"not found\" error from ProPublica Nonprofit Explorer as finding no company. FDIC BankFind keeps a copy of the FDIC's list of banks. The FDIC's list of banks gives each bank's legal name in full, like CB&S Bank, Inc. or JPMorgan Chase Bank, National Association. Verificamex looks up a company by RFC number, not by name. We send Verificamex each Mexican company's RFC. For each made-up company name, we send Verificamex a made-up RFC. Amtsblattportal lists a company only after a notice about the company is published. We send Amtsblattportal the company name with the legal form, like AG or Sàrl. Jid's calls make two requests, a search and a file request. We time both requests of each Jid call together, as one call.","columns":[{"name":"Call","kind":"text","values":{"Verificamex":"GET api.verificamex.com/identity/v1/miscellaneous/sat/rfc-data/{rfc} (the input's rfc, 5 tokens)"}},{"name":"Charged per lookup","kind":"text","values":{"Verificamex":"$0.2427"}}]}],"inputs":{"said":"The 10 companies we called, as each provider's call took them.","keys":["entity_name"],"rows":[["Hotel Celta, S.A. de C.V."],["Brindelor Nacquil, S.A. de C.V."],["Volkswagen de México, S.A. de C.V."],["Soluciones en Energía y Maquinaria en Renta, S.A. de C.V."],["DeRemate.Com de México, S. de R.L. de C.V."],["Vesmoria Crantel, S.A. de C.V."],["Red de Administración y Compraventa, S.A. de C.V."],["Luna Soft, S.A. de C.V."],["Hulbrecan Zotrel, S.A. de C.V."],["Gallium de México Import, S.A. de C.V."]]}},
"through":{"AnyAPI":[],"Clay":[],"ColdIQ":[],"Databar":[],"Deepline":[],"Monid":[],"Orthogonal":[],"PayPerQ":[],"RouterGrowth":[],"treg":[],"Unified.to":[]},
"more":"/assets/sheet-Dtnb4F8P.json"}