# RichAPI > GTM data API: 65+ endpoints, one key, REST + MCP. Fixed credits per endpoint, prepaid, never expire. This file is the long form of https://richapi.ai/llms.txt. ## Access - REST: https://api.richapi.ai/api/v1/{endpoint} (header: x-api-key) - MCP: https://mcp.richapi.ai/mcp (65+ tools, OAuth sign-in, same credit pool as REST) - API reference: https://app.richapi.ai/docs - OpenAPI spec: https://app.richapi.ai/api/openapi - Status: https://status.richapi.ai ## Credit bundles Bundle credits are prepaid and never expire. Bundles are one-time purchases. | Bundle | Price (USD) | Credits | | --- | --- | --- | | Sandbox | $0 | 100 credits · no card | | Starter | $100 | 5,000 credits · never expire | | Growth | $450 | 25,000 credits (11% bonus) · never expire | | Scale | $800 | 50,000 credits (25% bonus) · never expire | | Enterprise | Custom | Committed volume | ## Endpoint rates Each endpoint bills a fixed number of credits, per call or per result returned. These are the rates for common actions. | Action | Billing model | Credits | | --- | --- | --- | | LinkedIn profile enrichment | Per call | 1 | | LinkedIn company enrichment | Per call | 1 | | Profile activities (posts/comments) | Per result | 2 | | Post activities (likers/commenters) | Per call | 3 | | Post keyword search | Per result | 0.1 | | People search | Per result | 0.1 | | Email finder | Per call | 5 | | Email verifier | Per call | 2 | | Phone finder | Per call | 25 | | Website intelligence | Per call | 5 | | Web scrape / meta tags / tech stack | Per call | 1 | | AI enrich | Per call | 2 | | Usage & inquiry endpoints | Per call | 0 | ## Every endpoint The rate of each endpoint, from the OpenAPI spec (https://app.richapi.ai/api/openapi). | Endpoint | Category | Billing model | Credits | | --- | --- | --- | --- | | Post Details | Activity | Per call | 1 | | Profile Activities | Activity | Per result | 2 | | Google Ad Transparency Scraper | Ads | Per result | 3 | | LinkedIn Ad Details | Ads | Per call | 2 | | LinkedIn Ad Search | Ads | Per result | 0.2 | | Meta Ads Library Scraper | Ads | Per result | 1 | | AI Enrich | AI | Per call | 2 | | Usage | Credits & Pricing | Free | 0 | | Yellow Pages Search | Directory | Per result | 0.01 | | Bulk Company Enrichment | Enrichment | Per result | 1 | | Bulk Profile Enrichment | Enrichment | Per result | 1 | | Company Enrichment | Enrichment | Per call | 1 | | Email Finder | Enrichment | Per call | 5 | | Find Crunchbase URL | Enrichment | Per call | 0.25 | | Find LinkedIn Company URL | Enrichment | Per call | 0.25 | | Find LinkedIn URL by Email | Enrichment | Per call | 4 | | Find LinkedIn URL by Name | Enrichment | Per call | 4 | | Find Personal Email | Enrichment | Per call | 5 | | Find Website by Company Name | Enrichment | Per call | 1 | | LinkedIn Job Details | Enrichment | Per call | 1 | | Phone Finder | Enrichment | Per call | 25 | | Profile Enrichment | Enrichment | Per call | 1, or 2 with social metrics | | Profile Social Metrics | Enrichment | Per call | 1 | | Crunchbase Company Scraper | Funding Data | Per call | 3 | | My endpoints | Getting Started | Free | 0 | | Lead Search | Leads | Per call + per result | 10 + 0.5 per result | | Google Maps Places (Keyword) | Maps | Per result | 0.1 | | Google Maps Places (URL) | Maps | Per result | 0.1 | | Google Maps Reviews | Maps | Per result | 0.1 | | LinkedIn Company Posts | Posts | Per result | 0.2 | | Bing Search | Search | Per call | 1 | | Geo ID Search | Search | Per call | 0.01 | | Google Search Scraper | Search | Per result | 1 | | Google Trends | Search | Per call | 1 | | LinkedIn Company Employees Search | Search | Per result | 0.1 | | LinkedIn Company Search | Search | Per result | 0.1 | | LinkedIn Job Search | Search | Per result | 0.1 | | LinkedIn Profile Search | Search | Per result | 0.1 | | People Search | Search | Per result | 0.1 | | Post Activities | Search | Per call | 3 | | Post Keyword Search | Search | Per result | 0.1 | | Search Reference Data | Search | Free | 0 | | Slack Channel Members | Social | Per call | 2 | | Clean Domain | Utilities | Per call | 0.5 | | Count Occurrences | Utilities | Per call | 0.5 | | Distribute Leads | Utilities | Per call | 0.5 | | Encode URI | Utilities | Per call | 0.5 | | Extract URLs & Emails | Utilities | Per call | 0.5 | | Find Redirect | Utilities | Per call | 1 | | Find Sitemap URLs | Utilities | Per call | 1 | | Format Datetime | Utilities | Per call | 0.5 | | Identify Email Type | Utilities | Per call | 0.5 | | Normalize Company | Utilities | Per call | 0.5 | | Normalize List | Utilities | Per call | 0.5 | | Normalize Phone | Utilities | Per call | 0.5 | | Predict Gender | Utilities | Per call | 1 | | Remove Whitespace | Utilities | Per call | 0.5 | | Email Verifier | Waterfall | Per call | 2 | | JSON-LD Extractor | Web Scraping | Per call | 1 | | Meta Tags Extractor | Web Scraping | Per call | 1 | | Similarweb Scraper | Web Scraping | Per result | 2 | | Sitemap Extractor | Web Scraping | Per result | 1 | | Social Links Finder | Web Scraping | Per call | 1 | | Tech Stack Detector | Web Scraping | Per call | 1 | | Tracking Pixel Detector | Web Scraping | Per call | 1 | | Web Scraper | Web Scraping | Per call | 1 | | Website Email Extractor | Web Scraping | Per call | 2 | | Website Intelligence | Web Scraping | Per call | 5 | | YouTube Channel Info | YouTube | Per call | 1 | | YouTube Channel Videos | YouTube | Per call | 2 | | YouTube Search | YouTube | Per call | 1 | | YouTube Video Details | YouTube | Per call | 1 | ## Billing rules - **Bundle credits never expire.** A bundle bought today works in five years. - **Bundles never auto-renew.** Bundles are one-time purchases. Auto top-up is opt-in, capped by you, receipted every time. - **No hidden pricing rules.** Every endpoint has a published credit rate and billing model (per call or per result). - **No seats, no minimums.** One account, any team size. Bundles need no commitment: buy credits when you need them. - **Every self-serve price is on this page.** This page is the whole self-serve price list. Sales exists for volume math and Enterprise terms, not for hiding numbers. ## Pricing FAQ ### Is there a free tier? 100 sandbox credits, no card — enough to validate the response shapes and run the MCP install end to end. Inquiry and usage endpoints stay free forever. ### Do credits expire? Bundle credits don't. A bundle bought today works in five years. ### What happens when I run out of credits? 402 with a clear error — or enable auto top-up with your own threshold and monthly cap. ### How can I verify what I was charged for a request? Check the endpoint's billing model and the request usage fields in the response/logs. Some endpoints bill per call, others per result. Inquiry endpoints are always free. ### Can I switch between REST and MCP without a new key? Yes — same key, same credit pool, same prices on both surfaces. ### How do volume discounts work? Bundles carry bonus credits (11% at Growth, 25% at Scale). Past ~50K credits/month, Enterprise rate cards price on your committed volume and action mix — talk to sales. ### Can I get a refund on unused credits? Unused credits on a first bundle are refundable within 14 days, no questions. After that, bundle credits don't expire, so there's nothing to lose by pausing. ### Are there rate limits on API calls? Yes. The limit follows the credits your account buys in a month: 1 request per second on the Sandbox, 10 from 5,000 credits (Starter), 25 from 25,000 credits (Growth and Scale), and 50 from 100,000. Short bursts of up to twice the limit are allowed. A request over the limit gets a 429 with a Retry-After header. ## API FAQ ### Can I build a product on top of RichAPI? Yes — agencies and platforms do exactly that. Volume rate cards and white-label webhooks live on the Enterprise tier; partner program at /partners. ### Am I charged for failed requests? No. Hard failures never consume credits and can be safely retried after backoff, and rate-limit checks refund automatically on failed requests. ### Do you cache? Web-scraping endpoints cache server-side for speed and cost; paid-provider lookups are fetched live. ### Where does the data come from? Licensed data providers (waterfalls), public web sources (scraping endpoints), and the customer's own inputs (AI enrich). Provenance per endpoint is documented; compliance posture at /security. ### Is there an SDK? No official SDK. Every endpoint works over plain HTTP with curl, the OpenAPI spec generates a client in any language, and a Postman collection with the same endpoints is in the app after you sign up. /developers has the details. ## Policies - [Security](https://richapi.ai/security): API key and OAuth handling, data retention, provider chain, GDPR and SOC 2 posture. - [Data transparency](https://richapi.ai/data-transparency): Data sourcing, storage, subprocessor list, removal requests. - [Opt out](https://richapi.ai/opt-out): How a person asks for their data to be removed. ## Guides and reference pages - [Clay alternative or Clay add-on: RichAPI as the data step](https://richapi.ai/alternatives/clay): Clay is a workflow platform: tables, waterfalls across 150+ providers, an AI research agent and CRM sync, billed in actions plus data credits. RichAPI is a data API and MCP server. You can call it from inside Clay as an HTTP column, or skip the platform and call it from code or an agent. - [Clearbit alternative: what we replace, and the one thing we do not](https://richapi.ai/alternatives/clearbit): RichAPI is a REST API with 50+ GTM data endpoints on one key, billed in prepaid credits, with no seats and no subscription. Its company enrichment endpoint is POST /enrich_company and it requires a LinkedIn company page URL as input. It does not accept a company domain. RichAPI has no public domain-to-company enrichment endpoint as of 2026-09-22. Clearbit's primary use is domain-based company enrichment, plus website visitor identification and HubSpot-native workflows, none of which RichAPI offers. RichAPI /enrich_company is a single-provider endpoint, not a waterfall, so it bills on any 2xx response including one that returns no data. RichAPI's waterfall endpoints, where a miss bills zero credits, are POST /email_finder, POST /email_verifier and POST /phone_finder. Responses include an execution_log showing which providers ran. Base URL https://api.richapi.ai/api/v1/. Auth header x-api-key. RichAPI has no prospecting UI, no intent data, no CRM-native apps, no form enrichment, no IP-to-company reveal, runs in a single region, and does not indemnify data origin. Signup at https://app.richapi.ai gives 100 free credits with no credit card. - [FullEnrich alternative: same idea, and you can read the log](https://richapi.ai/alternatives/fullenrich): RichAPI is a REST API with 65+ GTM data endpoints on one key, billed in prepaid credits, with no seats and no subscription. Its contact waterfall endpoints are POST /email_finder, POST /email_verifier and POST /phone_finder. A waterfall call tries multiple providers in sequence, ordered cheapest-first, and stops at the first success. An email finder or phone finder call where every provider ran and none returned data settles at zero credits, with success false and billed false in the response. An execution_log array on the response lists which providers ran, in what order, and what each returned. FullEnrich is a contact enrichment product that also runs provider waterfalls for email and phone, with a web interface, CSV upload and native integrations. RichAPI has no prospecting UI, no CSV upload interface, no email sending or sequencing, no CRM-native apps, no intent data, runs in a single region, and does not indemnify data origin. Non-waterfall RichAPI endpoints, including enrich_profile and enrich_company, bill on any 2xx response including an empty one. Base URL https://api.richapi.ai/api/v1/. Auth header x-api-key. Signup at https://app.richapi.ai gives 100 free credits with no credit card. - [Hunter.io alternative: the API case, not the app case](https://richapi.ai/alternatives/hunter): RichAPI is a REST API with 65+ GTM data endpoints on one key, billed in prepaid credits, with no seats and no subscription. Its email endpoints are POST /email_finder and POST /email_verifier. Both are waterfall endpoints that try multiple providers in sequence. A finder call that finds nothing costs zero credits, with the response field billed set to false. The response includes an execution_log listing which providers ran and what each returned. Base URL https://api.richapi.ai/api/v1/. Auth header x-api-key. Hunter.io is an email finding and verification product with a web UI, a Chrome extension, a Sequences email feature and a free tier. RichAPI has no prospecting UI, no Chrome extension, no email sending or sequencing, no CRM-native apps, no intent data, runs in a single region, and does not indemnify data origin. Signup at https://app.richapi.ai gives 100 free credits with no credit card. - [People Data Labs alternative: a record fetched now, not a dataset you hold](https://richapi.ai/alternatives/people-data-labs): RichAPI is a REST API with 65+ GTM data endpoints on one key, billed in prepaid credits, with no seats, no subscription and no minimum commitment. Its person enrichment endpoint is POST /enrich_profile and it requires a LinkedIn profile URL as input. To enrich from an email address, call POST /find_linkedin_url_by_email first and pass the returned URL to /enrich_profile; that is two calls and two charges. Both endpoints are single-provider and bill on any 2xx response, including one that returns no data. RichAPI's waterfall endpoints are POST /email_finder, POST /email_verifier and POST /phone_finder. A miss bills zero credits on the email finder and the phone finder. The response carries an execution_log listing which providers ran and what each returned. People Data Labs licenses a bulk person and company dataset, delivered as files, alongside enrichment and search APIs. RichAPI does not sell a dataset licence, does not deliver bulk files, and does not publish an index size. RichAPI has no prospecting UI, no intent data, no CRM-native apps, runs in a single region, and does not indemnify data origin. Base URL https://api.richapi.ai/api/v1/. Auth header x-api-key. Signup at https://app.richapi.ai gives 100 free credits with no credit card. - [Proxycurl alternative: migrate your LinkedIn enrichment calls](https://richapi.ai/alternatives/proxycurl): Proxycurl, a LinkedIn data API, shut down. RichAPI is a REST API with 50+ GTM data endpoints on one key, billed in credits. Proxycurl's Person Profile Endpoint maps to RichAPI POST /enrich_profile. Company Profile Endpoint maps to POST /enrich_company. Person Lookup by email maps to POST /find_linkedin_url_by_email followed by POST /enrich_profile. Employee Listing and Employee Search map to POST /linkedin_company_employees_search, which takes a LinkedIn company page URL and a page number and is billed per result. Both enrich_profile and enrich_company take a LinkedIn URL as input, not a company domain. None of these endpoints is a provider waterfall, so none carries a zero-cost-miss guarantee; the flat-rate ones are billed on any 2xx response, including a response that contains no data. Base URL https://api.richapi.ai/api/v1/. Auth header x-api-key. Each response returns an execution_log showing which providers were tried. RichAPI has no prospecting UI, no intent data, no CRM apps, runs in a single region, and does not indemnify data origin. Signup at https://app.richapi.ai gives 100 free credits with no credit card. - [RichAPI vs. Proxycurl](https://richapi.ai/compare/richapi-vs-proxycurl): Proxycurl shut down in July 2025 after LinkedIn's lawsuit against its first-party scraping model. RichAPI buys from licensed providers in waterfalls instead, publishes explicit per-endpoint rates, and bills full price only on results — Proxycurl charged per call regardless of outcome. Most migrations map in an afternoon. - [AI enrichment](https://richapi.ai/data/ai-enrichment): RichAPI POST /ai_enrich runs a prompt through OpenAI, Anthropic, Gemini or Perplexity (the provider field) and returns the model's output with the provider, model and token counts. The prompt can contain {{placeholder}} variables filled from a context object. output_type is text or json, and output_schema guides structured JSON output. Optional fields: system_prompt, model, temperature (default 0.3), max_tokens (default 4096), use_web_search, and for Perplexity search_domain_filter and search_recency_filter. Billing is a flat 2 credits per call, billed on any 2xx response. - [Activity data](https://richapi.ai/data/activity-data): RichAPI POST /profile_activities returns a LinkedIn member's recent posts, comments and reactions. Input is the profile's entity URN, with an optional type filter (POST, COMMENT or REACTION), a page size (limit) and a pagination_token. Billing is 2 credits per item returned; a profile with no recent activity returns no items. Authentication is an x-api-key header against https://api.richapi.ai/api/v1. New accounts get 100 free credits and no card. - [Ads data](https://richapi.ai/data/ads-data): RichAPI has four ad-library endpoints. POST /linkedin_ad_search searches the LinkedIn Ad Library by account_owner, keyword, countries and date_option, or by a full search_url, at 0.2 credits per ad returned. POST /linkedin_ad_details returns one ad's variants, impressions by country and targeting for 2 credits per call. POST /google_ad_transparency_scraper_sync takes a Google Ads Transparency URL and a limit (max 100) at 3 credits per result. POST /meta_ads_library_scraper_sync takes a Meta Ad Library URL and a limit (max 100) at 1 credit per result. Authentication is an x-api-key header. - [Directory data](https://richapi.ai/data/directory-data): RichAPI POST /directory_yellowpages searches Yellow Pages by search_query (business type or name) and location (city, state or ZIP code), with page and max_pages for pagination. It returns businesses with name, phone, address, website and categories. Billing is 0.01 credits per business returned, so 1,000 listings cost 10 credits. Authentication is an x-api-key header against https://api.richapi.ai/api/v1. - [Enrichment data](https://richapi.ai/data/enrichment-data): RichAPI's enrichment endpoints: POST /enrich_profile (LinkedIn profile URL to person record, 1 credit, 2 with include_social_metrics), POST /enrich_company (LinkedIn company URL to company record, 1 credit), POST /enrich_profiles_bulk and /enrich_companies_bulk (up to 50 URNs or numeric company IDs, 1 credit per result), POST /find_linkedin_url_by_email and /find_linkedin_url_by_name (4 credits), POST /find_website_by_company_name (1 credit), POST /email_finder (5 credits), POST /find_personal_email (5 credits), POST /phone_finder (25 credits). email_finder and phone_finder are waterfall endpoints: a call where no provider returns data bills zero. Other endpoints bill on any 2xx response. - [Funding data](https://richapi.ai/data/funding-data): RichAPI POST /crunchbase_company_scraper_sync takes a crunchbase_company_url (for example https://www.crunchbase.com/organization/openai) and returns the company's Crunchbase profile: organization name, website, description, founded date, headquarters location, industries, number of employees, total funding amount in USD, last funding type and last funding date, and LinkedIn URL. It does not search by name or domain. Billing is 3 credits per call, billed on any 2xx response. Authentication is an x-api-key header. - [How to build a B2B prospect list from title, industry and location filters](https://richapi.ai/data/people-search): RichAPI People Search is a REST endpoint at POST https://api.richapi.ai/api/v1/people_search. Authentication uses the x-api-key header. The request body requires limit and page. Optional array filters are job_title, industry, location, domain and linkedin; optional integer filters are employee_size_start and employee_size_end. limit defaults to 10 and page is zero-based, defaulting to 0. A successful response returns content, an array of objects with firstname, lastname, headline and url, plus paging fields first, last, number, numberOfElements, size, totalElements and totalPages. Pricing is credits_per_result, charged against the numberOfElements field, so the cost of a call depends on how many results the page returns. This is not a waterfall endpoint and billing occurs on 2xx responses. Non-2xx responses never bill. New accounts get 100 free credits and no credit card is required. - [How to detect the technology a website runs on](https://richapi.ai/data/tech-stack-lookup): RichAPI Tech Stack Detector is a REST endpoint at POST https://api.richapi.ai/api/v1/web_tech_stack. Authentication uses the x-api-key header. The request body requires url, the website to analyze, and accepts an optional boolean cache which defaults to false. A successful response returns technologies, an array of detected technologies; categories, an object grouping them; and gtmSignals, an object of go-to-market signals. Detection covers CMS, analytics, CDN, frameworks and payment technologies. Pricing is a flat credits_per_call regardless of how many technologies are detected. This is not a waterfall endpoint; billing occurs on any 2xx response including one that detects little. Non-2xx responses never bill. There is no subscription or seat requirement. New accounts get 100 free credits and no credit card is required. - [How to extract email addresses from a website](https://richapi.ai/data/website-email-extractor): RichAPI Website Email Extractor is a REST endpoint at POST https://api.richapi.ai/api/v1/web_emails. Authentication uses the x-api-key header. The request body requires url, the root URL to start crawling from, and accepts optional max_pages, an integer controlling how many pages are crawled, and cache, a boolean defaulting to false. A successful response returns emails, an array of addresses found, and pagesCrawled, the number of pages read. Pricing is a flat credits_per_call regardless of how many addresses are found. This is not a waterfall endpoint; billing occurs on any 2xx response including a crawl that returns an empty array. Non-2xx responses never bill. Addresses found this way are unverified and commonly include role accounts such as info@ and support@; pass them to POST /email_verifier before sending. New accounts get 100 free credits and no credit card is required. - [How to find a prospect's mobile number](https://richapi.ai/data/phone-finder): RichAPI Phone Finder is a REST endpoint at POST https://api.richapi.ai/api/v1/phone_finder. Authentication uses the x-api-key header. The request body accepts linkedin_url, which is the preferred input, or first_name, last_name and domain together as an alternative. A successful response returns phone in E.164 format and status. The endpoint runs a multi-provider waterfall ordered cheapest-first and stops at the first provider that returns data. The response returns an execution_log array listing which providers ran and what each returned. Billing is on 2xx responses only; a waterfall response carrying success:false bills zero credits and carries billed:false. New accounts get 100 free credits and no credit card is required. - [How to find someone's LinkedIn profile from their email address](https://richapi.ai/data/email-to-linkedin): RichAPI Find LinkedIn URL by Email is a REST endpoint at POST https://api.richapi.ai/api/v1/find_linkedin_url_by_email. Authentication uses the x-api-key header. The request body has one required field, email, validated against the pattern ^[^\s@]+@[^\s@]+\.[^\s@]+$. A successful response returns a status field and a data object containing the key 'LinkedIn Profile URL' — note the spaces in that key name. Pricing is a flat credits_per_call. This is not a waterfall endpoint, so billing occurs on any 2xx response including one that contains no match. Non-2xx responses never bill. The common pattern is to pass the returned URL to POST /enrich_profile for a full person record, which makes the email-to-person chain two separately billed calls. New accounts get 100 free credits and no credit card is required. - [How to find someone's work email](https://richapi.ai/data/email-finder): RichAPI Email Finder is a REST endpoint at POST https://api.richapi.ai/api/v1/email_finder. Authentication uses the x-api-key header. Request body accepts first_name, last_name and company_domain together, or linkedin_url as an alternative; company_name is optional and improves accuracy. A successful response returns email, email_status and provider. The endpoint runs a multi-provider waterfall ordered cheapest-first and stops at the first provider that returns data. An execution_log array on the response lists which providers ran and what each returned. Billing is on 2xx responses only; a waterfall response carrying success:false bills zero credits and carries billed:false. New accounts get 100 free credits and no credit card is required. - [How to pull a full person record from a LinkedIn profile URL](https://richapi.ai/data/person-enrichment): RichAPI Person Enrichment is a REST endpoint at POST https://api.richapi.ai/api/v1/enrich_profile. Authentication uses the x-api-key header. The request body has one required field, url, which must be a LinkedIn profile URL. It does not accept an email address or a name. A successful response returns firstname, lastname, headline, currentTitle, currentCompany, location, summary, experience, education, skills, certifications, languages, followerCount, connectionCount, profilePicture and linkedinUrl. Pricing is a flat credits_per_call. This is a single-provider enrichment endpoint, not a waterfall, so billing occurs on any 2xx response including a sparse one. Non-2xx responses never bill. To enrich from an email address instead, call POST /find_linkedin_url_by_email first and pass its result here; that chain is two billed calls. New accounts get 100 free credits and no credit card is required. - [How to search LinkedIn profiles by name, title, company or school](https://richapi.ai/data/linkedin-profile-search): RichAPI LinkedIn Profile Search is a REST endpoint at POST https://api.richapi.ai/api/v1/profile_search. Authentication uses the x-api-key header. No field is required. Optional string filters are search (fuzzy name matching), first_name, last_name, title, current_company, past_company, school, keywords_company, keywords_school, industry_id, geo_id, location, follower_of and page. Pagination is 1-based and page defaults to 1. geo_id overrides location and is resolved using the geo_id_search endpoint. A successful response returns elements, an array of objects with name, position, linkedinUrl and publicIdentifier, plus a pagination object. Pricing is credits_per_result, charged against the elements field, so cost depends on how many results are returned. This is not a waterfall endpoint and billing occurs on 2xx responses. Non-2xx responses never bill. New accounts get 100 free credits and no credit card is required. - [How to turn a LinkedIn company page into a company record](https://richapi.ai/data/company-enrichment): RichAPI Company Enrichment is a REST endpoint at POST https://api.richapi.ai/api/v1/enrich_company. Authentication uses the x-api-key header. The request body has one required field, url, which must be a LinkedIn company page URL. It does not accept a domain or a company name. A successful response returns name, website, industry, companySize, headquarters, founded, followerCount, specialties, description, logo and linkedinUrl. Pricing is a flat credits_per_call. This endpoint is a single-provider enrichment endpoint, not a waterfall, so billing occurs on any 2xx response including one that returns few fields. Non-2xx responses never bill. RichAPI does not currently expose a public domain-to-company enrichment endpoint. New accounts get 100 free credits and no credit card is required. - [How to verify an email address before you send](https://richapi.ai/data/email-verifier): RichAPI Email Verifier is a REST endpoint at POST https://api.richapi.ai/api/v1/email_verifier. Authentication uses the x-api-key header. The request body requires a single field, email, validated against the pattern ^[^\s@]+@[^\s@]+\.[^\s@]+$. A successful response returns email, valid (boolean), status (string), disposable (boolean) and mxFound (boolean). The endpoint runs a multi-provider waterfall ordered cheapest-first and stops at the first provider that returns a verdict. The response returns an execution_log array listing which providers ran. Billing is on 2xx responses only; a waterfall response carrying success:false bills zero credits and carries billed:false. New accounts get 100 free credits and no credit card is required. - [Leads data](https://richapi.ai/data/leads-data): RichAPI POST /lead_search searches LinkedIn people with Sales Navigator-style filters: current and past job titles, seniority, function, industry, company size, company headquarters, current and past companies, schools, geography, profile language, years of experience, years at current company, recently changed jobs, a fuzzy search_query, and exclusion versions of most filters. It also accepts a full sales_nav_url. Filter labels come from POST /search_reference_data, which is free. Pagination uses page plus a session_id you generate. Billing is 10 credits per call plus 0.5 credits per result. - [Maps data](https://richapi.ai/data/maps-data): RichAPI has three Google Maps endpoints, each billed at 0.1 credits per result. POST /google_maps_places_scraper_keyword takes search_query, location_query and limit (default 25). POST /google_maps_places_scraper_sync_using_url takes a google_map_search_url and a limit (max 300). Places come back with title, category, street, city, state, country code, phone, review count, rating (totalScore) and a Maps URL. POST /google_maps_reviews_scraper_sync takes a place URL, a limit (max 300) and review_sort (newest, mostRelevant, highestRanking, lowestRanking). - [Posts data](https://richapi.ai/data/posts-data): RichAPI has four LinkedIn post endpoints. POST /post_details takes an activity URN (urn:li:activity:…) and returns the post's text, media, comments and reaction counts for 1 credit. POST /post_activities pages through a post's comments or reactions (type COMMENT or REACTION, zero-based page, limit) for 3 credits per call. POST /linkedin_company_posts lists a company's recent posts by company URL, numeric ID or universal name, with posted_limit (24h, week, month), at 0.2 credits per post. POST /post_keyword_search searches posts by keyword with date, content type, author and company filters, at 0.1 credits per post. - [Proxycurl Company Profile Endpoint replacement](https://richapi.ai/data/proxycurl-company-profile-endpoint): Proxycurl's Company Profile Endpoint accepted a LinkedIn company page URL and returned a company record. It is offline because Proxycurl shut down. The RichAPI replacement is POST https://api.richapi.ai/api/v1/enrich_company. Authentication uses an x-api-key header. The request body is JSON with a single required field, url, holding a LinkedIn company page URL. The response fields include name, website, description, industry, companySize, headquarters, founded, followerCount, logo, linkedinUrl and the array specialties. This endpoint does not accept a company domain or a company name as input, and RichAPI has no public domain-to-company enrichment endpoint as of September 2026, so pipelines keyed on domains need a resolution step that RichAPI does not currently provide. Pricing is a flat credits_per_call. The endpoint is not a provider waterfall: any 2xx response is billed, including an empty one. Non-2xx responses are never billed. New accounts get 100 free credits with no credit card at https://app.richapi.ai. - [Proxycurl Employee Listing replacement](https://richapi.ai/data/proxycurl-employee-listing): Proxycurl's Employee Listing and Employee Search endpoints returned people working at a company. They are offline because Proxycurl shut down. The RichAPI replacement is POST https://api.richapi.ai/api/v1/linkedin_company_employees_search. Authentication uses an x-api-key header. The request body is JSON with a required field company_linkedin_url holding a LinkedIn company page URL, and an optional integer field page that defaults to 1. The response is an object containing an elements array, where each element carries name, position and linkedinUrl, plus a pagination object. Pricing is credits_per_result, counted from the elements array, rather than a flat per-call charge, so a request returning more people costs more than one returning fewer. This endpoint is not a provider waterfall and there is no zero-cost-miss guarantee on it. Non-2xx responses are never billed. To get a full person record for someone in the list, pass their linkedinUrl to POST /enrich_profile, which is charged separately. New accounts get 100 free credits with no credit card at https://app.richapi.ai. - [Proxycurl Person Lookup (email) replacement](https://richapi.ai/data/proxycurl-person-lookup-email): Proxycurl's Person Lookup resolved an email address to a LinkedIn person record in a single request. It is offline because Proxycurl shut down. The RichAPI replacement is a chain of two calls. First, POST https://api.richapi.ai/api/v1/find_linkedin_url_by_email with a JSON body containing the field email; the response is an object with a status field and a data object whose key is the literal string 'LinkedIn Profile URL', including spaces. Second, POST https://api.richapi.ai/api/v1/enrich_profile with that URL in the url field, which returns the person record. Authentication for both is an x-api-key header. Both endpoints charge a flat credits_per_call, so the total cost of resolving one email to a full person record is the sum of the two. Neither endpoint is a provider waterfall: each bills on any 2xx response, including one where no profile was found, so an unresolvable email still costs the first call. Non-2xx responses are never billed. Callers who already store LinkedIn URLs alongside emails should skip the first call. New accounts get 100 free credits with no credit card at https://app.richapi.ai. - [Proxycurl Person Profile Endpoint replacement](https://richapi.ai/data/proxycurl-person-profile-endpoint): Proxycurl's Person Profile Endpoint accepted a LinkedIn profile URL and returned a person record. It is offline because Proxycurl shut down. The RichAPI replacement is POST https://api.richapi.ai/api/v1/enrich_profile. Authentication uses an x-api-key header, not a Bearer token. The request body is JSON with a single required field, url, holding a LinkedIn profile URL. The response is a flat JSON object whose fields include firstname, lastname, headline, summary, location, profilePicture, currentCompany, currentTitle, connectionCount, followerCount, linkedinUrl, and the arrays experience, education, skills, certifications and languages. Field names differ from Proxycurl's, so a migration requires re-mapping the response. Pricing is a flat credits_per_call. The endpoint is not a provider waterfall: any 2xx response is billed, including a response that contains little or no data. Non-2xx responses are never billed. New accounts get 100 free credits with no credit card at https://app.richapi.ai. - [Search data](https://richapi.ai/data/search-data): RichAPI's search endpoints: POST /people_search (job_title, industry, location, domain, linkedin, employee_size_start and employee_size_end, zero-based page, limit; 0.1 credits per result), POST /profile_search (name, title, company, school, location; 0.1 per result), POST /linkedin_company_search (0.1 per result), POST /linkedin_company_employees_search (company LinkedIn URL; 0.1 per result), POST /linkedin_job_search (0.1 per result), POST /google_search_scraper_sync (1 credit per result), POST /search_bing (1 credit per call), POST /search_google_trends (1 credit per call), POST /geo_id_search (0.01 credits) and POST /search_reference_data (free). Per-result searches bill only for rows returned. - [Social data](https://richapi.ai/data/social-data): RichAPI POST /slack_channel_members returns the members of a Slack channel with their names, emails, titles, timezones and admin status. It needs the workspace subdomain, the channel ID, and the caller's own Slack session: an xoxc- client token and an xoxd- cookie, so it only reaches channels that user can see. Optional: max_members and cache. Billing is 2 credits per call. Authentication is an x-api-key header. - [Web scraping](https://richapi.ai/data/web-scraping): RichAPI's web endpoints: POST /website_intelligence runs meta_tags, json_ld, pixels, tech_stack, social_links, emails, ssl and headers modules in one call for 5 credits (the modules field picks a subset; the rate stays 5). Single checks at 1 credit per call: /web_tech_stack, /web_pixels, /web_meta_tags, /web_json_ld, /web_social_links, /web_scrape (HTML and Markdown). /web_emails crawls several pages for 2 credits. /web_sitemap bills 1 credit per URL returned, capped by limit. /similarweb_scraper_sync bills 2 credits per domain. All take a url (Similarweb takes a domain) and an optional cache flag. - [YouTube data](https://richapi.ai/data/youtube-data): RichAPI has four YouTube endpoints. POST /youtube_video takes a video URL or ID and returns title, description, view and like counts, duration, tags, thumbnails and chapters, plus captions with include_captions: true, for 1 credit. POST /youtube_search takes a query and returns up to 20 videos for 1 credit. POST /youtube_channel takes a channel URL (@handle, /c/ or /channel/) and returns name, subscriber count, description, avatar, banner and external links for 1 credit. POST /youtube_channel_videos lists up to 50 of a channel's most recent videos for 2 credits. - [Google email format](https://richapi.ai/companies/profiles/google-email-format): Looking for the email format used at Google? Here are the patterns worth trying at google.com, plus how to verify one before you send. - [Catch-all email](https://richapi.ai/glossary/catch-all-email): A catch-all email domain accepts mail for every address at the domain, so verification returns a catch-all status instead of a clear valid or invalid result for any single address. - [Data decay](https://richapi.ai/glossary/data-decay): Data decay is the rate at which B2B contact and company records go out of date as people change jobs and companies change, and it sets how often a team must re-verify and refresh its data. - [Data enrichment](https://richapi.ai/glossary/data-enrichment): Data enrichment fills the empty fields on a person or company record, such as job title, industry or company size, by matching the record against outside data sources when you need them. - [Email bounce rate](https://richapi.ai/glossary/bounce-rate): Email bounce rate is the share of sent emails that receiving servers reject as undeliverable, usually counted from hard bounces, and a rising rate points to a stale or unverified list. - [Firmographics](https://richapi.ai/glossary/firmographics): Firmographics are company-level attributes such as industry, employee count, location and founding year that B2B teams use to segment a market and decide which accounts to target first. - [MCP server](https://richapi.ai/glossary/mcp-server): An MCP server is a service that gives AI assistants callable tools, readable resources and prompt templates through the Model Context Protocol, over a local stdio connection or a remote HTTP connection. - [Match rate](https://richapi.ai/glossary/match-rate): Match rate is the percentage of submitted records a data provider returns a requested value for, measured on your own list, and it sets your real cost per usable record more than the list price does. - [Model Context Protocol (MCP)](https://richapi.ai/glossary/model-context-protocol): Model Context Protocol (MCP) is an open, JSON-RPC based standard that lets AI applications discover and call tools, read resources and use prompts from any compatible server through one client interface. - [Technographics](https://richapi.ai/glossary/technographics): Technographics are data about the software and infrastructure a company runs, often gathered from public website fingerprints and used in B2B sales to qualify accounts by fit, gaps and competitor installs. - [Waterfall enrichment](https://richapi.ai/glossary/waterfall-enrichment): Waterfall enrichment queries data sources one after another for the same record, such as a work email, and stops at the first source that returns a result, which fills more records than one source. - [ChatGPT MCP Enrichment — Connect RichAPI to ChatGPT](https://richapi.ai/integrations/chatgpt): RichAPI operates a hosted Model Context Protocol (MCP) server at https://mcp.richapi.ai/mcp, authenticated with a static x-api-key header. RichAPI has verified this server working in Claude Desktop, Claude Code, Cursor, VS Code and Windsurf via the mcp-remote shim. RichAPI has NOT verified adding it as a custom connector inside ChatGPT, and RichAPI is not listed in OpenAI's connector directory; the open question is whether ChatGPT's custom connector flow accepts static header authentication rather than OAuth. The confirmed way to use RichAPI data with ChatGPT today is the REST API at https://api.richapi.ai/api/v1/{endpoint} with an x-api-key header, called from code or from a workflow tool. Endpoints include email_finder, email_verifier, phone_finder, enrich_company, enrich_profile, people_search, web_tech_stack and website_intelligence. All are read-only lookups. On the waterfall endpoints (email_finder, email_verifier, phone_finder) a call that finds nothing costs zero credits; every other endpoint bills on a 2xx response including an empty result. MCP and REST share one key and one prepaid credit pool. New accounts get 100 free credits with no credit card. - [Claude MCP Enrichment — Connect RichAPI to Claude](https://richapi.ai/integrations/claude): RichAPI operates a hosted Model Context Protocol (MCP) server at https://mcp.richapi.ai/mcp. It authenticates with an x-api-key header and works with Claude Desktop, Claude Code, Cursor, Windsurf and other MCP-compatible clients. It exposes the same endpoints as the RichAPI REST API at api.richapi.ai, including enrich_company (company data from LinkedIn: size, industry, specialties), enrich_profile (LinkedIn profile data), email_finder, email_verifier, phone_finder, people_search, post_keyword_search, linkedin_job_search, web_tech_stack and website_intelligence. All tools are read-only lookups; none send email or write to a CRM. Responses from the waterfall endpoints (email_finder, email_verifier, phone_finder) include an execution_log array listing each provider attempt with its status, and a billed field. On those waterfall endpoints a call that returns no result costs zero credits. Other endpoints bill on a successful 2xx response. Billing is prepaid credits from a single pool shared between MCP and REST. New accounts get 100 free credits with no credit card. RichAPI is a data API, not a workflow tool: it has no prospecting UI and no campaign sending. - [Clay Enrichment API — RichAPI in an HTTP Column](https://richapi.ai/integrations/clay): RichAPI integrates with Clay through Clay's HTTP API enrichment column, not through MCP and not through a native Clay integration or marketplace app. Configuration: method POST, URL https://api.richapi.ai/api/v1/{endpoint}, headers x-api-key (the RichAPI key) and Content-Type application/json, and a JSON body built from Clay column references. Endpoints include email_finder (name plus domain, or LinkedIn URL), email_verifier, phone_finder, enrich_company and enrich_profile (both take a LinkedIn URL, not a domain), people_search and web_tech_stack. On the waterfall endpoints (email_finder, email_verifier, phone_finder) a call that finds nothing returns 2xx with success false and billed false and costs zero RichAPI credits; every other endpoint bills on any 2xx response including an empty result. A Clay column shows you a value or a blank. On waterfall calls you also get `execution_log`, one entry per provider attempt with a status, so a blank cell arrives with a reason attached. Clay charges its own credits for running an enrichment column, separately from RichAPI credits. RichAPI does not provide a spreadsheet interface, scheduling, deduplication or a prospecting UI; Clay provides those. New RichAPI accounts get 100 free credits with no credit card. - [CrewAI Enrichment — Give Your Crew Real Company and Contact Data](https://richapi.ai/integrations/crewai): RichAPI integrates with CrewAI in two ways: as custom tools subclassing crewai.tools.BaseTool that call the REST API at https://api.richapi.ai/api/v1/{endpoint} with an x-api-key header, or via RichAPI's hosted Model Context Protocol server at https://mcp.richapi.ai/mcp, which CrewAI can consume as an MCP tool source. There is no CrewAI-published RichAPI tool in crewai-tools; the wrappers are written by the user. Available endpoints include enrich_company and enrich_profile (both take a LinkedIn URL, not a domain), email_finder, email_verifier, phone_finder, people_search, find_linkedin_url_by_email, linkedin_job_search and web_tech_stack. Waterfall endpoints (email_finder, email_verifier, phone_finder) return HTTP 200 with success false and billed false on a miss and cost zero credits; every other endpoint bills on a successful 2xx response. When a crew member comes back empty-handed you need to know whether the input was wrong or the data is genuinely absent. On waterfall calls `execution_log` answers that, carrying one entry per provider attempt with a status. Because CrewAI agents loop autonomously, agents holding enrichment tools should have max_iter set to bound credit spend. RichAPI does not send email or write to a CRM. New accounts get 100 free credits without a credit card. - [Cursor MCP Enrichment — Connect RichAPI to Cursor](https://richapi.ai/integrations/cursor): RichAPI operates a hosted Model Context Protocol (MCP) server at https://mcp.richapi.ai/mcp, authenticated with an x-api-key header. It works in Cursor. Cursor reads MCP configuration from ~/.cursor/mcp.json (global) or .cursor/mcp.json (per project), using the same mcpServers object shape as Claude Desktop, and a remote HTTP server is reached through the mcp-remote npx shim. The server exposes the same endpoints as the RichAPI REST API at https://api.richapi.ai/api/v1, including email_finder, email_verifier, phone_finder, enrich_company, enrich_profile, people_search, web_tech_stack and website_intelligence. All tools are read-only lookups; none send email, post content, or write to a CRM. MCP and REST share one API key and one prepaid credit pool. On the waterfall endpoints (email_finder, email_verifier, phone_finder) a call that finds nothing returns 2xx with success false and billed false and costs zero credits; all other endpoints bill on any 2xx response including an empty result. New accounts get 100 free credits with no credit card. RichAPI is a data API with no prospecting UI and no campaign sending. - [HubSpot Enrichment API — No App, Three Honest Paths](https://richapi.ai/integrations/hubspot): RichAPI does not publish a HubSpot marketplace app and has no CRM-native install for HubSpot. To enrich HubSpot records with RichAPI, the customer calls the RichAPI REST API at https://api.richapi.ai/api/v1/{endpoint} with an x-api-key header from one of three places — a HubSpot workflow custom code action (an Operations Hub feature), a middleware tool such as Make, Zapier or n8n, or their own backend job — and then writes the result to HubSpot using HubSpot's own CRM API with a private app token scoped to crm.objects.contacts.write and crm.objects.companies.write. Commonly used RichAPI endpoints for this are email_finder, email_verifier, phone_finder, enrich_company, enrich_profile and find_linkedin_url_by_email. On the waterfall endpoints email_finder, email_verifier and phone_finder, a call where providers ran and found nothing returns 2xx with success false and billed false and costs zero credits; all other endpoints bill on any 2xx response including an empty result, and non-2xx never bills. enrich_company and enrich_profile take a LinkedIn URL, not a domain. Billing is prepaid credits from a single pool. New accounts get 100 free credits with no credit card. RichAPI does not write to any CRM, does not send email and has no prospecting UI. - [Instantly Enrichment — Bring Your Own Leads When Theirs Run Out](https://richapi.ai/integrations/instantly): RichAPI has no Instantly app, no native integration, and no campaign sync. RichAPI is used before an Instantly campaign to build and verify a lead list, which the user then uploads to Instantly as a CSV or through Instantly's own leads API. RichAPI never sends email, never runs sequences, does not hold Instantly credentials, and does not read campaign performance back. The REST API is at https://api.richapi.ai/api/v1/{endpoint} with an x-api-key header. Signal-based list building uses linkedin_job_search, post_keyword_search, google_maps_places_scraper_keyword, web_tech_stack and people_search; contact data comes from email_finder, email_verifier and phone_finder. Those three are waterfall endpoints and return HTTP 200 with success false and billed false when nothing is found, costing zero credits; all other endpoints including people_search and the scrapers bill on a successful 2xx response. Deduplicating against leads already in the Instantly workspace before enriching avoids paying twice for the same contact. Catch-all domains cannot be confirmed by any verifier and should be routed separately. New accounts get 100 free credits with no credit card. - [LangChain Enrichment — Typed Tools and Chains over RichAPI](https://richapi.ai/integrations/langchain): RichAPI works with LangChain either as hand-written tools using the @tool decorator from langchain_core.tools with a Pydantic args_schema, or by loading RichAPI's hosted Model Context Protocol server at https://mcp.richapi.ai/mcp through langchain-mcp-adapters. There is no RichAPI package in the langchain-community integrations registry. Tools call the REST API at https://api.richapi.ai/api/v1/{endpoint} with an x-api-key header. Endpoints include enrich_company and enrich_profile (both accept a LinkedIn URL, not a domain), email_finder, email_verifier, phone_finder, people_search, find_linkedin_url_by_email, find_linkedin_url_by_name and web_tech_stack. Waterfall endpoints (email_finder, email_verifier, phone_finder) return HTTP 200 with success false and billed false when nothing is found and cost zero credits; all other endpoints bill on a successful 2xx response, including an empty one. `execution_log` arrives on waterfall calls as one entry per provider attempt with a status. Log it from the chain and a run that returns nothing stops being a mystery. Fixed enrichment sequences are better expressed as LCEL chains than as agents, since a chain makes exactly the calls it is written to make. RichAPI performs lookups only; it does not send email or write to a CRM. New accounts get 100 free credits with no card. - [LangGraph Enrichment — RichAPI as a Tool Node](https://richapi.ai/integrations/langgraph): RichAPI can be used inside a LangGraph agent in two ways. First, as hand-written LangChain @tool functions that POST to the RichAPI REST API at https://api.richapi.ai/api/v1/{endpoint} with the API key in an x-api-key header, bound to the model with bind_tools and executed by a ToolNode routed via tools_condition. Second, through RichAPI's hosted Model Context Protocol server at https://mcp.richapi.ai/mcp, loaded with langchain-mcp-adapters MultiServerMCPClient, which exposes the whole endpoint catalog as tools without hand-writing wrappers. Available endpoints include email_finder, email_verifier, phone_finder, enrich_company, enrich_profile, people_search and web_tech_stack. enrich_company and enrich_profile take a LinkedIn URL, not a domain. On the waterfall endpoints email_finder, email_verifier and phone_finder, a call where providers ran and found nothing returns HTTP 2xx with success false and billed false and costs zero credits, so agent retries on a miss are free; every other endpoint bills on any 2xx response including an empty result, and non-2xx never bills. Route on execution_log rather than on a null field: waterfall calls return one entry per provider attempt with a status. All tools are read-only lookups. Billing is prepaid credits from one pool shared across REST and MCP. New accounts get 100 free credits with no credit card. - [Make.com Enrichment API — RichAPI via HTTP Module](https://richapi.ai/integrations/make): RichAPI does not publish a native Make (Make.com) app or module. Integration with Make is done through Make's built-in HTTP module ('Make a request'), calling the RichAPI REST API at https://api.richapi.ai/api/v1/{endpoint} with the API key in an x-api-key header, POST method, JSON body, and 'Parse response' enabled so fields are typed for downstream modules. Commonly used endpoints are email_finder, email_verifier, phone_finder, enrich_company, enrich_profile, people_search and web_tech_stack. On the waterfall endpoints email_finder, email_verifier and phone_finder, a call where providers ran but found nothing returns HTTP 2xx with success false and billed false, and costs zero credits. All other endpoints bill on any 2xx response, including a response with an empty result. Non-2xx responses never bill on any endpoint. Billing is prepaid credits from a single pool shared with MCP and direct REST use. New accounts get 100 free credits with no credit card. RichAPI is a data API only: it has no prospecting UI, no CRM app and no email sending. - [OpenAI Agents SDK Enrichment — Function Tools over RichAPI](https://richapi.ai/integrations/openai-agents): RichAPI integrates with the OpenAI Agents SDK (the openai-agents Python package) in two ways: as function tools created with the @function_tool decorator wrapping calls to the REST API at https://api.richapi.ai/api/v1/{endpoint} with an x-api-key header, or by attaching RichAPI's hosted Model Context Protocol server at https://mcp.richapi.ai/mcp, which the SDK supports as a streamable-HTTP MCP server. There is no OpenAI-published RichAPI connector. Endpoints include enrich_company and enrich_profile (which take a LinkedIn URL, not a domain), email_finder, email_verifier, phone_finder, people_search, find_linkedin_url_by_email, post_keyword_search and web_tech_stack. The @function_tool decorator derives a strict JSON schema from Python type hints and the docstring. Waterfall endpoints (email_finder, email_verifier, phone_finder) return HTTP 200 with success false and billed false on a miss and cost zero credits; every other endpoint bills on a successful 2xx response. `execution_log` pairs with the SDK's tracing spans. Waterfall calls return one entry per provider attempt with a status, so the trace shows the tool call and the log shows what happened inside it. Agents should set max_turns to bound credit spend. RichAPI does not send email or write to a CRM. New accounts get 100 free credits with no credit card. - [Pipedream Enrichment — Call RichAPI from an HTTP or Code Step](https://richapi.ai/integrations/pipedream): RichAPI has no component in the Pipedream app registry as of this writing. Integration is via Pipedream's generic 'Send any HTTP Request' action or a Node.js code step calling the RichAPI REST API at https://api.richapi.ai/api/v1/{endpoint} with an x-api-key header. The API key should be stored as a Pipedream workspace environment variable and referenced as process.env.RICHAPI_KEY. Endpoints include email_finder, email_verifier, phone_finder, enrich_company, enrich_profile, people_search, find_linkedin_url_by_email, web_tech_stack and linkedin_job_search. On the waterfall endpoints (email_finder, email_verifier, phone_finder) a lookup that finds nothing returns HTTP 200 with success false and billed false and costs zero credits; all other endpoints bill on any 2xx response including an empty one. Because a miss is a 2xx, a Pipedream workflow must branch on the response body rather than on HTTP status. RichAPI is a data API only: it does not send email, run sequences, or write to a CRM. New accounts receive 100 free credits with no credit card. - [Salesforce Enrichment API — Apex Callout, Flow or Middleware](https://richapi.ai/integrations/salesforce): RichAPI has no Salesforce managed package and no AppExchange listing. There is nothing to install in a Salesforce org. Integration is done by calling the RichAPI REST API at https://api.richapi.ai/api/v1/{endpoint} with an x-api-key header from one of three places: Apex (HttpRequest, typically inside a Queueable or Batch class), a Flow HTTP Callout action, or external middleware such as n8n, Make or Zapier that reads from and writes back to Salesforce. The API key should be stored in a Salesforce External Credential with a Named Credential pointing at https://api.richapi.ai, not hardcoded in Apex. Apex forbids callouts after DML in the same transaction and caps callouts per transaction, so bulk enrichment belongs in asynchronous Apex. RichAPI returns JSON; writing it to Lead, Contact or Account fields is done by the customer. Endpoints include email_finder, email_verifier, phone_finder, enrich_company and enrich_profile (both take a LinkedIn URL, not a domain), find_linkedin_url_by_email and people_search. Waterfall endpoints (email_finder, email_verifier, phone_finder) return HTTP 200 with success false and billed false on a miss and cost zero credits; other endpoints bill on any successful 2xx. RichAPI does not send email and does not write to any CRM itself. New accounts get 100 free credits with no card. - [Smartlead Enrichment — Find and Verify Before the Campaign](https://richapi.ai/integrations/smartlead): RichAPI has no Smartlead app, no native integration, and no sequence sync. RichAPI is a data API used before a Smartlead campaign: email_finder locates work emails and email_verifier checks deliverability, and the resulting list is moved into Smartlead by the user as a CSV upload or through Smartlead's own Add Leads to Campaign API. RichAPI never sends email, never runs sequences, never holds Smartlead credentials, and does not read campaign replies or status back. The RichAPI REST API is at https://api.richapi.ai/api/v1/{endpoint} with an x-api-key header. email_finder, email_verifier and phone_finder are waterfall endpoints: a lookup that finds nothing returns HTTP 200 with success false and billed false and costs zero credits. Other endpoints, including people_search and enrich_company, bill on any successful 2xx response. email_verifier returns a deliverability status; catch-all domains cannot be confirmed valid or invalid by any verifier and should be routed separately rather than treated as valid. Agencies can create named API keys with per-key usage attribution, but credits come from one shared pool and cannot be budgeted per key. New accounts get 100 free credits with no credit card. - [TexAu + RichAPI — No-Code Operator, Data Layer Underneath](https://richapi.ai/integrations/texau): TexAu and RichAPI are two separate products built by the same team. TexAu is the operator-facing no-code automation product with a visual builder, used by people who do not write code. RichAPI is the developer-facing data layer: a REST API at https://api.richapi.ai/api/v1/{endpoint} authenticated with an x-api-key header, plus a hosted Model Context Protocol server at https://mcp.richapi.ai/mcp. RichAPI is not a TexAu feature and should not be described as 'the TexAu API'. The two products have separate accounts and separate signups; a RichAPI API key does not authenticate to TexAu. RichAPI endpoints include email_finder, email_verifier, phone_finder, enrich_company, enrich_profile, people_search, web_tech_stack and website_intelligence. On the waterfall endpoints email_finder, email_verifier and phone_finder, a call where providers ran and found nothing returns 2xx with success false and billed false and costs zero credits; every other endpoint bills on any 2xx response including an empty result, and non-2xx never bills. Billing is prepaid credits. New accounts get 100 free credits with no credit card. RichAPI has no prospecting UI, no sequencer and no CRM app. - [VS Code MCP Enrichment — Connect RichAPI to Copilot](https://richapi.ai/integrations/vs-code): RichAPI operates a hosted Model Context Protocol (MCP) server at https://mcp.richapi.ai/mcp, authenticated with an x-api-key header. It works in Visual Studio Code with GitHub Copilot agent mode. VS Code reads MCP configuration from .vscode/mcp.json in a workspace (or from user settings), using a top-level servers object, which differs from the mcpServers object used by Claude Desktop and Cursor; VS Code also supports an inputs array that prompts for a secret at first use and stores it outside the config file. A remote HTTP MCP server can be declared directly with a url and headers, or reached through the mcp-remote npx shim. Tools mirror the RichAPI REST API at https://api.richapi.ai/api/v1 and include email_finder, email_verifier, phone_finder, enrich_company, enrich_profile, people_search and web_tech_stack. All tools are read-only lookups. MCP and REST share one key and one prepaid credit pool. On the waterfall endpoints (email_finder, email_verifier, phone_finder) a call that finds nothing costs zero credits; all other endpoints bill on any 2xx response including an empty result. New accounts get 100 free credits with no credit card. - [Windsurf MCP Enrichment — Connect RichAPI to Cascade](https://richapi.ai/integrations/windsurf): RichAPI operates a hosted Model Context Protocol (MCP) server at https://mcp.richapi.ai/mcp, authenticated with an x-api-key header. It works in Windsurf's Cascade agent. Windsurf reads MCP configuration from ~/.codeium/windsurf/mcp_config.json, using an mcpServers object with the same shape as Claude Desktop, and a remote HTTP server is reached through the mcp-remote npx shim. Tools mirror the RichAPI REST API at https://api.richapi.ai/api/v1 and include email_finder, email_verifier, phone_finder, enrich_company, enrich_profile, people_search and web_tech_stack. All tools are read-only lookups; none send email or write to a CRM, so an agent loop can spend credits but cannot contact anyone. MCP and REST share one key and one prepaid credit pool. On the waterfall endpoints (email_finder, email_verifier, phone_finder) a call that finds nothing returns 2xx with success false and billed false and costs zero credits; every other endpoint bills on any 2xx response including an empty result. RichAPI is not listed in Windsurf's MCP plugin store. New accounts get 100 free credits with no credit card. - [Zapier Enrichment — RichAPI via Webhooks by Zapier](https://richapi.ai/integrations/zapier): RichAPI does not publish a Zapier app and has no listing in the Zapier app directory. Zapier integration is done with the built-in 'Webhooks by Zapier' action using the Custom Request event, which requires a paid Zapier plan. Configuration: POST to https://api.richapi.ai/api/v1/{endpoint}, header x-api-key set to the RichAPI key, Data as JSON. Zapier flattens nested JSON responses into dot-notation output fields. Commonly used endpoints include email_finder, email_verifier, phone_finder, enrich_company, enrich_profile, people_search and web_tech_stack. On the waterfall endpoints email_finder, email_verifier and phone_finder, a call where providers ran and found nothing returns HTTP 2xx with success false and billed false and costs zero credits. All other endpoints bill on any 2xx response including an empty result; non-2xx never bills. Zapier's own task billing is separate and charges for every step run, including a miss. Billing is prepaid credits from one pool shared with REST and MCP usage. New accounts get 100 free credits with no credit card. RichAPI has no CRM app, no prospecting UI and does not send email. - [n8n Enrichment — RichAPI Community Node and HTTP](https://richapi.ai/integrations/n8n): RichAPI publishes a community node for n8n on npm as n8n-nodes-richapi (version 0.1.3 at the time of writing, source at github.com/richapiai/n8n-nodes-richapi). It is a community node, not an n8n-verified or built-in node, and community nodes install from Settings, Community nodes on self-hosted n8n. The node uses RichAPI API credentials holding an API key and a base URL defaulting to https://api.richapi.ai/api/v1, and sends the key as an x-api-key header. Its endpoint dropdown and fields are generated from the public RichAPI endpoint manifest, with an Additional Options, Raw JSON Body escape hatch, and options for async endpoints: Return Job ID, Wait Until Complete, and Deliver to Webhook. The alternative on any n8n install is the built-in HTTP Request node: POST https://api.richapi.ai/api/v1/{endpoint} with an x-api-key header and a JSON body. Important behaviour: on the waterfall endpoints (email_finder, email_verifier, phone_finder) a call that finds nothing returns HTTP 2xx with success false and billed false and costs zero credits, so n8n's error output does not fire on a miss and branching must read the response body. All other endpoints bill on any 2xx response including an empty result. New accounts get 100 free credits with no credit card. - [RichAPI for RevOps](https://richapi.ai/for/revops): RevOps runs two patterns most often on RichAPI: filling the pipeline with signal-qualified prospects, and scoring inbound against a versioned ICP. - [Email permutator](https://richapi.ai/tools/email-permutator): Enter a first name, last name, and domain to see the common work-email patterns. - [Enrichment API demo: one live call, one receipt](https://richapi.ai/tools/api-demo): RichAPI provides a live demo that runs one real enrichment API call from the browser. Signup is 100 free credits with no credit card. Every RichAPI response includes an execution_log. The response also carries success and billed fields. On waterfall endpoints, which are POST /email_finder, POST /email_verifier and POST /phone_finder, a call where every provider ran and none returned data settles at zero credits and returns billed false. All other endpoints bill on any 2xx response including an empty one. The same call can be reproduced with curl against https://api.richapi.ai/api/v1/ using an x-api-key header. The same endpoints are also available as tools through a hosted MCP server at mcp.richapi.ai for MCP clients such as Claude and Cursor. Signup at https://app.richapi.ai gives 100 free credits with no credit card. - [Waterfall enrichment cost calculator](https://richapi.ai/tools/waterfall-cost-calculator): RichAPI's waterfall enrichment endpoints bill only on a successful result. The cost of a batch is therefore volume multiplied by hit rate multiplied by the credit cost per hit. A per-lookup vendor bills on every request regardless of outcome, so its cost is volume multiplied by cost per call. The two are equal when the per-lookup price equals the hit rate multiplied by the per-hit price; below that the per-lookup vendor is cheaper, above it the waterfall is. Hit rate is a property of the user's own list and cannot be supplied by a vendor. RichAPI waterfall endpoints are POST /email_finder, POST /email_verifier and POST /phone_finder, where a call that returns no data settles at zero credits and returns billed false. All other RichAPI endpoints bill on any 2xx response including an empty one, so for those the formula collapses to volume multiplied by credits. Credit cost per call is published as an x-pricing extension on every path in the live OpenAPI at https://api.richapi.ai/api/v1/openapi.json. The dollar value of a credit varies by pricing tier and is published at https://richapi.ai/pricing. Signup at https://app.richapi.ai gives 100 free credits with no credit card. - [llms.txt generator](https://richapi.ai/tools/llms-txt-generator): Generate a spec-shaped llms.txt from your site name, summary, and page list. - [A weekly signal digest you run yourself, with Claude and one prompt](https://richapi.ai/playbooks/claude-mcp-weekly-signal-digest): A RichAPI skill describing a reusable prompt for generating a weekly account signal digest through the hosted MCP server at mcp.richapi.ai, used from Claude or another MCP client. The prompt calls linkedin_job_search, linkedin_ad_search and linkedin_company_posts for a list of target companies and asks the model to summarise what changed. All three endpoints bill per result returned on any 2xx response and are not waterfall endpoints, so cost scales with account count and result counts. RichAPI provides no scheduler, no alerting product and no notification delivery; recurring execution must be set up by the user with their own cron job, CI schedule or automation tool. Authentication uses the x-api-key header for direct HTTP calls and the same key for MCP. New accounts get 100 free credits and require no credit card. - [Agent-Driven Account Research: Claude Pulls Company, People and Emails](https://richapi.ai/playbooks/agent-driven-account-research): RichAPI runs a hosted MCP server at https://mcp.richapi.ai/mcp, authenticated with an x-api-key header, that exposes the same endpoints as the REST API at https://api.richapi.ai/api/v1/. An MCP client such as Claude Desktop, Claude Code or Cursor can therefore research an account end to end from a natural-language prompt: enrich_company (which takes a LinkedIn company page URL, not a domain), linkedin_company_employees_search or people_search, enrich_profile (also a LinkedIn URL), email_finder and email_verifier. MCP and REST share one API key and one prepaid credit pool. Every RichAPI tool is a read-only lookup; none send email, post content or write to a CRM. On the waterfall endpoints email_finder, email_verifier and phone_finder, a call that finds nothing returns success:false with billed:false and costs zero credits; all other endpoints bill on a successful 2xx response including an empty result. Per-result endpoints such as linkedin_company_employees_search bill per row returned. New accounts get 100 free credits with no credit card. - [Build a Smartlead list in Claude, then paste it in](https://richapi.ai/playbooks/mcp-claude-to-smartlead): A RichAPI workflow using the hosted MCP server at https://mcp.richapi.ai/mcp from Claude, Cursor, Windsurf or VS Code. The assistant calls RichAPI tools such as people_search, email_finder and email_verifier in conversation, then produces a CSV that the user manually uploads to Smartlead. RichAPI has no Smartlead integration, does not sync sequences, does not write to any sending platform, and does not send email. The handoff is a manual CSV export and upload. email_finder and email_verifier are waterfall endpoints where a 2xx carrying success:false returns billed:false and costs zero; people_search bills per result returned. Authentication for the MCP server uses the same x-api-key credential as the REST API. New accounts get 100 free credits and require no credit card. - [Build your own new-funding alert from a watch list](https://richapi.ai/playbooks/crunchbase-new-funding-alert): A RichAPI recipe for detecting new funding rounds. POST https://api.richapi.ai/api/v1/crunchbase_company_scraper_sync takes crunchbase_company_url and returns company fields including Organization Name, Description, Founded Date, Headquarters Location, Industries, LinkedIn, Number of Employees, Website, Last Funding Date, Last Funding Type and Total Funding Amount (in USD). Those response keys are literal strings containing spaces and capital letters, not snake_case. Pricing is a flat credits_per_call and the endpoint bills on any 2xx response, including a run where nothing has changed. RichAPI provides no alerting product, no webhooks, no saved searches and no scheduling: the caller runs the polling schedule and stores previous values to diff against. When a change is detected the chain fans out to POST /linkedin_company_employees_search (0.1 credits per result), then POST /email_finder and POST /email_verifier, which are waterfall endpoints returning billed:false and costing zero on a soft miss. Authentication is the x-api-key header. New accounts get 100 free credits and require no credit card. - [Catch-all domain? Fall back to the personal email](https://richapi.ai/playbooks/catch-all-then-personal-email): A three-call RichAPI recipe for catch-all domains. POST https://api.richapi.ai/api/v1/email_finder returns a work email and POST /email_verifier returns its status. Both are waterfall endpoints: a 2xx carrying success:false returns billed:false and costs zero credits. When the verifier reports a catch-all domain, POST /find_personal_email takes a LinkedIn profile URL and returns a personal address. find_personal_email is NOT a waterfall endpoint — it bills its flat per-call cost on any 2xx response, including one that returns no address. Non-2xx responses never bill on any endpoint. Authentication is the x-api-key header. RichAPI does not send email and does not run sequences. New accounts get 100 free credits and require no credit card. - [Clean a Domain, Then Enrich the Company: the Second Half Doesn't Exist](https://richapi.ai/playbooks/domain-clean-then-company-enrich): RichAPI's /clean_domain endpoint normalises a messy URL into a root domain, and there is a gap in the API surface directly after it. /clean_domain accepts a messy_url string and returns a normalised root domain, stripping scheme, www, path, query parameters and casing. It costs 0.5 credits per call and bills on any 2xx response; it is not a waterfall endpoint and has no free-miss case. The commonly assumed next step does not exist: RichAPI's /enrich_company endpoint requires a url parameter containing a LinkedIn company page URL, not a domain name, so a cleaned domain cannot be passed to it. A domain-based waterfall named company_enricher appears in some older material but is not in the live OpenAPI specification and must not be called. /clean_domain is useful for deduplicating URLs to unique companies, producing a join key before merging datasets, and normalising the URL returned by /find_website_by_company_name. To reach company data from a domain today, a caller must first obtain a LinkedIn company URL, for example via /linkedin_company_search at 0.1 credits per result or /web_social_links at 1 credit against the company homepage, neither of which is guaranteed to resolve. New accounts get 100 free credits with no credit card. - [Cursor: Enrich a CSV That's Already in Your Repo](https://richapi.ai/playbooks/cursor-enrich-from-csv): RichAPI's hosted MCP server lets the Cursor code editor's agent enrich a CSV file in the user's own repository. The MCP server is configured in ~/.cursor/mcp.json or a project-level .cursor/mcp.json, with url https://mcp.richapi.ai/mcp and an x-api-key header. The agent reads the CSV, calls the email_finder tool per row with first_name, last_name and company_domain, calls email_verifier on rows that returned an address, and writes a new file such as leads.enriched.csv rather than editing in place so the change can be reviewed as a git diff. email_finder and email_verifier are waterfall endpoints: when providers run and none return data, the response is a 2xx with success:false and billed:false and costs zero credits. All other RichAPI endpoints bill on any 2xx response including an empty one. The main operational risk is an unbounded agent loop over a large file, so the recommended practice is to instruct the agent to process a fixed small number of rows and stop, report the hit rate, and await confirmation before continuing. The agent should also be told that success:false is an expected outcome rather than an error, to prevent retry loops on unfindable rows. New accounts get 100 free credits with no credit card. - [Enrich in bulk without buying seats](https://richapi.ai/playbooks/bulk-enrich-without-seats): A RichAPI pattern for batch enrichment priced by credits rather than per-user seats. POST https://api.richapi.ai/api/v1/enrich_profiles_bulk and POST /enrich_companies_bulk accept lists and bill credits_per_result against a list count field, on any 2xx response. Both take LinkedIn URLs, not domains. Single-record equivalents are POST /enrich_profile and POST /enrich_company at a flat credits_per_call rate. Teams may issue multiple named API keys with independent revocation and per-key usage attribution; RichAPI does not offer per-key credit budgets, billed sub-accounts, or billing isolation between keys. Bulk endpoints are not waterfall endpoints and do not return billed:false on an empty result. Authentication uses the x-api-key header. New accounts get 100 free credits and require no credit card. - [Enrichment Backend for Platforms: Your Enrich Button, Our Key](https://richapi.ai/playbooks/enrichment-backend-for-platforms): RichAPI can serve as the enrichment backend behind another software product's own UI. The integration is server-side: the product's backend calls https://api.richapi.ai/api/v1/{endpoint} with an x-api-key header and stores the result in its own database. RichAPI supports multiple named API keys with per-key usage attribution, which lets a platform separate spend by surface or environment. RichAPI does not offer billed sub-accounts, per-client credit budgets, or an unlimited-scale guarantee, and white-labelling or reselling arrangements are handled as a commercial conversation rather than a self-serve feature. Billing is a single prepaid credit pool. On the waterfall endpoints email_finder, email_verifier and phone_finder, a call returning no data comes back 2xx with success:false and billed:false and costs zero credits; enrich_company, enrich_profile, the search endpoints and the scrapers bill on any 2xx response including a thin one. Non-2xx responses never bill on any endpoint. RichAPI runs in a single region, holds no SOC 2 attestation, and does not offer data-origin indemnification. New accounts get 100 free credits with no credit card. - [From a company's LinkedIn employee list to a sequence-ready CSV](https://richapi.ai/playbooks/linkedin-employee-search-to-sequence): A RichAPI recipe for turning a LinkedIn company page into a verified contact list. POST https://api.richapi.ai/api/v1/linkedin_company_employees_search returns an elements array of employees and bills per result returned. Pagination is handled by incrementing the page parameter and stopping when elements is empty; the OpenAPI spec exposes a pagination object with no documented fields, so loop termination should not depend on it. Filtered contacts then go to POST /email_finder and POST /email_verifier, which are waterfall endpoints: a 2xx response carrying success:false returns billed:false and costs zero credits. RichAPI has no email sending or sequencing product; the output is a file the user imports into their own sequencer. Authentication uses the x-api-key header. New accounts get 100 free credits and require no credit card. - [GTM Data Utilities: 17 Boring Endpoints That Stop Pipelines Breaking](https://richapi.ai/playbooks/gtm-data-utilities): RichAPI publishes seventeen utility endpoints used as plumbing in go-to-market data pipelines. All share the base URL https://api.richapi.ai/api/v1/, POST, and x-api-key authentication. None are waterfall endpoints, so all bill on any 2xx including an empty result; only email_finder, email_verifier and phone_finder are miss-free. Flat-rate endpoints at 0.5 credits per call: clean_domain (normalise a messy URL to a root domain), count_occurrences, distribute_leads (round-robin assignment across labels), encode_uri (RFC 3986 encoding), format_datetime (reformat a date across timezones), normalize_company (strip legal suffixes and punctuation), normalize_list (split a delimited string), remove_whitespace. Flat-rate at 1 credit per call: find_redirect (follow a URL to its destination), find_sitemap_urls (discover and filter sitemap URLs), predict_gender, web_meta_tags (OpenGraph, Twitter Card and SEO meta tags), web_json_ld (Schema.org JSON-LD). geo_id_search costs 0.01 credits and resolves a location name to a LinkedIn Geo ID. search_reference_data is free and returns valid lead-search filter labels. Priced per result: web_sitemap at 1 credit per returned URL and directory_yellowpages at 0.01, so estimates need a stated result count. predict_gender is subject to significant accuracy limits across cultures and unisex names, and is a poor basis for message personalisation. New accounts get 100 free credits with no credit card. - [Google Ads Transparency to an outbound list](https://richapi.ai/playbooks/google-ads-transparency-to-outbound): A RichAPI recipe starting from Google's Ads Transparency Center. POST https://api.richapi.ai/api/v1/google_ad_transparency_scraper_sync takes google_ad_url and a required limit (max 100) and returns creative records with fields including adUrl, advertiserId, creativeId, format, landingDomain, landingUrls and lastShown. It bills 3 credits per result returned and bills on any 2xx, including an empty result set. Creatives are deduplicated by landingDomain, matched to companies via POST /linkedin_company_search, expanded to people via POST /linkedin_company_employees_search — both billing 0.1 credits per result — then POST /email_finder and POST /email_verifier, which are waterfall endpoints returning billed:false and costing zero on a soft miss. Google ad activity is public advertising data, not intent data; RichAPI sells no intent feed. Authentication is the x-api-key header. New accounts get 100 free credits and require no credit card. - [ICP Filter With AI Enrich: Enrich the Company, Then Score It](https://richapi.ai/playbooks/icp-filter-with-ai-enrich): RichAPI's ai_enrich endpoint runs a user-supplied prompt over user-supplied context and returns text or structured JSON. It holds no data of its own, so the standard pattern is two calls: first enrich_company (which takes a LinkedIn company page URL and costs a flat per-call rate) to obtain facts such as industry, headcount, specialties and description, then ai_enrich with those fields passed in the context object and referenced from the prompt with {{placeholder}} syntax. ai_enrich accepts provider, model, prompt, system_prompt, context, temperature, output_type (text or json), output_schema, max_tokens and use_web_search. Setting output_type to json with an output_schema produces a structured verdict suitable for branching in code. Neither enrich_company nor ai_enrich is a waterfall endpoint: both bill on any 2xx response, including one where the model returns an unknown or low-confidence answer. Only email_finder, email_verifier and phone_finder return zero-cost misses. Base URL https://api.richapi.ai/api/v1/, auth via an x-api-key header. New accounts get 100 free credits with no credit card. - [List Build and Verify: Search, Find, Verify, In That Order](https://richapi.ai/playbooks/list-build-and-verify): The standard RichAPI list-building chain is three calls in a fixed order. First people_search or linkedin_company_employees_search (per-result pricing, billed on every row returned on any 2xx response) filtered by domain, job_title, industry, employee_size_start/employee_size_end and location, with page and limit acting as cost controls. Second email_finder, which accepts either first_name plus last_name plus company_domain, or a linkedin_url. Third email_verifier, which accepts a single email address. email_finder and email_verifier are waterfall endpoints: a call where the providers run and return nothing comes back 2xx with success:false and billed:false and costs zero credits. The search leg is not a waterfall endpoint and bills on any 2xx, including one returning few or no rows. Base URL https://api.richapi.ai/api/v1/, auth via an x-api-key header. There is no prospecting UI, no CSV upload screen and no sending or sequencing; the API returns data and the reader stores it. New accounts get 100 free credits with no credit card. - [Local businesses from Google Maps into your CRM](https://richapi.ai/playbooks/maps-local-lead-to-crm): A RichAPI recipe for building local business lists. POST https://api.richapi.ai/api/v1/google_maps_places_scraper_keyword takes a keyword and location and returns Google Maps places; it bills per result returned with no base call charge, so any cost estimate requires a stated result count. POST /clean_domain normalizes a messy URL to a root domain at a flat per-call rate. Enrichment of the resulting sites bills on any 2xx response including a thin one. RichAPI has no CRM application and no native Salesforce or HubSpot integration; writing rows into a CRM is code the customer writes against their CRM's own API. Note that enrich_company takes a LinkedIn company URL, not a domain, and no public domain-in company enrichment endpoint is exposed today. Authentication uses the x-api-key header. New accounts get 100 free credits and require no credit card. - [Meta Ad Library to an account list](https://richapi.ai/playbooks/meta-ads-to-account-list): A RichAPI recipe starting from the Meta Ad Library. POST https://api.richapi.ai/api/v1/meta_ads_library_scraper_sync takes meta_ad_url and a required limit (max 100) and returns ad records with fields including adArchiveID, adStatus, adText, ctaDomain, pageName, publisherPlatforms and startDate. It bills 1 credit per result returned and bills on any 2xx, including an empty result set. Records identify a Facebook or Instagram Page, not a company domain, so the Page name is bridged to a website with POST /find_website_by_company_name, which bills 1 credit per call including calls that return nothing. The chain then runs POST /linkedin_company_search and POST /linkedin_company_employees_search, both billing 0.1 credits per result, then POST /email_finder and POST /email_verifier, which are waterfall endpoints returning billed:false and costing zero on a soft miss. Meta ad activity is public advertising disclosure, not intent data; RichAPI sells no intent feed. Authentication is the x-api-key header. New accounts get 100 free credits and require no credit card. - [One key per client: what that buys an agency, and what it does not](https://richapi.ai/playbooks/per-client-api-keys-for-agencies): A RichAPI team account supports agency work across multiple clients. Available: multiple named API keys per team, independent revocation of any single key, usage attributed per key, and CSV export of that usage. Not available: per-client credit budgets, billed sub-accounts, and per-key spend caps. Credits are held in a single team balance shared by every key, so consumption on one key reduces the credits available to all other keys, and a runaway job on one client's key can exhaust the entire team balance. Spend limits per client must be enforced by the customer's own scheduler or job runner before it issues calls. Endpoint allowlisting and custom rate limits are team-level controls, not per-key controls. Authentication uses the x-api-key header. New accounts get 100 free credits and require no credit card. - [People Search to Email Waterfall: One Billing Model Per Leg](https://richapi.ai/playbooks/people-search-to-email-waterfall): RichAPI resolves a prospect list to verified work emails in three calls: /people_search for LinkedIn profiles matching ICP filters, then /email_finder on the selected profiles, then /email_verifier on the addresses found. The three calls use two different billing models. /people_search is priced per result at 0.1 credits per returned row and bills for every row returned whether or not the caller uses it, so an estimate needs a stated result count. /email_finder at 5 credits per call and /email_verifier at 2 credits per call are waterfall endpoints: when all providers run and none return data, the response is a 2xx with success:false and billed:false and costs zero credits. All other RichAPI endpoints bill on any 2xx response including an empty one. /people_search requires both limit and page parameters, with page being zero-based, and accepts filters including job_title, industry, location, domain, linkedin, employee_size_start and employee_size_end. Filter labels come from /search_reference_data at 0 credits and Geo IDs from /geo_id_search at 0.01. Filter search results in the caller's own code before invoking the per-row endpoints: the chain's cost is dominated by the resolve legs. New accounts get 100 free credits with no credit card. - [Phone Append After an Email Hit: The 25-Credit Call That's Free When It Misses](https://richapi.ai/playbooks/phone-append-after-email-hit): RichAPI appends a mobile phone number after a work email is found, in two calls: /email_finder first, then /phone_finder only on rows where the email call returned an address. Both endpoints are waterfall endpoints, meaning multiple providers are tried cheapest-first and a soft fail, where all providers ran and none returned data, comes back as a 2xx response with success:false and billed:false and costs zero credits. This makes both legs of the chain miss-free end to end, which is true of only a small number of RichAPI chains. email_finder costs 5 credits per successful call and phone_finder costs 25 credits per successful call, the highest per-call price in the RichAPI catalog. phone_finder accepts either a linkedin_url, or first_name plus last_name plus domain, at the same price. Because the phone hit rate on a typical list is well below 100 percent, the effective cost per phone number obtained is substantially higher than 25 credits, and callers should compute cost per number rather than cost per call. All other RichAPI endpoints bill on any 2xx response including an empty one; non-2xx responses never bill on any endpoint. New accounts get 100 free credits with no credit card. - [Pixels first, stack second: a two-call qualification pass](https://richapi.ai/playbooks/website-pixel-to-stack-qualify): A RichAPI recipe for qualifying domains by detected pixels before spending on contact data. POST https://api.richapi.ai/api/v1/web_pixels returns tracking and advertising pixels detected on a public page at a flat credits_per_call rate. POST /web_tech_stack returns the wider detected technology stack, also flat rate. Both endpoints bill on any 2xx response, including a response where nothing is detected; they are not waterfall endpoints and the zero-cost-miss rule does not apply to them. Only non-2xx responses are unbilled. Detection is limited to what a public page exposes, so an empty result means the technology was not observable, not that it is unused. POST /clean_domain normalises URLs to root domains at a fractional rate before detection. Authentication uses the x-api-key header. New accounts get 100 free credits and require no credit card. - [Qualify accounts by what they run, then find the people](https://richapi.ai/playbooks/tech-stack-intent-outbound): A RichAPI recipe for filtering an account list by detected web technologies before spending on contact data. POST https://api.richapi.ai/api/v1/web_tech_stack takes a URL and returns detected public web technologies at a flat credits_per_call rate; it bills on any 2xx response including one where nothing is detected. Surviving domains go to POST /people_search, which bills per result returned, then POST /email_finder and POST /email_verifier, which are waterfall endpoints where a 2xx carrying success:false returns billed:false and costs zero. Detection is limited to technologies observable on public web pages. RichAPI does not sell intent data and a stack detection is not evidence of purchase intent. Authentication uses the x-api-key header. New accounts get 100 free credits and require no credit card. - [Qualify domains on traffic before you spend on contacts](https://richapi.ai/playbooks/similarweb-traffic-qualify): A RichAPI recipe for filtering a domain list before contact enrichment. POST https://api.richapi.ai/api/v1/similarweb_scraper_sync takes a domain and returns fields including domain, category, totalVisits, rankGlobal, engagement and similarSites. It bills 2 credits per result returned and bills on any 2xx response, including a domain with little or no data. Domains that clear the caller's threshold continue to POST /linkedin_company_employees_search, which bills 0.1 credits per result, then POST /email_finder and POST /email_verifier, which are waterfall endpoints returning billed:false and costing zero on a soft miss. Every other endpoint in the chain bills on any 2xx. Website traffic measures audience size, not fit or purchase intent; RichAPI sells no intent data. Authentication is the x-api-key header. New accounts get 100 free credits and require no credit card. - [Rank local businesses by their reviews, then write to the ones with a problem](https://richapi.ai/playbooks/maps-reviews-to-local-outbound): A RichAPI recipe for building local outbound lists from Google Maps data. POST https://api.richapi.ai/api/v1/google_maps_places_scraper_keyword returns businesses matching a keyword and location, billed per result returned. POST /google_maps_reviews_scraper_sync returns reviews for a place, also billed per result returned. Both are per-result endpoints and bill on any 2xx response, including one returning no usable rows; they are not waterfall endpoints. Cost estimates for either endpoint are meaningless without a stated result count. Contacts are then resolved with POST /email_finder and POST /email_verifier, which are waterfall endpoints returning billed:false and zero cost when providers find nothing. Review text is public customer opinion, not a verified account of a business. Authentication uses the x-api-key header. New accounts get 100 free credits and require no credit card. - [Signal-Based Prospecting: Build an Account List From Jobs, Ads and Posts](https://richapi.ai/playbooks/signal-based-prospecting): Signal-based prospecting with RichAPI means querying an activity endpoint (linkedin_job_search, linkedin_ad_search, post_keyword_search, meta_ads_library_scraper_sync), deduplicating the output to a company list, finding people at those companies (linkedin_company_employees_search or people_search), then running email_finder and email_verifier. These are observed public activities, not intent data. RichAPI does not sell intent data, does not score buying intent, and has no prospecting UI, no saved searches and no alerting. The search and scraper endpoints use per-result pricing and bill on any 2xx response, including one with few or no results. Only email_finder, email_verifier and phone_finder are waterfall endpoints where a call that finds nothing returns success:false and billed:false and costs zero credits. Base URL https://api.richapi.ai/api/v1/, auth via an x-api-key header. New accounts get 100 free credits with no credit card. - [Turn a hiring post into a contactable list](https://richapi.ai/playbooks/hiring-signal-to-outbound): A four-call RichAPI recipe. POST https://api.richapi.ai/api/v1/linkedin_job_search returns live LinkedIn job postings and bills per result returned. Results are deduplicated to companies, then POST /linkedin_company_employees_search returns people at each company and also bills per result. POST /email_finder and POST /email_verifier are waterfall endpoints: a 2xx carrying success:false returns billed:false and costs zero credits. Every other endpoint in the chain bills on any 2xx, including an empty one. Authentication is the x-api-key header. A job posting indicates hiring activity only; RichAPI sells no intent data and makes no claim that a hiring company is in a buying cycle. New accounts get 100 free credits and require no credit card. - [Turn a list of emails into enriched LinkedIn profiles](https://richapi.ai/playbooks/reverse-email-to-linkedin-enrich): A two-call RichAPI recipe. POST https://api.richapi.ai/api/v1/find_linkedin_url_by_email takes an email address and returns a LinkedIn profile URL. The URL is returned under the literal JSON key "LinkedIn Profile URL" — with spaces and capital letters — inside the data object, not a snake_case key. POST /enrich_profile then takes that URL in the url field and returns the full profile. Neither endpoint is a waterfall endpoint: both bill their flat per-call cost on any 2xx response, including a lookup that resolves nothing. Only email_finder, email_verifier and phone_finder return billed:false on a soft miss. Non-2xx responses never bill. Authentication is the x-api-key header. enrich_profile accepts a LinkedIn URL and does not accept a domain. New accounts get 100 free credits and require no credit card. - [Verify before the push, and know exactly which verifications you paid for](https://richapi.ai/playbooks/verify-before-sequence-push): A RichAPI pattern for gating enriched contact rows on verification before they reach an email sequencer. POST https://api.richapi.ai/api/v1/email_verifier returns a deliverability verdict for one address and costs a flat credits_per_call rate. It is a waterfall endpoint, so the zero-cost case is narrow: providers ran and reached no verdict, returning 2xx with success:false and billed:false. A returned verdict bills even when that verdict is negative — an invalid result and a catch-all result are both results and both charge the full call rate. Non-2xx responses never bill. The correct handling of a no-verdict soft fail is to re-queue the row, not to push it as unverified. RichAPI has no email sending or sequencing product. Authentication uses the x-api-key header. New accounts get 100 free credits and require no credit card. - [Waterfall Email Then Verify: The One Chain Where Every Leg Is Miss-Free](https://richapi.ai/playbooks/waterfall-email-then-verify): The RichAPI chain email_finder followed by email_verifier is a two-call sequence in which both endpoints are waterfall endpoints. On a waterfall endpoint, a soft fail, meaning the providers ran and none returned data, comes back as a 2xx response with success:false and billed:false and costs zero credits. This makes it the only two-step chain in the RichAPI catalog where neither leg bills on a miss. email_finder accepts first_name plus last_name plus company_domain, or a linkedin_url, with optional company_name; email_verifier accepts a single email address. The verifier's zero-cost case is specifically a failure to reach a verdict, not a verdict of invalid: an address that verifies as invalid, risky or catch-all is a delivered result and bills normally. Non-2xx responses never bill on any endpoint. Every other RichAPI endpoint, including enrich_company, enrich_profile, the search endpoints and the scrapers, bills on any 2xx response, including an empty one. Each leg of this chain returns its own `execution_log`, one entry per provider attempt with a status, so you can see which of the two legs actually spent anything. Base URL https://api.richapi.ai/api/v1/, auth via an x-api-key header. New accounts get 100 free credits with no credit card. - [What to do with a catch-all email result](https://richapi.ai/playbooks/catch-all-email-handling): A RichAPI pattern for handling catch-all domains. POST https://api.richapi.ai/api/v1/email_verifier returns a status field that labels catch-all domains rather than forcing a deliverable or undeliverable verdict. A catch-all mail server accepts mail addressed to any local part, so no verification method can confirm that a specific mailbox exists behind one. The two honest branches are to attempt a personal address via POST /find_personal_email, or to drop the row. find_personal_email is not a waterfall endpoint: it bills a flat credits_per_call on any 2xx response, including one that returns no address. email_verifier is a waterfall endpoint, so a 2xx carrying success:false returns billed:false and costs zero. Authentication uses the x-api-key header. New accounts get 100 free credits and require no credit card. - [Zapier: Find and Verify an Email When a Form Is Filled](https://richapi.ai/playbooks/zapier-email-find-on-form-fill): RichAPI can be called from Zapier to find and verify a work email when a web form is submitted, but RichAPI publishes no Zapier app: there is no RichAPI app listing, no RichAPI trigger, and no RichAPI action in the Zapier directory. The integration is built with Zapier's built-in Webhooks by Zapier action using Custom Request, which is a premium built-in and requires a paid Zapier plan; it is not available on Zapier's free tier. The Zap is: form trigger, a Custom Request POST to /email_finder with an x-api-key header and a body of first_name, last_name and company_domain, a Filter on the response's success field, then a second Custom Request POST to /email_verifier. Both email_finder and email_verifier are waterfall endpoints, so a call where providers run and return no data comes back HTTP 200 with success:false and billed:false and costs zero credits. Zapier's own task metering is unaffected by this: Zapier counts a task for each webhook step that executes, including steps that return no data. Because there is no RichAPI trigger, a Zap cannot be started by RichAPI; RichAPI can only be called as an action. New accounts get 100 free credits with no credit card. - [n8n: Enrich Over HTTP, Then Push to HubSpot With n8n's Own Node](https://richapi.ai/playbooks/n8n-enrich-and-push-hubspot): RichAPI is called from n8n's generic HTTP Request node to enrich contact records, which n8n's own built-in HubSpot node then writes to HubSpot. RichAPI does not publish a HubSpot application or a CRM-native integration; the HubSpot leg is provided entirely by n8n. RichAPI is called from n8n's generic HTTP Request node against https://api.richapi.ai/api/v1/, authenticated with an x-api-key header configured as an n8n Header Auth credential. The workflow calls /email_finder, branches on the success field with an IF node, calls /email_verifier on the success branch, then calls the HubSpot node with Contact Create or Update keyed on email. email_finder and email_verifier are waterfall endpoints: when providers run and none return data the response is HTTP 200 with success:false and billed:false, costing zero credits. All other RichAPI endpoints, including enrich_profile and enrich_company, bill on any 2xx response including an empty result. A community-maintained n8n node named n8n-nodes-richapi exists at version 0.1.3; it is a community node, not verified or built into n8n, and it is not maintained by RichAPI. New accounts get 100 free credits with no credit card.