Documentation · Données en bloc

JSON FollowTheMoney

Nos fichiers JSON suivent la structure d’entités FollowTheMoney : chaque entité comporte un identifiant (id), un schéma et un ensemble de propriétés dont les valeurs sont toujours des listes de chaînes de caractères. Ils sont écrits en lignes JSON (un objet JSON complet par ligne), ce qui permet de les traiter en flux sans charger le fichier entier.

Les fichiers en bloc se téléchargent gratuitement, sans compte. L’utilisation non commerciale est couverte par notre licence de données; l’utilisation commerciale exige une licence. Pour vérifier des noms un à un, utilisez plutôt l’API de vérification.

Deux fichiers

  • entities.ftm.json contient chaque fiche sous forme d’entité, suivie à la ligne suivante de son entité Sanction : l’inscription sur le registre source. Il y a donc deux lignes par fiche. Utilisez-le pour charger un graphe ou un magasin d’entités, où l’inscription constitue un nœud distinct.
  • targets.nested.json contient une ligne par fiche, avec son inscription imbriquée sous properties.sanctions. Utilisez-le lorsque vous voulez un objet autonome par partie inscrite.

Les deux sont en UTF-8. Voir aussi la référence du modèle, la structure des entités et les entités à plat et imbriquées.

Champs des entités

id
Identifiant de la fiche, crown-<number>. Une fiche correspond à une ligne d’un registre source. L’inscription a l’identifiant crown-<number>-sanction. Dans l’API, la même fiche est désignée par le numéro seul.
caption
Nom d’affichage.
schema
Person, Company, Organization, Vessel, Airplane, LegalEntity (type non précisé par la source) ou Sanction.
properties
Nom de la propriété associé à une liste de valeurs de type chaîne. Les propriétés absentes sont omises.
referents
Autres identifiants fusionnés avec celui-ci. Toujours une liste vide à ce jour; les fusions sont exprimées avec canonical_id.
datasets
Registre source sous forme d’identifiant court, p. ex. ofac_sdn, uk_ofsi, paris_mou_banned.
first_seen
Date à laquelle nous avons recueilli la fiche pour la première fois (ISO 8601, décalage UTC inclus).
last_seen
Date à laquelle la fiche a été confirmée pour la dernière fois à sa source.
last_change
Date de la dernière modification de la fiche. Actuellement, elle est égale à last_seen.
target
true pour les parties inscrites. Absent des entités Sanction.
canonical_id
Présent lorsque nous avons établi une correspondance entre la fiche et des fiches d’autres registres comme étant la même partie : crown-e-<merge id>. Regroupez selon ce champ pour voir une même partie à travers les registres.

Propriétés

PropriétéSurContenu
nametoutes les fichesNom principal tel que publié
aliastoutes les fichesAutres noms et orthographes
topicstoutes les fichesL’une des valeurs suivantes : sanction, role.pep, debarment, reg.action
birthDatePersonneYYYY, YYYY-MM ou YYYY-MM-DD, selon la précision publiée
nationalityPersonneISO 3166-1 alpha-2, en minuscules
countryautres fichesISO 3166-1 alpha-2, en minuscules
imoNumberNavire et autresIMO suivi de sept chiffres
sourceUrlfiches, SanctionLien vers la fiche ou la liste chez l’éditeur
notestoutes les fichesAutres renseignements publiés sous forme de texte (adresses, identifiants, pavillons, remarques)
entitySanctionidentifiant de la fiche inscrite
authoritySanctionNom du registre source
programSanctionProgramme ou fondement de l’inscription, selon les termes de l’éditeur
listingDateSanctionDate de publication ou d’inscription, lorsque le registre en indique une
sanctionsfichier imbriqué seulementLes entités Sanction de la fiche

Degré de complétude de chaque propriété

PropriétéFiches concernéesPart
Chargement…

Exemple : entities.ftm.json

Deux lignes de la collection maritime : un navire et son inscription (sauts de ligne ajoutés pour faciliter la lecture; chaque objet occupe une seule ligne dans le fichier).

{"id":"crown-380054154","caption":"PELIKAN","schema":"Vessel",
 "properties":{"name":["PELIKAN"],"topics":["debarment"],"alias":["BALTIC ATLANT SHPG-LITHUANIA"],
   "imoNumber":["IMO6922169"],"notes":["IMO 6922169 · Flag: Comoros · From: 09/12/2009 · ISM: BALTIC ATLANT SHPG-LITHUANIA"]},
 "referents":[],"datasets":["paris_mou_banned"],"first_seen":"2026-09-24T11:38:49.104591+00:00",
 "last_seen":"2026-09-24T11:38:49.104591+00:00","last_change":"2026-09-24T11:38:49.104591+00:00","target":true}
{"id":"crown-380054154-sanction","schema":"Sanction","caption":"Banned from Paris MoU ports — Multiple detentions",
 "properties":{"entity":["crown-380054154"],"authority":["Paris MoU Banned"],
   "program":["Banned from Paris MoU ports — Multiple detentions"]},
 "datasets":["paris_mou_banned"],"first_seen":"2026-09-24T11:38:49.104591+00:00",
 "last_seen":"2026-09-24T11:38:49.104591+00:00","last_change":"2026-09-24T11:38:49.104591+00:00"}

Exemple : targets.nested.json

La même fiche dans le fichier imbriqué : une seule ligne, avec l’inscription à l’intérieur de properties.sanctions.

{"id":"crown-380054154","caption":"PELIKAN","schema":"Vessel",
 "properties":{"name":["PELIKAN"],"topics":["debarment"],"alias":["BALTIC ATLANT SHPG-LITHUANIA"],
   "imoNumber":["IMO6922169"],"notes":["…"],
   "sanctions":[{"id":"crown-380054154-sanction","schema":"Sanction",
     "caption":"Banned from Paris MoU ports — Multiple detentions",
     "properties":{"entity":["crown-380054154"],"authority":["Paris MoU Banned"],
       "program":["Banned from Paris MoU ports — Multiple detentions"]},
     "datasets":["paris_mou_banned"], "first_seen":"…","last_seen":"…","last_change":"…"}]},
 "referents":[],"datasets":["paris_mou_banned"],"first_seen":"…","last_seen":"…","last_change":"…","target":true}

Lecture des fichiers

Lisez une ligne à la fois; les plus grandes collections atteignent plusieurs gigaoctets (default : —).

import json

with open("targets.nested.json", encoding="utf-8") as f:
    for line in f:
        e = json.loads(line)
        names = e["properties"].get("name", []) + e["properties"].get("alias", [])
        programmes = [p for s in e["properties"].get("sanctions", [])
                      for p in s["properties"].get("program", [])]
        print(e["id"], e["schema"], names[0], programmes)
# group records that we have matched as the same party
jq -r 'select(.canonical_id) | [.canonical_id, .id, .caption] | @tsv' targets.nested.json | sort

Ce que les fichiers ne contiennent pas encore

  • Les adresses, pièces d’identité, liens de propriété, liens familiaux et d’association, fonctions occupées et adresses de portefeuilles de cryptomonnaie ne sont pas des entités ni des propriétés distinctes. Lorsqu’un éditeur les fournit, ils ne subsistent que sous forme de texte dans notes.
  • referents est toujours vide; les fusions apparaissent uniquement par l’entremise de canonical_id.
  • last_change correspond à la date de dernière confirmation, et non à une véritable date de modification.
  • Les types d’entités sont déduits lorsque la source n’en fournit aucun, et certains sont erronés; consultez la méthodologie.

Dernière mise à jour : 2026-10-03