See updates across the data model, metadata structure, and API of our service. Breaking changes that require updates to data consumer applications are announced prior to their implementation.
See updates across the data model, metadata structure, and API of our service. Breaking changes that require updates to data consumer applications are announced prior to their implementation.
Filter by components: yente (7) · Datasets (8) · Export formats (8) · Data model (11) · Hosted API (8) · Bulk data delivery (2) · Metadata (1)
| Effective date: | |
|---|---|
| Components affected: | Data modelExport formats |
| Announcement: |
We're introducing a new property, abbreviation , to be more precise in our representation of organisation names. The new property will store shortened entity names such as ANC, AO OUK YKU, or IKEA. Abbreviations and acronyms are often a source of false positive matches in screening systems because they contain limited distinguishing detail. By separating them into a custom field, we're creating the possibility to treat abbreviations differently from full names. For example, we want to make it possible to use precise instead of fuzzy matching on abbreviations, as is already the case with weak aliases (IKEA and IAEA are two very different things).
For backward compatibility, we're currently copying all abbreviation values to the older weakAlias property in order to ensure that existing matching systems and integrations have access to its content. This backstop will be removed in September 2026. Data users are advised to integrate the new property before then.
Other notes:
| Effective date: | took effect on |
|---|---|
| Components affected: | Hosted API |
| Announcement: |
In Q4 2025, stretching into Q1 2026, we will be migrating our billing system for both API and bulk data customers from Chargebee to Stripe. This will reduce the number of moving parts in our service, as we already use Stripe to collect all credit card payments.
We hope that this change will pass unnoticed for our customers. Please bear with us if you do notice any minor hiccups during this time. In particular, customers may receive a partial service invoice for SaaS usage. Our highest priority during this migration is to never overcharge any of our customers. As always, if something doesn't look or feel right, please get in touch with our support team.
| Effective date: | took effect on |
|---|---|
| Components affected: | Hosted APIyente |
| Announcement: |
After releasing the new logic-v2 result scoring algorithm in September, we're planning to make it the default used by the OpenSanctions API service when no other algorithm is specified (or the best algorithm is selected). API users can prepare for this change in two ways:
logic-v2. The new system significantly reduces false positive alert rates and improves match quality. We also plan to make this new algorithm the focus of future feature enhancements and precision improvements.algorithm=logic-v1 as part of your query string to opt out of this change. This will freeze the use of logic-v1, the current best/default algorithm. This option is recommended for API users where scoring changes may require a regulatory approval/notification. We may choose to fully retire logic-v1 within the next 24 months.Please feel free to reach out to the support team with any questions regarding the new scoring algorithm.
| Effective date: | took effect on |
|---|---|
| Components affected: | yenteHosted API |
| Announcement: |
Suspended: After receiving feedback from our customers, we have decided to reverse this decision. The cutoff parameter has been marked as deprecated, but will remain in place indefinitely. The announcement below is only retained for reference. It will not be implemented.
In an effort to simplify our Matching API, we are removing the cutoff parameter. Once this change becomes effective, only matches, i.e. those results scoring higher than threshold will be returned. If you care about low-scoring results being returned, please adjust the threshold parameter instead. The match property on the returned results will remain and function as before, and match will be set to true for all results once this change becomes effective.
| Effective date: | took effect on |
|---|---|
| Components affected: | Data modelDatasets |
| Announcement: |
After the introduction of sanction program identifiers, we're now migrating a number of smaller national sanctions lists to use the same mechanism. Until now, we annotated hard-coded program names in these datasets (as values for the Sanction:program property).
As these program names are not authoritative, we are now replacing them with Sanction:programId references. This creates a clearer separation between the data provided from source, and analytical annotations stemming from our data pipeline.
Read more about using sanctions programs.
Affected datasets:
au_listed_terrorist_orgsbr_ceisca_named_research_orgscz_terroristseu_esma_sarisinterpol_apiir_sanctionskz_afmrk_sanctionsli_posting_sanctionslt_fiu_freezesnz_russia_sanctionsPending:pk_proscribed_personspl_finanse_sanctionsru_mfa_sanctionssg_terroristsua_nsdc_sanctionsun_1718_vesselsus_bis_deniedus_cuba_sanctionsus_ddtc_debarredus_ddtc_enforcementsus_dod_chinese_milcorpsus_fcc_covered_listus_fed_enforcementsus_hhs_exclusionsus_state_terrorist_orgs| Effective date: | took effect on |
|---|---|
| Components affected: | Hosted API |
| Announcement: |
We are planning an upgrade to the technology stack powering the OpenSanctions API in the coming days. While new functionality will be described in a separate announcement, users of the system might notice small changes in matching results. They can be a result of:
LLC, OAO, OJSC, etc.).A B C Limited), and of names across different scripts (Putin and بوتين).logic-v1 in which certain match scores for organizations could vary between requests.Alberta is recognized as Canada).Of course, it is our goal to keep matching results stable over time. The result of rolling out these improvements to some of the existing matching systems, however, should strictly improve precision and reduce false positive burden for existing users.
| Effective date: | took effect on |
|---|---|
| Components affected: | Hosted API |
| Announcement: |
Effective December 31, 2025, the secondary KYB data API at api.graph.opensanctions.org will be shut down and no longer supported.
We’ve made this decision to focus on improving and expanding the core OpenSanctions dataset and API. If you are using the KYB/Graph API, please plan to transition before the end of the year. We encourage you to reach out if the impact of this change is severe for your business.
| Effective date: | took effect on |
|---|---|
| Components affected: | Hosted APIyente |
| Announcement: |
We have begun a two-step migration in the /match API response format that affects users relying on the features and matcher fields.
The matcher field in /match responses will be removed after February 27, 2026. Equivalent information is available via the /algorithms route (free to use).
A new explanations field has been added that is a strict superset of features. In addition to the partial scores produced by each component of the matching system, it includes textual descriptions of the matching decisions from each of these subsystems. These descriptions are designed for display in analyst workbenches or can be passed to generative AI tools to help interpret screening alerts. The features field will be removed after February 27, 2026. Users should update their applications to consume explanations before this date.
| Effective date: | took effect on |
|---|---|
| Components affected: | Data modelExport formats |
| Announcement: |
Starting October 15, 2025, we are planning to remove out-of-use entity identifiers from the referents list after a grace period. At present, the referents associated with entities include all IDs of source entities that have been used to describe the entity in the past, including those no longer present in our dataset. This has lead to over 100,000 entity IDs mentioned in referents which are no longer associated with any source data. In the future, we plan to remove ("garbage collect") unused referents after ca. 6 months.
Users of the data may need to update monitoring systems in which referents is used to suppress repeat alarms for a matched entity in a screening system. When an entity ID is changed and moved to referents, consumer systems should update their internal reference to the main (canonical) entity ID when drift is observed.
| Effective date: | took effect on |
|---|---|
| Components affected: | Data modelExport formats |
| Announcement: |
All LegalEntities in the data model now have a uscCode property, which is designed to store Unified Social Credit Identifiers for Chinese companies and individuals. In order to ease adoption of this new property, we are currently emitting USCI in both the new uscCode property, and in the more generic registrationNumber property that has been available previously. As of December 1, 2025, we will stop including USCI in registrationNumber, and make the identifiers available in the more specific field only.
| Effective date: | took effect on |
|---|---|
| Components affected: | Data model |
| Announcement: |
We will begin to indicate the level and status of political influence in PEP profiles where possible. This will be described with values like National government (current) or State government (past) in the Person:classification property. This replaces the use of the Person:keywords property that was previous included in the wd_peps dataset.
This data will only be available in the default dataset. Read more on why that is most appropriate even if you only need PEPs.
| Effective date: | took effect on |
|---|---|
| Components affected: | Data model |
| Announcement: |
We're working on a new major release of FollowTheMoney, the data model underlying OpenSanctions. This major release cleans up some aspects of the domain model. The changes mostly affect schemata not used by OpenSanctions. However, we want to list the relevant upcoming changes here:
CryptoWallet:mangingExchange property will be renamed to CryptoWallet:managingExchange. This property is used by the il_mod_crypto dataset. Please update any client/import code reliant on this property to use the new name.Sanction:duration property will change its datatype from string to number. The property values remain strings in the JSON export format, and may still contain a unit specification (eg. 2 years). It is very likely that no action needs to be taken by data consumers.Non-relevant schema changes:
Post and Assessment schemata will be deleted. Both are unused by OpenSanctions.License:area (string to number), and the UserAccount:number property will be renamed to UserAccount:phone. The Company:ibcRuc property is to be deleted.We will provide a more detailed change log when the release is published. This announcement merely serves as an early advisory regarding schema changes.
| Effective date: | took effect on |
|---|---|
| Components affected: | Hosted API |
| Announcement: |
A new version of the API will remove the regression-v2 scoring algorithm, but leave regression-v1 in place for now. regression-v2 is a historic scoring method that is discouraged for screening use (it's intended use is internal de-duplication of entities in our database).
A new regression-v3 scoring mechanism is now being developed and will be released, but not recommended for screening use. Any requests that are sent to the API using regression-v2 will be re-written to use regression-v3 in the future.
| Effective date: | took effect on |
|---|---|
| Components affected: | Data model |
| Announcement: |
In the us_sam_exclusions dataset based off the SAM.gov exclusion and debarment list, the designated entity's UEI is currently stored in the registrationNumber field. Going forward, a new property, called uniqueEntityId is available and will contain these identifiers. Starting Feb 1, 2025, we will then remove the UEI mapping to registrationNumber.
| Effective date: | took effect on |
|---|---|
| Components affected: | yenteHosted API |
| Announcement: |
This release updates various dependencies, introducing new fields in the followthemoney schema and bringing in security patches for the web stack dependencies.
We're also implementing the Reconciliation API's Data Extension protocol for the first time, allowing users to enrich OpenRefine tables with new columns using the API.
See more: https://github.com/opensanctions/yente/releases/tag/v4.2.0
| Effective date: | took effect on |
|---|---|
| Components affected: | Data modelExport formats |
| Announcement: |
We're phasing out the use of the target flag throughout the system, and switching the export formats that are based on target to use a defined list of topics as their source of truth.
A binary flag (target) is an insufficient method to describe what entities are associated with risk. For the past few months, we've been recommending the use of topics to decide if a match is relevant (e.g. as a PEP, sanctioned entity). However, some export formats - such as targets.nested.json and targets.simple.csv are still using targets to decide which entities to include.
On January 15, we will switch these two export formats (targets.nested.json and targets.simple.csv) to include any entities tagged with one the topics listed below. This is guaranteed to include all current targets, but will bring in additional entities that have topics assigned, but are not marked as targets. In short: the new exports will be more correct, and a bit larger.
This will result in the targets.nested.json export of the default dataset becoming equivalent to the topics.nested.json export of the same collection. This export can be used for testing until the change becomes effective on January 15, 2025. We will eventually remove the topics.nested.json export format on February 15, 2025, and only generated the file named targets.nested.json going forward.
Topics included in new target definition:
corp.disqualcrime.bosscrime.fincrime.fraudcrime.terrorcrime.theftcrime.traffickcrime.warcrimedebarmentexport.controlexport.riskpoireg.actionreg.warnrole.oligarchrole.peprole.rcasanction.countersanction.linkedsanctionwanted| Effective date: | took effect on |
|---|---|
| Components affected: | Data model |
| Announcement: |
A soft length limit in Unicode codepoints has been added for all properties. These can be seen in the data dictionary. The goal of this is to make it easier for data consumers to import our data into systems with fixed-length column types.
Property values are not yet guaranteed to be limited to this value, but our tooling now alerts us when values are longer than this, so that we can identify sources which don’t adhere to sensible limits and eventually enforce hard limits.
Imposing a length limit has also identified many instances where the data required further cleaning, which we've implemented as needed.
| Effective date: | took effect on |
|---|---|
| Components affected: | Data model |
| Announcement: |
The permId property for LSEG/Refinitiv company codes has been moved up from the Company to the Organization schema to enable reflecting government entities (using the PublicBody schema) also receiving these identifiers.
| Effective date: | took effect on |
|---|---|
| Components affected: | Data model |
| Announcement: |
The followthemoney data model currently stores the citizenship of individuals in the nationality property. After being advised the the two concepts are not identical in some jurisdictions, we've now also introduced a citizenship property. From the effective date we will begin moving country affiliations for individuals in the citizenship property if that nomenclature is used in the data source (e.g. the UK sanctions list).
Data consumers should check both properties in the future. To get a complete picture of the countries linked to an individual you may also want to check the birthCountry and country field. The latter serves as a catch-all field for affiliations that may not involve citizenship or holding a passport - simple residence might be enough.
See: Person schema.
Our monthly newsletter brings you product updates, new datasets, and upcoming changes.
Subscribe now