Skip to content
Peritus
API reference · Query

Resolve entities

POST/v1/entities:resolve

Names and identifiers to entities, with ranked, explained candidates.

scope
read
auth
Bearer key
operationId
ResolveEntities
MCP tool
resolve_entity

Request body

application/json · ResolveRequest · no other fields

Request body fields
FieldTypeRequiredLimitsHolds
mentionsMention[]yes1 to 100 items
as_ofAsOfRequestno
max_age_secondsintegerno1 to 315360000
modestrict · standard · broadnoWhich items could be served. Each mode returns everything the one before it does.

Response

200 · ResolveResponse. A resolution per mention, or typed abstentions.

Response fields
FieldTypeHolds
response_idResponseIDA response's ID. It replays and compares that exact response.
statusanswered · partial · abstainedWhether there is an answer.
as_ofAsOfWhen the answer applies (valid_at), and what the record held then (known_at).
modestrict · standard · broadWhich items could be served. Each mode returns everything the one before it does.
presetstring · nullableThe key's preset, if any.
itemsItem[]The cited facts.
abstentionsAbstention[]Why part of the question has no answer.
negative_resultsNegativeResult[]What was searched, and found nothing.
withheldWithheld[]Items left out, by reason and count.
attributionsAttribution[]Text to repeat where you show the data.
metaMetaThe policy version, the index versions, and the milliseconds the server took.
resolutionsResolution[]

Rate-limit headers

RateLimit-Limit
The bucket's size.
RateLimit-Remaining
Tokens left in it.
RateLimit-Reset
Seconds until it is full.

Problems

RFC 9457 application/problem+json. An abstention is not one of these: it is a 200.

Problems
HTTPCodeWhen
400INVALID_REQUESTMalformed JSON, unknown fields, bad filter, limit exceeded
401UNAUTHENTICATEDMissing, malformed, or revoked key
403FORBIDDEN_SCOPEThe key lacks the required scope
413PAYLOAD_TOO_LARGEBody or upload over the limit
422UNPROCESSABLEWell-formed but semantically invalid
429RATE_LIMITEDRate limit or per-tenant model cap
500INTERNAL, POLICY_ASSERT_FAILED, RESPONSE_UNREPLAYABLEServer fault. The last two also alert
503STORE_UNAVAILABLE, LLM_UNAVAILABLE, LOG_UNAVAILABLEA dependency is down or a budget tripped
504TIMEOUTA deadline was exceeded

Sample

Request
POST /v1/entities:resolve
Content-Type: application/json

{
  "mentions": [
    {
      "text": "MOA NICKEL",
      "kind": "org"
    },
    {
      "identifier": {
        "scheme": "ofac_uid",
        "value": "3751"
      }
    }
  ]
}
Sample response · GET /v1/samples/resolve
{
  "abstentions": [],
  "as_of": {
    "known_at": "2026-10-28T14:34:53.187843Z",
    "valid_at": "2026-10-28T14:34:53.187843Z"
  },
  "attributions": [
    {
      "source_id": "ofac_sls",
      "text": "U.S. Department of the Treasury, Office of Foreign Assets Control (OFAC), Sanctions List Service"
    }
  ],
  "items": [],
  "meta": {
    "index_versions": {
      "ofac_sls": "01a182ef-71a0-7861-9595-c4ecfc82ba02"
    },
    "policy_version": 1,
    "server_ms": 1
  },
  "mode": "strict",
  "negative_results": [],
  "preset": null,
  "resolutions": [
    {
      "candidates": [
        {
          "basis": "fuzzy_name",
          "entity": {
            "id": "ent_06GR5VVHPDW2Q1HYD75X1W4YNM",
            "kind": "org",
            "name": "MOA NICKEL SA",
            "redirected_from": null
          },
          "explanation": {
            "alias_coverage": 1,
            "contradicted": [],
            "corroborated": [],
            "matched": [
              "moa",
              "nickel"
            ],
            "query_coverage": 1,
            "strength": 1,
            "unmatched": []
          },
          "matched_on": "MOA NICKEL SA",
          "score": 1,
          "score_is_calibrated": false
        }
      ],
      "detail": {
        "code": "NAME_ONLY_MATCH"
      },
      "mention": {
        "kind": "org",
        "text": "MOA NICKEL"
      },
      "outcome": "resolved",
      "selection": "ambiguous"
    },
    {
      "candidates": [
        {
          "basis": "exact_id",
          "entity": {
            "id": "ent_06GR5VVHPDW2Q1HYD75X1W4YNM",
            "kind": "org",
            "name": "MOA NICKEL SA",
            "redirected_from": null
          },
          "explanation": {
            "alias_coverage": 0,
            "contradicted": [],
            "corroborated": [],
            "matched": [
              "ofac_uid=3751"
            ],
            "query_coverage": 0,
            "strength": 0,
            "unmatched": []
          },
          "matched_on": "",
          "score": 1,
          "score_is_calibrated": false
        }
      ],
      "mention": {
        "identifier": {
          "scheme": "ofac_uid",
          "value": "3751"
        }
      },
      "outcome": "resolved",
      "selected": "ent_06GR5VVHPDW2Q1HYD75X1W4YNM",
      "selection": "single"
    }
  ],
  "response_id": "resp_06GR5VVKGNXB145ZZQT7PXWW3C",
  "status": "answered",
  "withheld": []
}