Skip to Content
API & MCPAll endpoints

REST API

All endpoints

Every REST endpoint of api.breaknorm.co/v1 — the same operations as the MCP tools, generated from the server.

Base URL https://api.breaknorm.co. Authenticate with Authorization: Bearer <API key or OAuth token>. Request bodies are JSON; GET parameters go in the query string; :name segments are path parameters. Unknown fields are rejected — a typo is an error, not silently ignored. Errors share one format.

Discover

EndpointWhat it does
List filtersGET /v1/filtersEvery filterable facet with its type and coverage %, plus the search axes.
List filter valuesPOST /v1/filters/valuesExisting values of a keyword facet with counts (and its coverage), optionally under filters.

Companies

EndpointWhat it does
Search companiesPOST /v1/companies/searchRecords: one per company shown (each hit, every time it is shown); count_companies and list_filters are free.
Run several searches and merge themPOST /v1/companies/search-manyRecords: one per company shown (each hit, every time it is shown); count_companies and list_filters are free.
Count companiesPOST /v1/companies/countHow many companies match a set of filters and literal guards — and, with group_by (≤3 keyword facets), how they split.
Find similar companies (lookalikes)POST /v1/companies/similarRecords: one per company shown (each hit, every time it is shown); count_companies and list_filters are free.
Get companies by domainPOST /v1/companies/getRecords: one per company returned.
Segment companiesPOST /v1/companies/segmentSplit a set of companies into sub-segments you can write ONE message to.

Jobs & hiring signals

EndpointWhat it does
Search job postingsPOST /v1/jobs/searchRecords: one per posting shown; count_jobs is free.
Read job postings (full text)POST /v1/jobs/postingsRecords: one per posting returned.
Count job postingsPOST /v1/jobs/countFree.
Company activity (jobs intelligence)POST /v1/companies/activityRecords: one per company found.

Crawled pages

EndpointWhat it does
List a company’s crawled pagesGET /v1/companies/pagesThe pages we crawled from a company’s website: page_id, url, kind, when it was fetched and its length.
Read a crawled pageGET /v1/pagesThe markdown of one crawled page of a company’s website — by page_id, or by domain + kind for the newest page of that kind.
Check known companies’ pages for wordsPOST /v1/pages/checkFor up to 50 companies you already have, which of up to 10 terms appear on their crawled pages.

People

EndpointWhat it does
Search people (contacts at companies)POST /v1/people/searchFind people — decision makers, a team, a persona — with their contacts, at the companies you choose.
Count peoplePOST /v1/people/countHow many people match — and at how many companies — before you pull them.
Get people by idPOST /v1/people/getFull records for up to 100 people by person_id.
Get (and re-check) a person’s contactsPOST /v1/people/contactsThe contacts of up to 25 people, with every address checked again when its verdict is older than max_age_days or never checked.
List people filter valuesPOST /v1/people/valuesThe values of a person field with how many people carry each.
Find a company’s decision makers livePOST /v1/people/liveFor companies where search_people / get_contacts return nobody.
Get live people resultsPOST /v1/people/live/resultsCurrent result of find_people_live lookups (lookup_ids from its answer).
Find decision makers live for many companiesPOST /v1/people/live/jobsfind_people_live for a list of companies (items=[{domain, company_name?, ref?}], up to your plan’s e-mail batch size).

Lists & exclusions

EndpointWhat it does
Create a company listPOST /v1/listsCreate a list of companies (by domain).
Add companies to a listPOST /v1/lists/:list_id/itemsAdd companies to one of your lists.
Remove companies from a listDELETE /v1/lists/:list_id/itemsRemove domains from one of your lists.
Get your listsGET /v1/listsYour organization’s company lists (id, name, kind, client, auto_exclude, size, how many the index knows).
Delete a listDELETE /v1/lists/:list_idDelete one of your lists (REST and dashboard only).

Exports & jobs

EndpointWhat it does
Export a full company listPOST /v1/exportsExport EVERY company matching a search or a lookalike — not just the top 100.
Get a job’s status and resultGET /v1/jobsStatus and result of an export, e-mail, list-import or live-people job (job_id), with a fresh 24 h download link once done.
Cancel a jobDELETE /v1/jobs/:job_idCancel a queued or running job.

E-mail

