# EU Sanctions Map API

> EU Sanctions Map returns sanctions listings and country regimes as a workflow and API.

Get country sanctions returns regimes concerning a required country, with measures, legal acts, amendment dates and available listing counts.

- Page: https://fous.com/workflows/eu-sanctions-map
- Handle: `@eu-sanctions-map`
- Category: [Legal](https://fous.com/workflows/category/legal)
- Source website: https://sanctionsmap.eu
- Last verified: Sep 30, 2026
- Fous is not affiliated with EU Sanctions Map.

## Methods

### Check sanctions

Operation `check_sanctions`, version 1. 1 credit per call.

Check a person or organisation name against the EU consolidated financial sanctions list, with matching listings and linked legal acts. Name similarity is a screening aid, not identity confirmation; the linked legal act can be a later amendment rather than the original designation.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `name` | string | yes | `"Sberbank"` | Person or organisation to check, e.g. Arkady Rotenberg. |
| `type` | string | no | `"organisation"` | Restrict listings to a person or an organisation, e.g. person. |
| `max_results` | integer | no | `3` | Maximum matches returned, e.g. 20 (up to 100). |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "minLength": 2,
      "description": "Person or organisation to check, e.g. Arkady Rotenberg.",
      "examples": [
        "Sberbank",
        "Arkady Rotenberg",
        "zzzzzxnonexistent999"
      ]
    },
    "type": {
      "enum": [
        "any",
        "person",
        "organisation"
      ],
      "type": "string",
      "default": "any",
      "description": "Restrict listings to a person or an organisation, e.g. person.",
      "examples": [
        "organisation",
        "any"
      ]
    },
    "max_results": {
      "type": "integer",
      "default": 20,
      "maximum": 100,
      "minimum": 1,
      "description": "Maximum matches returned, e.g. 20 (up to 100).",
      "x-fous-developer": true,
      "examples": [
        3
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "name": "Sberbank",
      "type": "organisation",
      "max_results": 3
    },
    {
      "name": "Arkady Rotenberg"
    },
    {
      "name": "zzzzzxnonexistent999",
      "type": "any"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `matches` | array |  |  |
| `matches[].name` | string | `"Sberbank"` |  |
| `matches[].type` | string | `"organisation"` |  |
| `matches[].aliases` | array |  |  |
| `matches[].legal_act` | string or null | `"2022/1270 (OJ L193)"` |  |
| `matches[].nationality` | array |  |  |
| `matches[].listing_date` | string or null | `"2022-07-21"` |  |
| `matches[].date_of_birth` | string or null | `"1951-12-15"` |  |
| `matches[].legal_act_link` | string or null | `"https://eur-lex.europa.eu/legal-content/EN/TXT/PDF/?uri=OJ:L:2022:193:FULL&from=EN"` |  |
| `matches[].sanctions_regime` | string or null | `"Ukraine - Territorial integrity"` |  |
| `matches[].sanctions_map_link` | string | `"https://www.sanctionsmap.eu/#/main/details/36/members?search=%D0%A1%D0%B1%D0%B5%D1%80%D0%B1%D0%B0%D0%BD%D0%BA%2C%20Sber` |  |
| `matches[].eu_reference_number` | string or null | `"142064"` |  |
| `matches[].reasons_for_listing` | string or null |  |  |
| `summary` | string | `"1 possible match found on the EU consolidated list; verify identity against the listing"` | Plain-language screening result. |
| `match_found` | boolean | `true` | Whether any likely name match was found. |

**Example input**

```json
{
  "name": "Sberbank",
  "type": "organisation",
  "max_results": 3
}
```

**Example output**

```json
{
  "matches": [
    {
      "name": "Sberbank",
      "type": "organisation",
      "aliases": [
        "Сбербанк"
      ],
      "legal_act": "2022/1270 (OJ L193)",
      "nationality": [],
      "listing_date": "2022-07-21",
      "date_of_birth": null,
      "legal_act_link": "https://eur-lex.europa.eu/legal-content/EN/TXT/PDF/?uri=OJ:L:2022:193:FULL&from=EN",
      "sanctions_regime": "Ukraine - Territorial integrity",
      "sanctions_map_link": "https://www.sanctionsmap.eu/#/main/details/36/members?search=%D0%A1%D0%B1%D0%B5%D1%80%D0%B1%D0%B0%D0%BD%D0%BA%2C%20Sberbank",
      "eu_reference_number": "142064",
      "reasons_for_listing": null
    }
  ],
  "summary": "1 possible match found on the EU consolidated list; verify identity against the listing",
  "match_found": true
}
```

### Get country sanctions

Operation `get_country_sanctions`, version 1. 1 credit per call.

List EU Sanctions Map regimes concerning a country, with measures, legal acts, amendment dates and available person/entity counts. Counts are omitted when the map does not show member lists; only EU legal acts with EUR-Lex links are included.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `country` | string | yes | `"Russia"` | Country name, for example Russia, Iran or Myanmar. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "country"
  ],
  "properties": {
    "country": {
      "type": "string",
      "description": "Country name, for example Russia, Iran or Myanmar.",
      "examples": [
        "Russia",
        "Iran",
        "Austria"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "country": "Russia"
    },
    {
      "country": "Iran"
    },
    {
      "country": "Austria"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `note` | string or null | `"No sanctions regimes are listed for this country on the EU Sanctions Map."` |  |
| `country` | string | `"Austria"` | Country as named by the EU Sanctions Map. |
| `regimes` | array |  | Sanctions regimes concerning this country. |
| `regimes[].name` | string | `"Restrictive measures in view of the situation in Myanmar/Burma"` |  |
| `regimes[].measures` | array |  |  |
| `regimes[].listed_persons` | integer or null | `109` |  |
| `regimes[].listed_entities` | integer or null | `23` |  |
| `regimes[].main_legal_acts` | array |  |  |
| `regimes[].date_last_amended` | string or null | `"2026-04-29"` |  |
| `regimes[].sanctions_map_link` | string | `"https://www.sanctionsmap.eu/#/main/details/8"` |  |

**Example input**

```json
{
  "country": "Austria"
}
```

**Example output**

```json
{
  "note": "No sanctions regimes are listed for this country on the EU Sanctions Map.",
  "country": "Austria",
  "regimes": []
}
```

## Quick start

Call the API with a Fous API key (`FOUS_API_KEY`). To create one, turn on Developer mode in Fous Studio, then open Keys & connections → API keys (https://app.fous.com/keys).

```bash
# First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
: "${FOUS_API_KEY:?Set FOUS_API_KEY before running this example}"

curl 'https://api.fous.com/v1/query' \
  --fail-with-body --silent --show-error --max-time 120 \
  -H "Authorization: Bearer $FOUS_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "api": "@eu-sanctions-map",
  "visibility": "public",
  "operation": "check_sanctions",
  "version": 1,
  "input": {
    "name": "Sberbank",
    "type": "organisation",
    "max_results": 3
  },
  "response": {
    "format": "json"
  }
}'
```

```python
# Save as fous.py and run with python3 fous.py. No packages needed.
# First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
import json
import os
import urllib.error
import urllib.request

api_key = os.environ.get("FOUS_API_KEY")
if not api_key:
    raise RuntimeError("Set FOUS_API_KEY before running this example")

body = json.loads("{\n  \"api\": \"@eu-sanctions-map\",\n  \"visibility\": \"public\",\n  \"operation\": \"check_sanctions\",\n  \"version\": 1,\n  \"input\": {\n    \"name\": \"Sberbank\",\n    \"type\": \"organisation\",\n    \"max_results\": 3\n  },\n  \"response\": {\n    \"format\": \"json\"\n  }\n}")
request = urllib.request.Request(
    "https://api.fous.com/v1/query",
    data=json.dumps(body).encode("utf-8"),
    headers={
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
    },
    method="POST",
)
try:
    with urllib.request.urlopen(request, timeout=120) as response:
        result = json.load(response)
except urllib.error.HTTPError as error:
    raise RuntimeError(f"HTTP {error.code}: {error.read().decode('utf-8', errors='replace')}") from error
if result.get("success") is False:
    raise RuntimeError(result.get("error", {}).get("message", "Request failed"))
print(json.dumps(result["data"]["output"], indent=2))
```

```typescript
// Save as fous.mts and run with npx tsx fous.mts.
// First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
const apiKey = process.env.FOUS_API_KEY;
if (!apiKey) throw new Error("Set FOUS_API_KEY before running this example");

const response = await fetch("https://api.fous.com/v1/query", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  signal: AbortSignal.timeout(120_000),
  body: JSON.stringify({
  "api": "@eu-sanctions-map",
  "visibility": "public",
  "operation": "check_sanctions",
  "version": 1,
  "input": {
    "name": "Sberbank",
    "type": "organisation",
    "max_results": 3
  },
  "response": {
    "format": "json"
  }
}),
});
type ApiResult = { success: boolean; data?: { output: unknown }; error?: { message: string } };
const result: ApiResult = await response.json();
if (!response.ok || result.success === false) {
  throw new Error(result.error?.message ?? `HTTP ${response.status}`);
}
if (!result.data) throw new Error("Missing API response data");
console.log(result.data.output);
```

Or describe the data in plain language: send `{"api":"@eu-sanctions-map","prompt":"Describe the data you need, with every detail"}` to the same URL. Fous fills in the input, runs the method that fits and returns only the fields you asked for; `data.route.calls[].request` is the exact call it made. Routing is free; the run costs the same.

## Use cases

- Screen names against the EU consolidated financial sanctions list.
- Review likely matches and their listing details.
- Identify sanctions measures concerning a country.
- Review legal acts and regime amendment dates.

## FAQ

### Is Fous affiliated with EU Sanctions Map?

No. Fous is not affiliated with EU Sanctions Map. This workflow reads the public sanctionsmap.eu website and returns its data.

### How much does it cost?

Each run costs 1 credit. With pay-as-you-go, a credit costs 1¢; monthly plans cost less per credit.

### Do I need a EU Sanctions Map account?

No. You only need a Fous account.

### How current is the data?

Fous gets the data from sanctionsmap.eu when you run it; repeating the same request within a day may return the saved result. Fous checks this workflow automatically; it last passed a check on Sep 30, 2026.

### Does a person or organisation name have a likely match?

Check sanctions returns whether any likely name match was found, along with matching listings. Name similarity is a screening aid, not identity confirmation.

### What sanctions regimes concern a country?

Get country sanctions returns regimes concerning the named country, including measures and legal acts.

### When was a country’s sanctions regime last amended?

Get country sanctions returns the amendment date when available.

## Related

- [OFAC API](https://fous.com/workflows/ofac.md): U.S. Treasury sanctions list search for SDN and non-SDN entries.
- [UN Security Council Sanctions API](https://fous.com/workflows/un-security-council-sanctions.md): Check names against the UN Security Council Consolidated List.
- [GOV.UK API](https://fous.com/workflows/gov-uk.md): GOV.UK provides summarized current travel advice with linked details, published regional holidays (none for unpublished years), and possible matches on the current UK Sanctions List.
- [EUR-Lex API](https://fous.com/workflows/eur-lex.md): EUR-Lex provides official EU legislation, relevance-ranked filtered searches, and article text from the latest consolidation when available, with stated general application dates.
- [Eurostat API](https://fous.com/workflows/eurostat.md): Official European statistics from Eurostat.
- [IMF API](https://fous.com/workflows/imf.md): IMF economic data provides country and regional forecasts with actual or forecast labels, and country rankings by World Economic Outlook indicators, excluding groups and missing values.
- [OpenStreetMap API](https://fous.com/workflows/openstreetmap.md): OpenStreetMap returns place coordinates, address details, nearby readable place information, and ordered place search results from contributor-created data; results reflect mapped features and may be incomplete or differ from landmarks.
- [Passport Index API](https://fous.com/workflows/passport-index.md): Passport Index provides passport and destination visa information, including entry guidance, permitted stays, rankings and mobility scores; travelers should confirm current entry rules with the embassy.
- [All Legal workflows](https://fous.com/workflows/category/legal)
