API access requires an API key. Every user gets their own key by default, on every plan including Free - see Authentication for how keys are owned and capped.
Authentication
Find your API key in API & connectors (left sidebar). Click Copy API key in the top right, or open the Manage API Keys tab to view and manage your key. Pass the key in the request header to authenticate. Every key is tied to the user who generated it - Users get one key each; Admins and Managers can generate as many as they need. A key authenticates as its owner and draws from the account’s shared credit pool. How it’s capped depends on who generated it: a key a User generates is capped only by that user’s own personal credit limit (uncapped if they have none), while each key an Admin or Manager generates can also carry its own credit limit, set independently for that key and independently of their personal one.Every user gets their own API key by default, on every plan including Free - API access is no longer limited to Admins and Managers.
Admins and Managers can turn a user’s API access off from Account Settings → Permissions. This suspends - rather than deletes - any key that user owns; turning access back on reactivates it automatically. If a user leaves the account, their key transfers to an Admin and keeps working. Admins and Managers can see every key in the account, and who owns each one, from the Manage API Keys tab.
Rate limits
Limits vary by plan:
Free and Starter plans do not have an hourly limit - only per-minute and per-day caps apply.
Rate limits are enforced per API key. Exceeding a limit will result in a
429 Too Many Requests response. To avoid a 429 error, implement retry logic with exponential backoff when hitting rate limits.
Legacy users will keep the same limits they always had; 300/minute, 600/hour, 6000/day.
Available endpoints
The Endpoints tab in API & connectors gives you a categorized view of every Lusha API: Search, Prospecting, Enrich, Signals, Lookalike, Search & Enrich, Website Visits, Buying Group, Tables, and Conversations. Each endpoint has a one-click Try button that opens the API playground with that action preloaded, so you can run live requests without any setup. API & connectors also includes a Connectors tab, for connecting Lusha to tools like Zapier and n8n, and a Webhooks tab, for configuring webhook notifications for account events.Person API
Retrieves contact data using identifiers like email, LinkedIn URL, name, company name, or domain. Returns location, email, phone, LinkedIn URL, and more. The Bulk Person API processes up to 100 contacts per request.Company API
Retrieves firmographic data for a company based on its domain or name - industry, employee count, location, revenue, and more. The Bulk Company API handles multiple domains or names in a single request.Prospecting API
Queries Lusha’s database using filters like job title, seniority, location, and industry to generate contact or company tables aligned with your ICP. The process has three stages: select filters, run the search, then enrich the results. See the Prospecting API documentation for all available filters.Lookalike API
Uses machine learning to find contacts and companies that mirror your best-performing customers. Contact Lookalikes match by role, seniority, and career trajectory; Company Lookalikes match by industry, headcount, revenue, and firmographic profile. See the Lookalike API documentation.Signals API
Enriches contacts and companies with timely sales intelligence like job moves, promotions, and company growth signals. Useful for triggering outreach at moments of change. See the Signals API documentation.Signal Score
Signal Score is a 0-100 ranking that tells you who to work first. It combines buying signals - hiring, funding, tech installs, job changes, website visits, intent - into a single score per contact or company, so a raw list becomes a prioritized one. Signal Score used to be available only inside the AI Recommendations table. It now works on any list - bring your own contacts or companies (a CRM export, a saved search, a custom table) and get a Signal Score back on every row.Signal Score is available via the API, MCP, and directly in the Platform - add it as a column on any Saved Table (companies or contacts) via the Enrich flow.
ICP Fit Score
ICP Fit Score measures how closely a contact or company matches the Account Criteria and Persona Criteria in one of your Target Profiles. Previously available only in Recommendations, it now works on any list - bring your own contacts or companies (a CRM export, a CSV, or prospecting results) and score them against 1-3 of your Target Profiles, or against all of your ICPs. Each row gets a fit score from 0-1 plus the Target Profile it matches best. For full parameter reference, see the ICP Fit Score API documentation.Cost is 1 credit per contact or company, regardless of how many profiles it’s scored against - a score of 0 is still a real answer and is charged. Up to 100 contacts or companies per call.
Credit usage API
Returns current credit consumption by type. Rate limit: 5 requests per minute.Data Waterfall (Waterfall Reveal)
Data Waterfall enhances contact enrichment by falling through to your enabled third-party providers when Lusha’s own data has no match for a requested email or phone. This adds extra reach on hard-to-match contacts, on top of standard enrichment. It is available on all paid plans, for both API and MCP. See Data Waterfall for full details on setup, how it works, and pricing.MCP
API & connectors includes a dedicated MCP tab. Grab your personal MCP URL there and follow the ready-made setup guides for Claude, ChatGPT, n8n, and Cursor to connect Lusha to any AI tool. See the Lusha MCP Server article for the full, current client list and setup instructions.MCP connects over OAuth, not an API key, so it isn’t affected by a user’s API access permission. Admins can control MCP separately via a dedicated MCP access permission in Account Settings → Permissions - on by default; turn it off to restrict MCP connections to Admins and Managers only.
Conversation Intelligence
Search your account’s recorded Lusha AI Notetaker calls and retrieve their transcripts programmatically, through two endpoints: Conversations Search and Transcript. Search returns each call’s summary, coaching scores, chapters, and participants; fetch the transcript separately.Only completed conversations are returned, and there’s no built-in way to roll up action items, competitor mentions, or risks across multiple calls - pull the calls you want with Search and aggregate them yourself.
Credit consumption
Credits are charged based on two factors: the data points revealed and the number of API results returned. Data points (per reveal):
Request type:
Example: revealing an email and phone for one contact costs 7 credits total (5 for phone + 1 for email + 1 for the request).
Signals credits:
- Growth Surge in Hiring: 1 credit per company
- Growth in Headcount: 1 credit per company
- Job Change: 1 credit per contact
Managing credit consumption per key
How you cap a key’s spending depends on who generated it. A key an Admin or Manager generated can carry its own monthly credit limit, on top of their personal limit. Admins and Managers can generate as many keys as they need, and each one gets its own limit, set independently of the others.1
Open Manage API Keys
In API & connectors, click the Manage API Keys tab.
2
Open the key's credit limit
Click the edit (pencil) icon or Set limit in the Credit usage column.
3
Set the monthly credit limit
In the Edit Key panel, toggle on the limit and enter the maximum credits allowed per month.
4
Confirm
Click Continue.
1
Open Team Management
Go to Team management from the account menu.
2
Select the user
Select the user whose key you want to cap.
3
Set their credit limit
Set their credit limit the same way you would for any team member - see How to limit credits per user or group.
Only Admins and Managers can set or edit a credit limit - on a key they generated themselves, or on a user’s account. If a user has no personal credit limit, their key is uncapped and can draw on the full account credit balance.
Default credit limit for new user keys
Instead of capping users one at a time, Admins can set a default credit limit that automatically applies to every new API key a user creates:1
Open Account settings
Go to Account Settings, next to API access.
2
Set the default limit
Enter the default monthly credit cap to apply to every API key a user creates.
Troubleshooting: my API calls are rejected with a credit limit error
If your API calls fail with a credit limit error, check which kind of key is failing:- A key an Admin or Manager generated (they can generate more than one) may have its own monthly limit, separate from their personal credit limit - check it under API & connectors → Manage API Keys.
- A key a User generated for themselves has no limit of its own - the block is coming from that user’s own credit limit, set under Team management (account menu).
1
Find the key's owner
Find out who owns the key that’s failing, and whether it’s a key an Admin/Manager generated or a User’s key - Admins and Managers can see every key and its owner under API & connectors → Manage API Keys.
2
Edit an Admin/Manager key's limit
If it’s an Admin/Manager-generated key with its own limit, edit or remove that limit from the same tab.
3
Check a User's credit limit
Otherwise, go to Team management (account menu) and check that user’s credit limit - raise it, remove it, or free up some of their allowance.
Only Admins and Managers can view and edit credit limits, whether per-key or per-user. If you don’t have that access, ask your Lusha Admin or Manager to check it for you.