JSON REST API for contacts, companies, campaigns, enrichment, and pipeline. Bearer token auth, rate limited, CORS-ready.
Everything you need to make your first API call.
https://www.kolvera.io/api/v2/Authorization: Bearer kv_your_tokenX-RateLimit-Remaining, X-RateLimit-ResetRetry-After header valueRun this in your terminal to verify your token.
# Set your token from Settings > API Tokens
TOKEN=your_api_token_here
curl https://www.kolvera.io/api/v2/contacts?q=test \
-H "Authorization: Bearer $TOKEN"
All 53 endpoints grouped by resource. All responses are JSON.
Search, create, update, delete contacts, and trigger enrichment.
| Method | Endpoint | Description |
|---|---|---|
| GET | /contacts |
List contacts. Supports q, page, per_page. |
| POST | /contacts |
Create a new contact. |
| GET | /contacts/{id} |
Get a single contact by ID. |
| PATCH | /contacts/{id} |
Update a contact. Partial updates supported. |
| DELETE | /contacts/{id} |
Delete a contact. |
| POST | /contacts/{id}/find-email |
Trigger email enrichment for this contact. 2 credits on success. |
| POST | /contacts/{id}/find-phone |
Trigger phone enrichment. Credit cost varies by result type. |
Manage company records, trigger contact discovery and deep research.
| Method | Endpoint | Description |
|---|---|---|
| GET | /companies |
List companies. Supports q, page, per_page. |
| GET | /companies/{id} |
Get a single company by ID. |
| GET | /companies/{id}/contacts |
List the contacts already known at this company. |
| PATCH | /companies/{id} |
Update company details. Partial updates supported. |
| POST | /companies/{id}/find-contacts |
Find contacts at this company. 2 credits per new contact found. |
| POST | /companies/{id}/research |
Trigger AI research on this company. 2 credits. |
Query outreach campaigns, control their run state, and enrol contacts.
| Method | Endpoint | Description |
|---|---|---|
| GET | /campaigns |
List all campaigns. |
| GET | /campaigns/{id} |
Get campaign details, including its steps. |
| GET | /campaigns/{id}/stats |
Sends, opens, clicks and replies for this campaign. |
| POST | /campaigns/{id}/enrol |
Enrol one or more contacts in this campaign. |
| POST | /campaigns/{id}/activate |
Activate a draft campaign. |
| POST | /campaigns/{id}/pause |
Pause a running campaign. Scheduled sends stop immediately. |
| POST | /campaigns/{id}/resume |
Resume a paused campaign from where it stopped. |
Manage Desks and their linked company lists.
| Method | Endpoint | Description |
|---|---|---|
| GET | /icp |
List all Desks. |
| POST | /icp |
Create a new Desk. |
| GET | /icp/{id} |
Get Desk details and criteria. Pass include_companies=true to embed its linked companies (200 per read — page with companies_limit / companies_offset; companies_total is the true count; companies_fields is a comma-separated lean projection). |
| PATCH | /icp/{id} |
Update Desk criteria. |
| GET | /icp/{id}/prospects |
List prospects linked to this Desk. Supports page, per_page. |
| POST | /icp/generate |
AI-generate a Desk from a brief. 3 credits. |
| POST | /icp/{id}/build-hotlist |
Build a hot list from this Desk's mapped prospects. |
Manage curated prospect lists and their members.
| Method | Endpoint | Description |
|---|---|---|
| GET | /hot-lists |
List all hot lists. |
| POST | /hot-lists |
Create a new hot list. |
| GET | /hot-lists/{id} |
Get hot list details and member count. |
| POST | /hot-lists/{id}/members |
Add one or more contacts to this hot list. |
| PATCH | /hot-lists/{id}/members/{member_id} |
Update a member's tier or notes. |
| DELETE | /hot-lists/{id}/members/{member_id} |
Remove a contact from this hot list. |
Query scraped jobs, saved scrape configurations, and scrape quality.
| Method | Endpoint | Description |
|---|---|---|
| GET | /pipeline |
List pipeline jobs with status and results. Supports q, page, per_page, and fields — a comma-separated lean projection (?fields=title,company_name); id is always returned, and names matching no row come back in unknown_fields. |
| GET | /pipeline/{id} |
Get a single pipeline job by ID. |
| GET | /scrape-configs |
List saved scrape configurations. |
| GET | /scrape-configs/{id} |
Get a single scrape configuration by ID. |
| POST | /scrape-configs/{id}/excludes |
Add exclusion terms to a scrape configuration. |
| GET | /scrape-quality |
Relevance and duplicate rates for recent scrapes. |
Trigger deep research jobs and retrieve generated reports.
| Method | Endpoint | Description |
|---|---|---|
| POST | /research |
Trigger a new deep research job. 6 credits. |
| GET | /research |
List all deep research reports. |
| GET | /research/{id} |
Get the full content of a research report. |
Query your workspace credit balance.
| Method | Endpoint | Description |
|---|---|---|
| GET | /credits |
Current plan credit balance and add-on balance. |
Log meetings, move them through their status, and pull synced call notes.
| Method | Endpoint | Description |
|---|---|---|
| GET | /meetings |
List meetings. Supports page, per_page. |
| POST | /meetings |
Log a new meeting against a contact or company. |
| GET | /meetings/{id} |
Get a single meeting by ID. |
| PATCH | /meetings/{id}/status |
Update a meeting's status. |
| POST | /fathom/sync |
Pull the latest call recordings and notes from a connected Fathom account. |
| GET | /fathom/notes |
List synced call notes. |
Manage event subscriptions. Payload formats are documented on the webhooks page.
| Method | Endpoint | Description |
|---|---|---|
| GET | /webhooks |
List your webhook subscriptions. |
| POST | /webhooks |
Create a subscription for one or more event types. |
| PATCH | /webhooks/{id} |
Update a subscription's URL, events, or active state. |
| DELETE | /webhooks/{id} |
Delete a subscription. |
For building apps that authenticate Kolvera users on their behalf.
https://www.kolvera.io/oauth/authorizehttps://www.kolvera.io/oauth/tokencode_challenge and code_challenge_method=S256 for PKCEFree trial — 50 credits, no card required. Full API access on all paid plans.
Start free trial