# EU Consolidated Sanctions Tracker (`nexgendata/eu-consolidated-sanctions-tracker`) Actor

Track the EU Financial Sanctions Database consolidated list. Returns normalized JSON with names, aliases, type, regulation programme, dates, passport/ID, and addresses for AML/KYC, EU banks, and EU compliance.

- **URL**: https://apify.com/nexgendata/eu-consolidated-sanctions-tracker.md
- **Developed by:** [NexGenData](https://apify.com/nexgendata) (community)
- **Categories:** Business
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $50.00 / 1,000 sanctioned entities

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## EU Consolidated Sanctions Tracker

The **canonical EU Financial Sanctions Database scraper for Apify.** Downloads the EU Consolidated Sanctions List directly from `webgate.ec.europa.eu` (the European External Action Service's public Financial Sanctions File), groups the flat CSV by entity, and returns normalized JSON ready for AML/KYC screening pipelines, EU bank onboarding, payment compliance, and trade due diligence.

### 📊 Sample Output

[![EU Consolidated Sanctions Tracker sample output — EU Consolidated Sanctions Tracker, premium API, JSON output, NexGenData premium dataset for analysts, hedge funds, compliance, and research teams](https://api.apify.com/v2/key-value-stores/8gLgXMBveEI1tTz1z/records/eu-consolidated-sanctions-tracker-output.png)](https://apify.com/nexgendata/eu-consolidated-sanctions-tracker)

The EU consolidated sanctions list is the master list every EU-regulated financial institution, payment processor, exporter, and trade-finance counterparty is required to screen against under Council Regulations implementing EU restrictive measures. It covers every active EU sanctions regime: Russia (RUS / UKR), Belarus (BLR), Iran (IRN), Syria (SYR), DPRK, Venezuela (VEN), Zimbabwe (ZWE), Libya (LBY), Cyber-EO (CYBER), Counter-Terrorism (TERR), and dozens more.

### What you get per sanctioned entity

Every record returned by this actor follows a normalized cross-source schema (same shape as our [OFAC SDN](https://apify.com/nexgendata/ofac-sdn-watchlist-scraper?fpr=2ayu9b), [UN](https://apify.com/nexgendata/un-sanctions-consolidated-tracker?fpr=2ayu9b), and [UK HMT](https://apify.com/nexgendata/uk-hmt-financial-sanctions-tracker?fpr=2ayu9b) sanctions trackers):

| Field | Description |
|---|---|
| `entity_name` | Primary listed name (first NameAlias_WholeName encountered) |
| `entity_aliases` | All additional WholeName aliases for this Entity_LogicalId |
| `entity_type` | Individual (EU code `P`) or Entity (EU code `E`) |
| `sanctioning_authority` | Always `EU_COUNCIL` for this actor |
| `program_name` | Entity_Regulation_Programme (e.g. UKR, BLR, IRN, TERR) |
| `listed_date` | ISO Entity_DesignationDate (or regulation entry-into-force fallback) |
| `nationality` | Birth-country aggregate (EU schema has no separate citizenship column) |
| `country_of_origin` | Address country or birth country |
| `address` | All Address_* rows joined |
| `date_of_birth` | Composed from BirthDate_BirthDate or Y/M/D components |
| `passport_number` | All Identification rows with type 'Passport' |
| `id_number` | All other Identification rows with type label |
| `eu_reference_number` | EU's unique reference (e.g. EU.RU.000123) |
| `regulation_number` | The Council Regulation number listing the entity |
| `un_reference_id` | UN reference cross-link when present |
| `source_url` | The Entity_Regulation_PublicationUrl when populated, else the FSD CSV endpoint |

### Input — every filter is optional

```json
{
  "entity_search": "rosneft",
  "sanctioning_program": "UKR",
  "entity_type": "Entity",
  "maxResults": 100
}
````

- `entity_search` — case-insensitive substring match against name and aliases
- `sanctioning_program` — substring match against EU regulation programme code
- `entity_type` — `all`, `Individual`, or `Entity`
- `maxResults` — cap on output (1–5000, default 100)

### Use cases

- **EU bank onboarding & KYC** — fulfill Council Regulation screening obligations during CIP / CDD
- **EU payment compliance** — pre-screen SEPA / SWIFT counterparties for EU restrictive-measure exposure
- **EU exporter compliance** — block shipments to EU-designated entities (dual-use export controls)
- **Crypto exchanges with EU users** — comply with MiCA / EU AML directives
- **EU M\&A due diligence** — vet targets and beneficial owners under EU sanctions regimes
- **EU government procurement** — verify suppliers against EU restrictive measures
- **Trade-finance / commodities desks** — pre-clear EU counterparty exposure

### Cross-sell: the Sanctions Quartet

This actor is one of four direct-download sanctions scrapers built on a single shared engineering template. Real-world AML programs screen against multiple authority lists in parallel — buy them as a bundle:

- [OFAC SDN Watchlist Scraper](https://apify.com/nexgendata/ofac-sdn-watchlist-scraper?fpr=2ayu9b) — US Treasury OFAC list
- [UN Sanctions Consolidated Tracker](https://apify.com/nexgendata/un-sanctions-consolidated-tracker?fpr=2ayu9b) — UN Security Council consolidated list
- [EU Consolidated Sanctions Tracker](https://apify.com/nexgendata/eu-consolidated-sanctions-tracker?fpr=2ayu9b) — **you are here**
- [UK HMT Financial Sanctions Tracker](https://apify.com/nexgendata/uk-hmt-financial-sanctions-tracker?fpr=2ayu9b) — UK Treasury OFSI consolidated list

### Why this actor vs. the alternatives

| Option | Cost | Schema stability | Auto-update | API access | Maintenance |
|---|---|---|---|---|---|
| **EU Consolidated Sanctions Tracker (this)** | $0.05/entity | Stable normalized + grouped by entity | Daily (run on schedule) | Apify REST / Webhooks | Zero — fully managed |
| Raw EU FSD CSV | Free | 118-column flat CSV requiring grouping | Manual download | None | You parse + group, you maintain |
| Refinitiv World-Check | $30K+/yr enterprise | Stable | Real-time | REST | Contract negotiation |
| LexisNexis Bridger | $20K+/yr enterprise | Stable | Real-time | REST | Contract negotiation |
| ComplyAdvantage | $5K+/mo | Stable | Real-time | REST | Contract negotiation |

### Data freshness

The European External Action Service updates the FSD every time a new Council Regulation is adopted. Schedule this actor daily during periods of active regulation (e.g. fresh Russia/Ukraine sanctions packages) and weekly otherwise.

### Source

This actor pulls from the official EU FSD CSV endpoint with the documented public token:

```
https://webgate.ec.europa.eu/fsd/fsf/public/files/csvFullSanctionsList_1_1/content?token=dG9rZW4tMjAxNw
```

Token `dG9rZW4tMjAxNw` is the documented public token (base64 of `token-2017`) maintained by DG FISMA — no authentication, no rate limit, no proxy required.

***

Built by [NexGenData](https://apify.com/nexgendata?fpr=2ayu9b). Try [Apify free](https://www.apify.com/?fpr=2ayu9b).

# Actor input Schema

## `entity_search` (type: `string`):

Case-insensitive substring match against the entity name and any aliases. Leave empty to return all entries. Example: 'rosneft' or 'lukashenko'.

## `sanctioning_program` (type: `string`):

Case-insensitive substring match against the EU regulation programme code (e.g. UKR, BLR, RUS, IRN, SYR, CYBER, TERR, TUR, VEN, ZWE, COD, AFG, IRQ, SDN, SOM, LBY, MMR). Leave empty for all programmes.

## `entity_type` (type: `string`):

Restrict to a single EU entity type: Individual (Person), Entity (Enterprise / Organization), or 'all' for no filter.

## `maxResults` (type: `integer`):

Maximum number of sanctioned entity records to return after filters are applied. Range 1-5000. Default 100.

## Actor input object example

```json
{
  "entity_search": "",
  "sanctioning_program": "",
  "entity_type": "all",
  "maxResults": 100
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "entity_search": "",
    "sanctioning_program": "",
    "entity_type": "all",
    "maxResults": 100
};

// Run the Actor and wait for it to finish
const run = await client.actor("nexgendata/eu-consolidated-sanctions-tracker").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "entity_search": "",
    "sanctioning_program": "",
    "entity_type": "all",
    "maxResults": 100,
}

# Run the Actor and wait for it to finish
run = client.actor("nexgendata/eu-consolidated-sanctions-tracker").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "entity_search": "",
  "sanctioning_program": "",
  "entity_type": "all",
  "maxResults": 100
}' |
apify call nexgendata/eu-consolidated-sanctions-tracker --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=nexgendata/eu-consolidated-sanctions-tracker",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "EU Consolidated Sanctions Tracker",
        "description": "Track the EU Financial Sanctions Database consolidated list. Returns normalized JSON with names, aliases, type, regulation programme, dates, passport/ID, and addresses for AML/KYC, EU banks, and EU compliance.",
        "version": "0.0",
        "x-build-id": "NruPcGmVA6Rxd1t5I"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/nexgendata~eu-consolidated-sanctions-tracker/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-nexgendata-eu-consolidated-sanctions-tracker",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/nexgendata~eu-consolidated-sanctions-tracker/runs": {
            "post": {
                "operationId": "runs-sync-nexgendata-eu-consolidated-sanctions-tracker",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/nexgendata~eu-consolidated-sanctions-tracker/run-sync": {
            "post": {
                "operationId": "run-sync-nexgendata-eu-consolidated-sanctions-tracker",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "entity_search": {
                        "title": "Entity name search (substring)",
                        "type": "string",
                        "description": "Case-insensitive substring match against the entity name and any aliases. Leave empty to return all entries. Example: 'rosneft' or 'lukashenko'.",
                        "default": ""
                    },
                    "sanctioning_program": {
                        "title": "Sanctioning programme code (substring)",
                        "type": "string",
                        "description": "Case-insensitive substring match against the EU regulation programme code (e.g. UKR, BLR, RUS, IRN, SYR, CYBER, TERR, TUR, VEN, ZWE, COD, AFG, IRQ, SDN, SOM, LBY, MMR). Leave empty for all programmes.",
                        "default": ""
                    },
                    "entity_type": {
                        "title": "Entity type",
                        "enum": [
                            "all",
                            "Individual",
                            "Entity"
                        ],
                        "type": "string",
                        "description": "Restrict to a single EU entity type: Individual (Person), Entity (Enterprise / Organization), or 'all' for no filter.",
                        "default": "all"
                    },
                    "maxResults": {
                        "title": "Maximum results",
                        "minimum": 1,
                        "maximum": 5000,
                        "type": "integer",
                        "description": "Maximum number of sanctioned entity records to return after filters are applied. Range 1-5000. Default 100.",
                        "default": 100
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
