changedOutput schema / properties / error / properties / data / properties / reason / description
Previous value: -"Machine-readable failure mode. Declared by this tool: `lei_not_found`: No GLEIF entity exists for the given LEI in the mirror. `mirror_not_ready`: The GLEIF (LEI) mirror has never completed an initial sync. Other values are possible when a failure originates below the handler."New value: +"Machine-readable failure mode. Declared by this tool: `lei_not_found`: No GLEIF entity in the mirror carries the LEI, and its check digits are valid. `invalid_lei_checksum`: No GLEIF entity in the mirror carries the LEI, and its ISO 17442 check digits fail. `mirror_not_ready`: The GLEIF (LEI) mirror has never completed an initial sync. Other values are possible when a failure originates below the handler."
changedOutput schema / properties / error / properties / data / properties / reason / examples
Previous value: -[
- "lei_not_found",
- "mirror_not_ready"
-]New value: +[
+ "lei_not_found",
+ "invalid_lei_checksum",
+ "mirror_not_ready"
+]
changedOutput schema / properties / sanctionsHits / description
Previous value: -"Sanctions screening cross-reference on the entity's legal name."New value: +"Sanctions screening cross-reference of the entity, one hit per designation (an OFAC party both OFAC lists publish once): exact name and identifier matches first, then strong name matches."
changedOutput schema / properties / sanctionsHits / items / description
Previous value: -"A potential watchlist match on the entity's legal name — verify, do not assume."New value: +"A potential watchlist match on one or more of the entity's names or identifiers — verify, do not assume."
changedOutput schema / properties / sanctionsHits / items / properties / matchType / description
Previous value: -"exact / strong / approximate match classification."New value: +"Match classification of matchedName: exact or strong, never approximate (the cross-reference screens strict, never fuzzy). Absent when only an identifier produced the hit."
addedOutput schema / properties / sanctionsHits / items / properties / matchedIdentifiers
Added value: +{
+ "description": "Every identifier the designation publishes that equals the entity's LEI or its country-matched registration number, as published. Present only when an identifier produced the hit.",
+ "items": {
+ "additionalProperties": false,
+ "description": "An identifier the designation publishes that equals the entity's LEI, or its registration number published for the country of its legal jurisdiction.",
+ "properties": {
+ "country": {
+ "description": "Issuing country as published, when published.",
+ "type": "string"
+ },
+ "type": {
+ "description": "Identifier label as the list publishes it (e.g. Legal Entity Number, Registration Number).",
+ "type": "string"
+ },
+ "value": {
+ "description": "The identifier value, as published.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "type",
+ "value"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+}
changedOutput schema / properties / sanctionsHits / items / properties / matchedName / description
Previous value: -"The name/alias that matched the entity's legal name."New value: +"The designation's name or alias that matched one of the entity's screened names — the strongest match. Absent when only an identifier produced the hit."
addedOutput schema / properties / sanctionsHits / items / properties / matchedOn
Added value: +{
+ "description": "Every input of the entity that produced this hit — its legal name, an other or transliterated name, its LEI, or its registration number — in screening order.",
+ "items": {
+ "additionalProperties": false,
+ "description": "One value of the entity the cross-reference screened.",
+ "properties": {
+ "input": {
+ "description": "Which value: legal_name, or other_name (an other or transliterated name), each screened as a name, strict; lei, or registration_number (the ID at the registration authority), each looked up as a non-document identifier.",
+ "enum": [
+ "legal_name",
+ "other_name",
+ "lei",
+ "registration_number"
+ ],
+ "type": "string"
+ },
+ "nameType": {
+ "description": "GLEIF's type for an other_name (e.g. TRADING_OR_OPERATING_NAME, AUTO_ASCII_TRANSLITERATED_LEGAL_NAME), or UNKNOWN for a name the mirror stored without one. Present on other_name only.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The value as GLEIF publishes it.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "input",
+ "value"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+}
changedOutput schema / properties / sanctionsHits / items / properties / score / description
Previous value: -"Raw Jaro-Winkler similarity (0–1) for approximate hits only."New value: +"Never set by this cross-reference: only an approximate (fuzzy) match carries a raw Jaro-Winkler score, and the cross-reference screens strict."
changedOutput schema / properties / sanctionsHits / items / properties / source / description
Previous value: -"Watchlist the candidate is on."New value: +"Watchlist whose record this hit is attributed to: primaryName comes from it. For an OFAC party both OFAC lists publish, ofac_sdn unless the Consolidated record matched alone or better, and matchedName, matchedIdentifiers, and matchedOn cover what either record matched; sources names every list."
addedOutput schema / properties / sanctionsHits / items / properties / sources
Added value: +{
+ "description": "Every screened list this candidate is on, in list order: one list, or ofac_sdn and ofac_consolidated together for an OFAC party both OFAC lists publish under one entry ID — one hit, not two. Read this, not source, for every list; the entry ID resolves in sanctions_get_designation under each.",
+ "items": {
+ "enum": [
+ "ofac_sdn",
+ "ofac_consolidated",
+ "eu",
+ "uk",
+ "un"
+ ],
+ "type": "string"
+ },
+ "type": "array"
+}
changedOutput schema / properties / sanctionsHits / items / required
Previous value: -[
- "source",
- "sourceLabel",
- "sourceEntryId",
- "primaryName",
- "matchedName",
- "matchType"
-]New value: +[
+ "source",
+ "sourceLabel",
+ "sourceEntryId",
+ "sources",
+ "primaryName",
+ "matchedOn"
+]
changedOutput schema / properties / sanctionsScreen / description
Previous value: -"Disclosure for the cross-reference screen: how many potential matches existed before the cap, and whether sanctionsHits is the complete set. Present only when screeningStatus is 'screened'."New value: +"Disclosure for the cross-reference: how many potential matches existed before the cap, whether sanctionsHits is the complete set, and what was screened. Present only when screeningStatus is 'screened'."
changedOutput schema / properties / sanctionsScreen / properties / hasMore / description
Previous value: -"True when the potential matches were capped — screen the legal name with sanctions_screen_name to page through the rest."New value: +"True when the potential matches were capped — re-screen the entity's names with sanctions_screen_name and look up its LEI and registration number with sanctions_screen_identifier to see the rest."
addedOutput schema / properties / sanctionsScreen / properties / screenedInputs
Added value: +{
+ "description": "What the cross-reference screened beyond the legal name and the LEI, which it always screens: every other and transliterated name, then the registration number when the entity publishes one (a not-available placeholder such as N/A is none) and a legal jurisdiction to match it by. Empty when there is nothing beyond those two.",
+ "items": {
+ "additionalProperties": false,
+ "description": "One value of the entity the cross-reference screened.",
+ "properties": {
+ "input": {
+ "description": "Which value: legal_name, or other_name (an other or transliterated name), each screened as a name, strict; lei, or registration_number (the ID at the registration authority), each looked up as a non-document identifier.",
+ "enum": [
+ "legal_name",
+ "other_name",
+ "lei",
+ "registration_number"
+ ],
+ "type": "string"
+ },
+ "nameType": {
+ "description": "GLEIF's type for an other_name (e.g. TRADING_OR_OPERATING_NAME, AUTO_ASCII_TRANSLITERATED_LEGAL_NAME), or UNKNOWN for a name the mirror stored without one. Present on other_name only.",
+ "type": "string"
+ },
+ "value": {
+ "description": "The value as GLEIF publishes it.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "input",
+ "value"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+}
changedOutput schema / properties / sanctionsScreen / properties / totalAvailable / description
Previous value: -"Potential matches the cross-reference screen found before the cap was applied."New value: +"Distinct designations the cross-reference found across every screened name and identifier, an OFAC party both OFAC lists publish counted once, before the cap was applied."
changedOutput schema / properties / sanctionsScreen / properties / totalAvailableBasis / description
Previous value: -"How to read totalAvailable: exact = the complete strict match set for this legal name; lower_bound = a bounded scan produced it, so more may exist."New value: +"How to read totalAvailable. Always exact here: every name is screened strict, never fuzzy, and a strict screen counts every designation it reaches, so totalAvailable is the whole set across the screened names and identifiers."
changedOutput schema / properties / sanctionsScreen / required
Previous value: -[
- "totalAvailable",
- "totalAvailableBasis",
- "hasMore"
-]New value: +[
+ "totalAvailable",
+ "totalAvailableBasis",
+ "hasMore",
+ "screenedInputs"
+]
changedOutput schema / properties / screeningStatus / description
Previous value: -"Whether the cross-reference ran: screened = the legal name was screened against every loaded watchlist; not_ready = the sanctions mirror has never synced, so no screening ran and the empty sanctionsHits says nothing about this entity. Read sanctionsHits only when this is 'screened'."New value: +"Whether the cross-reference ran: screened = the entity's names and identifiers were screened against every loaded watchlist; not_ready = the sanctions mirror has never synced, so no screening ran and the empty sanctionsHits says nothing about this entity. Read sanctionsHits only when this is 'screened'."