Machine-readable access · elucidate.co Markdown · llms.txt

For AI agents

Every page, also in Markdown

Each public page on elucidate.co has a Markdown version at the same address, with .md appended. It carries the page’s main content only. Navigation, scripts and forms are left out.

Access methods

.md
Suffix for any page address
Accept
text/markdown content negotiation
llms.txt
Curated index of the site
llms-full.txt
Core pages in one file

By address

Append .md to a page address

Add .md to the end of any page address to get its Markdown version. The home page is /index.md. An address that ends in a slash takes index.md.

PageMarkdown version
https://www.elucidate.co/https://www.elucidate.co/index.md
https://www.elucidate.co/elihttps://www.elucidate.co/eli.md
https://www.elucidate.co/blog/risk-based-pricing-bafthttps://www.elucidate.co/blog/risk-based-pricing-baft.md
https://www.elucidate.co/directory/deutsche-bank-ag-deutdeffhttps://www.elucidate.co/directory/deutsche-bank-ag-deutdeff.md

Pages of the Bank & Firm Directory follow the same rule, including its search results. How to address the directory is set out below.

By header

Or ask for Markdown with the Accept header

Request the normal page address with Accept: text/markdown. The response is the Markdown version, sent as text/markdown, with a Content-Location header that gives its .md address.

$ curl -H "Accept: text/markdown" https://www.elucidate.co/eli
---
title: "Eli – Autonomous Compliance Agent | Elucidate"
url: https://www.elucidate.co/eli
---

# Meet Eli. Your compliance never sleeps.
…

Browsers do not send this header, so they receive HTML as before. If a request ranks text/html above text/markdown, the response is HTML. Responses vary on Accept.

Discovery

Start from llms.txt

The site publishes an index for language models in the llms.txt format. Its links point to Markdown versions.

  • /llms.txt

    A curated index of the site: products, solutions, resources and company pages, each with a one-line summary.

  • /llms-full.txt

    The Markdown of the core pages in one file: products, solutions, company and resources. Each page is wrapped in a <doc> element that gives its address. Blog posts and press releases are not included. Fetch them individually as Markdown.

  • /sitemap.xml

    Every indexed page address, including each institution, branch code, country, register and group page of the directory.

  • In every page

    A <link rel="alternate" type="text/markdown"> element in the HTML head, and a “View as Markdown” link in the footer.

Format

What each Markdown file contains

Every file is generated from the published page, so the two always match. When you cite a page, use the url from its front matter.

Front matter

YAML with title, description and url, the canonical address of the HTML page.

Main content

Headings, text, lists, tables and links. Navigation, the footer, forms and scripts are removed.

Absolute links

Links give canonical page addresses. Append .md to follow one as Markdown.

Open to fetch

UTF-8 text/markdown, readable cross-origin. Each file names its HTML page as canonical, so search engines index the page.

Directory

Look up an institution by its identifier

The Bank & Firm Directory is one dataset of institutions. An institution is one entry in the directory: a BIC8 in Swift’s directory, or a firm on a tracked register that holds no BIC. Licences held by an institution with a BIC are shown on its page.

Each institution has one page, and each page has a Markdown version. The directory identifies institutions. It is not a risk assessment.

Institution pages

AddressPage
/directory/deutsche-bank-ag-deutdeffAn institution that holds a BIC: its name as a slug, then the BIC8.
/directory/deutsche-bank-ag-deutdeff-500A branch code: the institution’s address, then the three-character branch code.
/directory/wise-payments-canada-inc-a99cd1950ab3An institution that holds no BIC: its name as a slug, then its 12-character directory id.
/directory/DEUTDEFF
/directory/DEUTDEFF500
/directory/7LTWFZYICNSX8D621K86
/directory/a99cd1950ab3
A bare BIC8, BIC11, LEI or directory id. The page is served at that address and names the slug address as canonical.
/directory/M15193392A licence number or a name. It redirects (301) to the page.