EndpointWhat it does
Find a person’s e-mail addressPOST /v1/email/findFind the work e-mail address of a person from their name and company domain, verified against the mail server.
Verify an e-mail addressPOST /v1/email/verifyCheck whether an e-mail address is deliverable, without sending mail.
Get a pending e-mail resultGET /v1/email/tasks/:task_idResult of a find_email / verify_email that answered {status:‘pending’}.
Verify or find e-mails in bulkPOST /v1/email/jobsVerify a list of e-mail addresses or find addresses for people.

Account

EndpointWhat it does
Get plan and usageGET /v1/usageYour organization’s plan, access state and allowance in records, with two rolling windows — used, left and limit for each.

Webhooks & events

EndpointWhat it does
Describe events and payload fieldsGET /v1/events/catalogThe event catalogue for subscriptions and list_events.
List events (polling feed)GET /v1/eventsEvents in the order we recorded them, after a cursor.
Create a webhook endpointPOST /v1/webhooks/endpointsRegister a receiver URL for event subscriptions.
List webhook endpointsGET /v1/webhooks/endpointsYour organization’s webhook endpoints with status (pending | active | paused | disabled) and delivery health.
Update a webhook endpointPOST /v1/webhooks/endpoints/:endpoint_idChange an endpoint.
Delete a webhook endpointDELETE /v1/webhooks/endpoints/:endpoint_idDelete an endpoint (REST and dashboard only; soft-deleted for audit).
Create a subscription (webhook and/or people list)POST /v1/subscriptionsSubscribe to events and deliver the matches to a webhook endpoint and/or a people list.
Preview a subscriptionPOST /v1/subscriptions/previewDry run of a subscription body over the recorded events of the last window_days.
List subscriptionsGET /v1/subscriptionsYour organization’s event subscriptions (full stored body, status active | paused | invalid with invalid_reason, version, matched_total).
Update a subscriptionPOST /v1/subscriptions/:subscription_idChange any part of a subscription (every key optional; a given key replaces the stored one whole) and/or set status active | paused.
Delete a subscriptionDELETE /v1/subscriptions/:subscription_idDelete a subscription (REST and dashboard only; soft-deleted for audit).
Send a test eventPOST /v1/subscriptions/:subscription_id/testQueue ONE test delivery to the subscription’s endpoint.
List a subscription’s matchesGET /v1/subscriptions/:subscription_id/matchesWhat a subscription did, newest first: each matched event with its state, suppressed_reason, enrichment status, and every delivery attempt.
RedeliverPOST /v1/deliveries/redeliverQueue new delivery attempts with the ORIGINAL stored bytes (nothing is re-rendered or re-charged).

LinkedIn monitors (post engagers, champion tracking)

EndpointWhat it does
Describe monitorsGET /v1/monitors/catalogWhat a LinkedIn monitor is and how to use one.
Estimate a monitorPOST /v1/monitors/estimateBefore creating: how many people a profile’s posts draw per month or one post’s counts, and the records that would cost if every one of them were delivered — comments only vs…
Create a monitorPOST /v1/monitorsWatch a LinkedIn profile’s posts or one post and collect the people who engaged; or watch a people list for job changes.
Collect a post’s engagersPOST /v1/monitors/collectShorthand for create_monitor: collect the commenters of ONE LinkedIn post now.
List monitorsGET /v1/monitorsYour organization’s monitors with status, target, settings and counters (posts, people collected, resolved, last poll).
Update a monitorPOST /v1/monitors/:monitor_idPause / resume a monitor, or change its name, collect settings, exclude or limits.
Delete a monitorDELETE /v1/monitors/:monitor_idDelete a monitor (REST and dashboard only; soft-deleted for audit).
List a monitor’s peopleGET /v1/monitors/:monitor_id/peopleThe people a monitor collected, newest first.

People lists

EndpointWhat it does
Create a people listPOST /v1/people-listsCreate a list of PEOPLE.
List your people listsGET /v1/people-listsYour organization’s people lists (id, name, client, size, version).
Add people to a people listPOST /v1/people-lists/:list_id/itemsAdd people by LinkedIn profile URL (up to 5000 per call), with optional name, title, company and e-mail.
Remove people from a people listPOST /v1/people-lists/:list_id/removeRemove people (by LinkedIn profile URL) from one of your people lists.
Read a people listGET /v1/people-lists/:list_id/itemsThe people on one of your people lists, newest first, with the fields you ask for.
Delete a people listDELETE /v1/people-lists/:list_idDelete one of your people lists (REST and dashboard only; soft-deleted for audit).

Files

GET /v1/files/:job downloads a finished job’s file. The link comes signed from get_job and needs no bearer token.