Resolve Investor Names

Introduction

This endpoint maps free-text investor names to stable investor IDs in bulk. Send a list of names and receive, for each one, either a confident exact match with an ID, a set of ranked candidates when the name is ambiguous, or no_match when nothing was found. Use it to normalise messy spreadsheet or CRM data before calling the investor endpoints (/investors/{id}, /investors/{id}/investments, /investors/{id}/co_investors), or to validate a list of names in a single round trip.

Set up

Endpoint

POST https://multiples.vc/api/private/v1/investors/resolve

Request

Send a JSON body with a single names array. The matcher is case-insensitive and tries an exact lookup first, falling back to fuzzy ranking when an exact match is missing or ambiguous.

{
  "names": [
    "Sequoia Capital",
    "Sequoi",
    "Zzqx Nonexistent VC"
  ]
}

field

type

description

names

string[]

Required. Investor names to resolve. Each entry must be a non-empty string and contain no NUL bytes. Maximum 200 names per call.

Response

Returns a data array with one result per input name, in the same order. For an exact match, id is populated. For ambiguous, id is null and a ranked candidates array is returned. For no_match, id is null and no candidates are returned.

{
  "data": [
    {
      "query": "Sequoia Capital",
      "id": "9918f9bb-0d74-434d-9029-a44cbee87637",
      "match_type": "exact"
    },
    {
      "query": "Sequoi",
      "id": null,
      "match_type": "ambiguous",
      "candidates": [
        {
          "id": "682e8a71-8e0f-4106-b8fe-f747a150876e",
          "name": "Sequoia Fund",
          "country": "USA",
          "score": 0.5
        },
        {
          "id": "6b4dcb9f-8e91-4339-a83b-c688e7025072",
          "name": "Sequoia Apps",
          "country": "USA",
          "score": 0.5
        },
        {
          "id": "19566905-8cf4-46d4-a1b2-3e6e9cade5b2",
          "name": "Sequoia Scout",
          "country": "USA",
          "score": 0.46
        }
      ]
    },
    {
      "query": "Zzqx Nonexistent VC",
      "id": null,
      "match_type": "no_match"
    }
  ]
}

Fields

field

type

description

query

string

The input name, echoed back so results can be matched to the request.

id

string (uuid) | null

The resolved investor ID. Populated only when match_type is exact; null for ambiguous and no_match.

match_type

string

One of exact, ambiguous, or no_match.

candidates

object[]

Ranked alternatives, returned only when match_type is ambiguous. Up to 5 entries, highest score first.

candidates[].id

string (uuid)

Investor ID of the candidate.

candidates[].name

string | null

Candidate investor name.

candidates[].country

string | null

ISO 3166-1 alpha-3 country code of the candidate, when known.

candidates[].score

number

Fuzzy match confidence from 0 to 1, where 1 is the closest match.