Skip to main content
Inputs: 1–3 reference domains · optional location. Returns: organizations similar to the references by embedding similarity. Use this when you have a known organization and want “more like this”, competitors, acquisition targets, or lookalike prospects for an ABM list.

The recipe

Set ISTARI_API_KEY, then swap in your reference domains and optional country. The request maps to POST /v2/search with similar_to.
import os
import requests

API_KEY = os.environ["ISTARI_API_KEY"]


def find_lookalikes(domains: list[str], country: str | None = "Germany") -> list[dict]:
    body = {
        "similar_to": domains,
        "excludes": domains,  # always exclude your references
        "filters": {"country": [country]} if country else {},
        "columns": ["domain", "name", "country", "nace_code"],
        "min_score": 0.55,  # raise toward 0.6 if results look loose
        "size": 20,
        "dedup": True,
    }
    resp = requests.post(
        "https://api.istari.ai/v2/search",
        headers={"x-api-key": API_KEY, "Content-Type": "application/json"},
        json=body,
    )
    return resp.json()["data"]


for row in find_lookalikes(["n26.com"]):
    print(row["domain"], "-", row["name"])

What each lever does

LeverRole
similar_toThe reference set. Pass 2–3 domains to define a “centroid” (e.g. three competitors) and find the cluster around them.
excludesRemoves the references from results.
min_scoreTightens similarity. Default 0.35 is broad; 0.55–0.65 keeps only close matches; 0.8+ near-duplicates only.
filters.country / filters.nace_code / filters.organization_sizeOptional post-filters to scope the lookalikes.

Validated examples

Embedding similarity is the corpus’s strongest signal — it holds for famous brands and unknown SMEs:
ReferenceReturns
n26.com (neobank)Trade Republic, C24 Bank, ING, Evergreen, Gini
celonis.com (process mining)Mimica, mindzie, iGrafx, ARIS, Wang Fan Xin
bipack.it (corrugated-box SME)CARPACK (MX), Scatolificio Valverde (IT), Cartoembal (ES), SBC (BR)

Notes

  • Exclusion is by exact domain. A reference’s sister domains can still appear (here number26.de, N26’s alternate, surfaced). Add every known domain to excludes.
  • Multi-domain queries are fused with reciprocal-rank fusion: great for “organizations like A, B and C”.
  • To steer toward or away from concepts (boost/penalize terms, repel specific organizations), use find_similar_with_steering.
  • Pair with POST /v2/fetch to hydrate full profiles for the shortlist.