Company B2B social
POST https://api.kingminos.com/v1/company/b2b-social
Send a company subject: domain, website, or email (hygiene-normalized to the same registrable domain). Optional name corroborates the unit. Name-only input (no domain, website, or email) is 400 name_only_unsupported.
curl 'https://api.kingminos.com/v1/company/b2b-social' \ -H 'Authorization: Bearer <your-key>' \ -H 'Content-Type: application/json' \ -d '{ "domain": "faktor3.de", "name": "Faktor 3", "external_ref": "account-demo-1" }'What comes back
Section titled “What comes back”The envelope is schema version 2. Automations branch on these layers:
| Layer | Fields | Use |
|---|---|---|
| Control | answer.outcome, es_decision, answer.confidence |
Whether to stamp. |
| Explain | answer.summary, sources |
Humans and logs. Not control flow. |
| Audit | trace when X-Router-Explain: full |
Debug only. |
answer.outcome on this capability is hit or no_decision.
result.linkedin_url is the write field: a Serper-confirmed company page at https://www.linkedin.com/company/{slug} (slug lowercased), or null. Person /in/ profiles, school/showcase pages, unverified title/snippet misses, and parent-brand pages for a distinct unit are rejected. Additive result.verification carries status (confirmed | unverified | rejected), reason, and the normalized url when structural checks pass.
Optional linkedin_url on the request is an agree-check hint only — it must already be a normalized /company/{slug} URL; person /in/ is 400. It is not authority to invent a page.
Stamp rule: write result.linkedin_url when answer.confidence meets your floor. LinkedIn company URLs that pass structural checks typically need high confidence. Path defaults and min_confidence behave like other capabilities — see GET /v1/recipes/guidance.
Business misses stay HTTP 200.
Routing
Section titled “Routing”Omit routing.path to use balance. OutboundSync callers set path explicitly.
path |
What it does |
|---|---|
speed |
House websearch company-page query. Reservation cap 1. |
balance |
Default. Websearch, then house AI Ark even after a search candidate. Reservation cap 2. |
accuracy |
Adds LeadMagic, house AI Ark, then Wiza. Reservation cap 5. |
coverage |
Adds Findymail. Reservation cap 6. |
Legacy request aliases (auto, value, name_only, fast) expand to the paths above; responses echo canonical path names. routing.preset is a back-compat alias (auto → balance on this capability). confidence is not a path.
Default stacks use house keys only (websearch, AI Ark, LeadMagic, Wiza, Findymail). BYOK vendors (ZoomInfo, Apollo, Prospeo, Company URL Finder) run only with routing.only or an explicit routing.order. routing.only: ["aiark"] is allowlisted for km_ and session keys.
House key vs vendor keys
Section titled “House key vs vendor keys”LeadMagic, Wiza, Findymail, and AI Ark are house-key vendors on the default paths. See Vendor keys. ZoomInfo, Apollo, Prospeo, and Company URL Finder are BYOK — without stored keys, forced hops return 400 with the matching *_credentials_required code.
Websearch is house-only. You cannot PUT a websearch key.
The body accepts nullable name, domain, website, email, and linkedin_url, plus:
external_ref— client correlation key, echoed on the run.routing—path, optionalorder,only,max_provider_credits,allow_fallbacks.schema_version— pin"2"or omit.dry_run— accepted; writers stay skipped.
Explain and cache
Section titled “Explain and cache”Prefer X-Router-Explain: minimal on CRM callouts — it is an alias of the clean envelope. Use full when you need trace.attempts.
Idempotency-Key replays a completed run. Rotating that header is what forces a new decision; explain flags do not.