An identifier or name shared by several institutions returns a list to choose from, for example /directory/wise-payments-limited. A licence held by an institution with a BIC redirects to the licences section of that institution’s page (#licences). Slugs follow the name, so store the identifier or the canonical address.

Every institution and branch page shows how to identify it in an ISO 20022 payment message (#iso20022), as fenced XML in the Markdown version. With a BIC, it gives the CBPR+ <FinInstnId> block (BIC, LEI, clearing code) and a full record that adds Swift’s name and address. Without one, the block holds the register’s name and address, the LEI and any matching clearing code.

Country, register and group pages

AddressPage
/directoryThe whole directory: how many institutions there are, where they are, and how they are identified and regulated.
/directory/country
/directory/country/de
All countries, and one page per country, keyed by the lower-case ISO 3166 code.
/directory/register
/directory/register/fca-emi
The tracked registers, and one page per register, keyed by the lower-case register code.
/directory/group
/directory/group/MLU0ZO3ML4LN2LL2TL39
Corporate groups as reported to GLEIF, 100 per page (?page=2), and one page per group, keyed by the upper-case LEI of its head.
/directory/search?q=wiseSearch with filters (see the parameters). Search pages are not indexed.
/directory/methodologyThe sources, how records are matched, what the data does not show and how to correct a record.

Append .md to any of these addresses for Markdown, for example /directory/country/de.md or /directory/search.md?q=wise, or send Accept: text/markdown. A redirect keeps the .md suffix.

Directory API

Search the directory as JSON

GET /api/directory/search takes the same parameters as the search page and returns JSON. It is open to cross-origin requests. Results cover active institutions unless you set status.

ParameterValues
qA name, BIC, LEI or licence number. On the search page, an identifier or a unique name with no other filter redirects to the institution’s page.
sourceTwo yes/no attributes: bic or nobic (holds a BIC), and register or noregister (is on a tracked register). Values of one attribute match either. The two attributes combine: source=bic,register returns institutions that hold a BIC and are on a tracked register.
typebank (credit institution), payments (payments and e-money), crypto, msb (money service business), financial (financial institution), nonfinancial (non-financial corporate).
regRegulation level: prudential (licensed), registered (small-firm registration), aml (AML registration only), none (not on a tracked register).
statusa (active, the default), i (marked inactive on its register) or all.
ccCountry, as an ISO 3166 code: the BIC country or a country where the institution holds a licence.
hqHead-office country, as published by the register.
registerRegister code, for example fca-emi.
actLicensed activity, for example remittance, fx, payments, emoney or crypto.
flagsanctioned, gsib, ssm, gpi, sepa, t2, swift, licensed, casp, mic, bankcode, lei. Every flag given must hold.
pageSearch page only: 25 results per page.
limit
offset
API only: 1–50 results (default 12), starting at offset.

Separate several values with commas: type=crypto,msb matches either type.

$ curl "https://www.elucidate.co/api/directory/search?q=TRWIGB2B"
{
  "query": "TRWIGB2B", "total": 1, "offset": 0,
  "results": [{
    "kind": "institution", "key": "TRWIGB2B", "name": "WISE PAYMENTS LIMITED",
    "cc": "GB", "country": "United Kingdom",
    "url": "/directory/wise-payments-limited-trwigb2b",
    "types": ["payments"], "reg": "prudential", "status": "A",
    "lei": "213800U4GNTXRFYZKG18", "registers": ["FCA-EMI"],
    "flags": ["gpi", "swift", "licensed", "lei"],
    "bic8": "TRWIGB2B", "branches": 0, "connectivity": "connected",
    "swiftType": "FIIN", "licences": 1, "link": "merged", "head": null,
    "sanctions": { "scope": "bic", "ofac": null, "eu": false, "country": null }
  }],
  "facets": { "source": {…}, "type": {…}, "reg": {…}, "status": {…}, … },
  "profile": { "total": 1, "bic": 1, "noBic": 0, "register": 1, "lei": 1, … }
}

What a response contains

FieldMeaning
total
offset
results
The number of matches, the offset of this batch and the results in it.
facetsCounts per value of each parameter. Each count applies every other filter.
profileThe whole matching set: how many institutions, how many hold a BIC (bic, noBic), are on a tracked register (register) or have an LEI mapped (lei), and counts by type, regulation level and region. Inactive matches are counted separately.
kind
key
institution: holds a BIC, and the key is its BIC8. firm: on a tracked register and holds no BIC, and the key is its directory id.
name, cc, country, urlThe name as published by Swift or the register, the country, and the page address. url is null for an institution listed without a page.
types, reg, statusType, regulation level, and A (active) or I (inactive on its register).
lei, registers, flagsThe LEI (null when none is mapped), the codes of the registers that list its licences, and its flags.
bic8, branches, connectivity, swiftType, licences, headInstitutions that hold a BIC: the BIC8, the number of branch codes, the connection to Swift, financial (FIIN) or non-financial (NFIN), the number of licences shown on its page, and the address of the page that shows its legal entity’s licences when that is another BIC’s page.
sanctionsInstitutions that hold a BIC only: scope (bic), the OFAC list that cites it (SDN or NON-SDN), whether the EU list cites it, and the country’s sanctions level (embargo or broad).
id, tradingNames, hq, licences, bics, mainLicence, statusDetail, inactiveSince, leiMethodInstitutions without a BIC: the directory id, trading names, head-office country, the number of licences and of BIC8s mapped to its LEI, the main licence (register, number, type, regulator, status), the register’s status text, the date it became inactive, and how the LEI was matched.
linkmerged: register entries of the same legal entity are merged into this page. same-lei: other institutions share its LEI, each on its own page. Otherwise null.

A response carries only these fields. Sanctions listings are matched on the BIC and its LEI. Institutions without a BIC are not screened, so their results have no sanctions field. A missing field is not a result: screen against the official lists before you rely on one.

Earlier addresses

The bank and firm pages moved into one section. Their earlier addresses redirect permanently (301).

Earlier addressNow
/bank-directory/directory
/bank/<page>
/firm/<page>
/directory/<page>
/bank
/firm
/directory/search
/api/banks/search
/api/firms/search
/api/directory/search
/og/bank/<key>.png/og/directory/<key>.png
/directory-sources
/directory/sources
/directory/methodology

Instructions

Instructions to give an agent

Add these lines to an agent’s system prompt or project instructions, for example AGENTS.md or CLAUDE.md.

To read www.elucidate.co, fetch pages as Markdown:
- append .md to the page URL, e.g. https://www.elucidate.co/eli.md
  (the home page is https://www.elucidate.co/index.md), or
- request the normal URL with the header "Accept: text/markdown".
Start from https://www.elucidate.co/llms.txt for an index of the site.
To look up a bank or regulated firm, fetch
https://www.elucidate.co/directory/<BIC8, BIC11 or LEI>.md, or query
https://www.elucidate.co/api/directory/search?q=<name or identifier> (JSON).

Questions

Talk to us about automated access

For questions about automated use of this site, or about the Elucidate platform API, contact our team.

Contact us