Skip to main content
The Office of Foreign Assets Control, part of the US Treasury, publishes the parties that US persons may not deal with. The Specially Designated Nationals and Blocked Persons list is the well-known one, and a consolidated list carries the other programs. Each party comes with every name OFAC knows it by, its addresses, the programs it is designated under, and OFAC’s own note, which is where dates and places of birth, passport, tax and registration numbers are written. Both lists, brought up to date every day and searchable across primary names and aliases at once. A party OFAC delists stops matching the same day.
The whole source, organized and ready to query: every endpoint on this page answers in milliseconds. Every response carries as_of: how current the data is. How datasets work.

Search sanctioned parties

POST /us/ofac/sanctions-search/v1 Dataset Searches both lists by any combination of name or alias, list, party type, sanctions program and country.
Returns as_of (how current the data is), the applied filters, total (matches across every page), page, per_page, total_pages, count and parties[], by name. Every party carries id (the key, e.g. sdn-36), list (sdn or non_sdn), entity_number, name (LAST, First for a person), party_type (individual, entity, vessel or aircraft), programs[] (the sanctions programs, e.g. RUSSIA-EO14024, SDGT, CUBA), title, remarks (OFAC’s own note, which carries dates and places of birth, passport, tax and registration numbers), vessel (call sign, type, tonnage, flag and owner, for a vessel), aliases[] ({ type, name, remarks }, where the type is aka, fka or nka), alias_names[], addresses[] ({ address, city_state_province, country, remarks }) and countries[]. Empty fields are null. OFAC writes a person’s name last name first, and records most identifying detail as prose in remarks rather than as fields.
The search matches the party’s primary name and every alias, word by word and without stemming, so query finds a party under any name OFAC records for it. Brought up to date daily; a party OFAC delists stops matching.
A name match is a starting point, not a determination. OFAC’s own guidance is to confirm a hit against the party’s other identifiers before acting on it, and the list carries many similar names.

One party

POST /us/ofac/sanctioned-party/v1 Dataset Resolves one sanctioned party by its id and returns the full record.
Returns found, id, as_of and party (null when not found). Every party carries id (the key, e.g. sdn-36), list (sdn or non_sdn), entity_number, name (LAST, First for a person), party_type (individual, entity, vessel or aircraft), programs[] (the sanctions programs, e.g. RUSSIA-EO14024, SDGT, CUBA), title, remarks (OFAC’s own note, which carries dates and places of birth, passport, tax and registration numbers), vessel (call sign, type, tonnage, flag and owner, for a vessel), aliases[] ({ type, name, remarks }, where the type is aka, fka or nka), alias_names[], addresses[] ({ address, city_state_province, country, remarks }) and countries[]. Empty fields are null. OFAC writes a person’s name last name first, and records most identifying detail as prose in remarks rather than as fields.
An id no list carries returns found: false with HTTP 200, not an error. That is also the answer for a party OFAC has delisted.

Full reference

Schemas, all response fields, and an interactive playground.