OFFICIAL SDKs · NODE.JS & PYTHON · ZERO DEPENDENCIES

Build with the SimilarIQ SDKs

First-class Node.js and Python clients for the entire SimilarIQ platform — search, bulk research, history, exports, watchlists, and share links. Zero dependencies, typed errors, TypeScript definitions included, automatic refunds on failed searches.

Node.js

npm install similariq-sdk
const { SimilarIQ } = require("similariq-sdk");
const iq = new SimilarIQ({ apiKey: process.env.SIMILARIQ_API_KEY });

// One call → the ranked competitive landscape
const { competitors } = await iq.search("salesforce.com");
// [{ rank: 1, company: 'HubSpot', domain: 'hubspot.com',
//    matchScore: 97, type: 'Direct', confidence: 94, likelyCompetitor: true }]

// Bulk research with a built-in poller
const { jobId } = await iq.bulk(["stripe.com", "square.com", "adyen.com"]);
await iq.bulkWait(jobId, { onProgress: j => console.log(j.status) });
const csv = await iq.bulkDownload(jobId);

Python

pip install similariq
from similariq import SimilarIQ

iq = SimilarIQ(api_key="sk-live-...")

result = iq.search("salesforce.com")
for c in result["competitors"][:5]:
    print(c["rank"], c["company"], c["matchScore"], c["type"])

job = iq.bulk(["stripe.com", "square.com"])
final = iq.bulk_wait(job["jobId"])
csv_text = iq.bulk_download(job["jobId"])

Full method reference

NodePythonWhat it does
iq.search(domain, {limit})iq.search(domain, limit)Ranked competitor search — 1 credit
iq.bulk(domains)iq.bulk(domains)Start bulk research — 1 credit/domain
iq.bulkWait(jobId)iq.bulk_wait(job_id)Poll a bulk job to completion
iq.bulkDownload(jobId)iq.bulk_download(job_id)Bulk results as CSV
iq.history()iq.history()Recent searches — free
iq.results(searchId)iq.results(search_id)Full past results — free, never re-charges
iq.companies({sourceWebsite})iq.companies(source_website)My Companies workspace — free
iq.saveCompany({domain})iq.save_company(domain)Add to watchlist
iq.savedCompanies()iq.saved_companies()Read watchlist
iq.share(searchId)iq.share(search_id)Public share link
iq.balance()iq.balance()Credits remaining — free

Typed errors

try {
  await iq.search("example.com");
} catch (err) {          // SimilarIQError with .status and .body
  if (err.status === 402) console.log("Out of credits");
}
Also available: the raw REST API, a CLI for terminals and CI, and a hosted MCP server for AI agents. Full reference at similariq.ai/docs.

Frequently asked questions

How much does a search cost?

Every search costs 1 credit whether it returns 10 or 100 results. Credits come with any paid plan ($0.10–$0.24 per search depending on tier) or pay-as-you-go at $0.50 per search with no subscription. Reading past results, history, and exports is always free.

What data does a search return?

A ranked list of up to 100 competitors, look-alikes, and similar companies for any domain — each with a company name, website, 0-100 match score, relationship type (Direct, Indirect, Adjacent, or Emerging), a 0-100 confidence score, and a likely-competitor flag. Results are generated by SimilarIQ's proprietary AI research engine and cross-validated across multiple intelligence sources.

How do I get an API key?

Sign up free at similariq.ai, add credits or a plan, then create a key in the app under API Keys. Keys start with sk-live- and are shown once at creation. The same key works for the REST API, SDKs, CLI, and MCP server.

What happens if a search fails?

Failed searches are automatically refunded — you are only charged for searches that return results.

Do the SDKs have any dependencies?

No. The Node SDK uses the built-in fetch (Node 18+) and ships TypeScript definitions; the Python SDK is standard-library only (Python 3.8+) and will automatically use certifi's CA bundle if it's installed.

Is TypeScript supported?

Yes — similariq-sdk ships complete .d.ts definitions covering every method, the Competitor shape, bulk job objects, and the SimilarIQError class.