API reference
Every endpoint, what it does and what it costs. All paths are on api.outbound.dev.
Authentication
Send your key as a Bearer token in the Authorization header of every request: Authorization: Bearer ob_live_…. The API reads only this header. It ignores cookies, and a key never goes in a URL.
A key acts for its organization with its own scopes: full access, read-only, or a chosen set of products (search, enrichment, lists, campaigns and connections). A call outside the key's scopes gets 403 with insufficient_scope. A key can also expire after 30 or 90 days and carry a daily spending cap.
Charges
A paid call sets aside its highest possible price from your balance before any work starts, then charges only for what was found and releases the rest. Misses cost nothing, and a call is never charged twice.
If the balance cannot cover a call, it returns 402 with insufficient_balance and the amount to add, and no work starts. A key's daily cap works the same way, with key_daily_cap_reached. See errors and limits.
Search
Search people
POST /v1/people/search
Find people with filters, a saved search or a plain-language query. Returns a page of matching profiles.
Price: $0.001 per record returned. Scope: search.
{ "query": "operations leads at freight companies in Portugal", "limit": 25 }Save a search to a list
POST /v1/people/search/save-to-list
Runs the search and saves the people it finds to a new list, up to 10,000 per call. Returns 202 Accepted with a job to poll.
Price: $0.001 per record saved. Scope: search.
{
"query": "operations leads at freight companies in Portugal",
"limit": 20,
"listName": "Portugal freight ops"
}Enrichment
Enrich a person
POST /v1/people/enrich
A person's profile from their LinkedIn URL.
Price: charged only when a profile is found. Scope: enrichment.
{ "linkedinUrl": "https://www.linkedin.com/in/ana-ruiz" }Find an email
POST /v1/emails/find
A person's work email from their name and their company's domain, through a waterfall across 20+ providers.
Price: $0.01 when an email is found. Scope: enrichment.
{ "name": "Ana Ruiz", "companyDomain": "haldenfreight.com" }{
"status": "found",
"email": {
"value": "ana@haldenfreight.com",
"status": "valid",
"type": "work"
},
"usdCharged": 0.01,
"balanceUsd": 38.19
}Find a phone
POST /v1/phones/find
A person's phone number from their name and their company's domain.
Price: $0.10 when a phone is found. Scope: enrichment.
{ "name": "Ana Ruiz", "companyDomain": "haldenfreight.com" }Verify an email
POST /v1/emails/verify
Valid, risky or invalid, with the reason.
Price: $0.01 per verdict. Scope: enrichment.
{ "email": "ana@haldenfreight.com" }Lists
Create a list
POST /v1/lists
Price: free. Scope: lists.
{ "name": "Portugal freight ops" }List your lists
GET /v1/lists
Price: free. Scope: lists.
Enrich a list
POST /v1/lists/{id}/enrich
Finds emails and phones for everyone on a list, through a waterfall across 20+ providers. Returns 202 Accepted with a job to poll.
Price: $0.01 per email and $0.10 per phone found. Misses are free. Scope: lists.
{ "fields": ["email", "phone"] }Connected accounts
Connect an inbox
POST /v1/accounts/email
Any mailbox with SMTP and IMAP. Warmup included.
Price: $1 per 30 days while it is connected. Scope: connections.
Connect LinkedIn
POST /v1/accounts/linkedin/connect-links
A hosted sign-in link the account owner opens.
Price: $20 per 30 days, from when the account connects. Scope: connections.
Campaigns
Run a campaign
POST /v1/campaigns
Email and LinkedIn steps, sent from your accounts. A new campaign is a draft: nothing is sent until you approve it.
Price: free to send. Scope: campaigns.
Approve a campaign
POST /v1/campaigns/{id}/approve
Starts sending a drafted campaign.
Price: free. Scope: campaigns.
Read the replies
GET /v1/campaigns/{id}/leads
Who replied, what they said, and whether they are interested.
Price: free. Scope: campaigns.
Balance
Check the balance
GET /v1/wallet
Price: free, with any key.
{ "balanceUsd": 10.00, "currency": "usd" }OpenAPI spec
Every request and response schema is in the OpenAPI spec, for generating a client or handing to an agent.