Discover/theswiftcodes API
live

theswiftcodes APItheswiftcodes.com

Look up and validate SWIFT/BIC codes, IBANs, and US routing numbers across 205+ countries. Search banks by country, city, or institution name.

Endpoint health
verified 19h ago
get_swift_code_details
search_swift_codes
get_all_countries
get_swift_codes_by_bank
get_swift_codes_by_country
9/9 passing latest checkself-healing
Endpoints
9
Updated
22d ago

What is the theswiftcodes API?

This API exposes 9 endpoints covering SWIFT/BIC code lookup, IBAN validation, and US routing number verification sourced from theswiftcodes.com, which indexes data across approximately 205 countries. The get_swift_codes_by_country endpoint returns paginated bank records including swift_code, bank, city, and branch, while validate_swift_code and validate_iban return structured validation status alongside bank name, address, and checksum details.

Try it

No input parameters required.

api.parse.bot/scraper/ab1745a7-aa6a-45d7-bfcb-90aafaefec26/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/ab1745a7-aa6a-45d7-bfcb-90aafaefec26/get_all_countries' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace theswiftcodes-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: SWIFT Codes API — browse countries, look up codes, validate payments."""
from parse_apis.the_swift_codes_api import SwiftCodes, CountryIso, SwiftCodeNotFound

client = SwiftCodes()

# List available countries, take a few to show the catalog.
for country in client.countries.list(limit=3):
    print(country.name, country.slug)

# Construct a country by slug and browse its featured banks.
us = client.country("united-states")
for bank in us.banks.list(limit=3):
    print(bank.name, bank.slug)

# Get SWIFT codes for a bank, then inspect connection status.
bank = us.banks.list(limit=1).first()
if bank:
    for code in bank.swift_codes(limit=3):
        print(code.swift_code, code.bank_name, code.connection)

# Look up a specific SWIFT code's full details via the country sub-resource.
detail = us.swift_codes.get(swift_code="CHASUS33")
print(detail.bank_name, detail.address, detail.city, detail.postcode)

# Cascading search: find banks in a country using the CountryIso enum.
result = client.searchresults.search(country_iso=CountryIso.US, bank_name="Chase")
if result.cities:
    for entry in result.cities[:3]:
        print(entry.value)

# Validate a SWIFT code and print the outcome.
validation = client.swiftvalidations.validate(swift="CHASUS33")
print(validation.status, validation.bank, validation.swift_code_bic)

# Typed error handling: attempt to get a non-existent SWIFT code.
try:
    us.swift_codes.get(swift_code="XXXXXX99")
except SwiftCodeNotFound as exc:
    print(f"Not found: {exc.swift_code} in {exc.country_slug}")

print("exercised: countries.list / banks.list / bank.swift_codes / swift_codes.get / searchresults.search / swiftvalidations.validate")
All endpoints · 9 totalmissing one? ·

Get list of all countries with their slugs. Returns approximately 205 countries available on the site. Each country slug can be used to browse SWIFT codes or featured banks for that country.

Input

No input parameters required.

Response
{
  "type": "object",
  "fields": {
    "items": "array of country objects with name, url, and slug"
  },
  "sample": {
    "data": {
      "items": [
        {
          "url": "https://www.theswiftcodes.com/albania/",
          "name": "ALBANIA",
          "slug": "albania"
        },
        {
          "url": "https://www.theswiftcodes.com/united-states/",
          "name": "UNITED STATES",
          "slug": "united-states"
        }
      ]
    },
    "status": "success"
  }
}

About the theswiftcodes API

SWIFT Code Lookup and Search

The get_all_countries endpoint returns a list of ~205 countries, each with a slug field used as the country_slug parameter in downstream calls. get_swift_codes_by_country accepts that slug plus an optional page integer and returns up to 50 SWIFT code entries per page with total_pages metadata for iteration. For targeted lookups, get_swift_code_details accepts a specific swift_code and country_slug and returns bank_name, address, city, postcode, branch, and a connection field indicating Active or Passive status.

Search by Bank or City

search_swift_codes implements a cascading search over three parameters: country_iso (required, two-letter ISO code), bank_name (optional), and city_name (optional). Supplying only country_iso returns an array of banks. Adding bank_name returns matching cities. Including all three parameters returns an array of swift_codes. The get_featured_banks_by_country endpoint surfaces a curated list of prominent banks per country, returning a slug value usable in get_swift_codes_by_bank, which paginates all SWIFT codes for that institution including address, postcode, and connection status.

Validation Endpoints

validate_swift_code accepts a single swift string and returns a status of Valid or Invalid, the bank name, address, and a human-readable message. validate_iban returns status, country, checksum, bban, and account_number extracted from the IBAN. validate_routing_number is US-specific and returns bank, address, city, state, zip, and phone for recognized routing numbers. All three validation endpoints return an empty object when the input is not recognized.

Reliability & maintenanceVerified

The theswiftcodes API is a managed, monitored endpoint for theswiftcodes.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when theswiftcodes.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official theswiftcodes.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
19h ago
Latest check
9/9 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Verify a SWIFT/BIC code before initiating an international wire transfer, using validate_swift_code to confirm bank name and active status.
  • Build a bank directory for a fintech app by paginating get_swift_codes_by_country across all 205 countries.
  • Validate IBANs in a payment form using validate_iban to extract account_number, checksum, and country before submission.
  • Check US ACH routing numbers in a payment flow with validate_routing_number to surface bank name and address for user confirmation.
  • Power a bank autocomplete widget using search_swift_codes cascading through country, bank name, and city inputs.
  • Enumerate branch-level SWIFT codes for a specific institution with get_swift_codes_by_bank using a bank_slug from get_featured_banks_by_country.
  • Audit a dataset of international payment records by bulk-validating SWIFT codes and flagging any that return a Passive connection status.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does theswiftcodes.com have an official developer API?+
theswiftcodes.com does not publish an official public developer API. This Parse API provides structured programmatic access to the data available on the site.
What does the `connection` field in SWIFT code details mean?+
The connection field returned by get_swift_code_details and get_swift_codes_by_bank indicates whether the SWIFT participant is Active or Passive. An Active connection means the bank is a live SWIFT member; Passive generally means the code exists in the directory but the institution does not receive live SWIFT messages directly.
Does `search_swift_codes` require all three parameters?+
No. Only country_iso is required. Providing just country_iso returns a list of banks. Adding bank_name returns cities for that bank in the country. Only when country_iso, bank_name, and city_name are all provided does the response include the swift_codes array.
Does the API cover historical or deregistered SWIFT codes?+
The API reflects the data currently listed on theswiftcodes.com and does not expose a historical archive of deregistered or expired SWIFT codes. You can fork this API on Parse and revise it to add an endpoint targeting any historical data the site may surface.
Is IBAN validation available for all countries, or only specific regions?+
validate_iban accepts IBAN strings for any country that uses the IBAN standard and is represented in the site's data. Coverage aligns with the ~205 countries indexed. Routing number validation via validate_routing_number is US-only. Coverage for non-IBAN payment identifiers such as sort codes or BSB numbers is not currently part of the API. You can fork it on Parse and revise to add endpoints for those identifier types.
Page content last updated . Spec covers 9 endpoints from theswiftcodes.com.
Related APIs in FinanceSee all →
bank-codes.com API
Find SWIFT/BIC codes for international banks and Indian IFSC/MICR codes by searching across countries, banks, and branches. Quickly locate the exact bank codes you need for wire transfers and financial transactions worldwide.
theclearinghouse.org API
Access data from The Clearing House, including owner banks, RTP participating institutions, CHIPS network participant lookups, RTP network statistics, leadership team information, and the latest news and press releases.
caixabank.es API
Access CaixaBank's full catalogue of financial products — accounts, cards, loans, mortgages, savings, investments, insurance, and pension plans — along with real-time pricing, TAE/TIN interest rates, and branch or ATM locations across Spain.
banks.data.fdic.gov API
Search FDIC-insured banks by location or institution, and access detailed information about their financial performance, merger history, deposit demographics, and regulatory changes. Get comprehensive data on bank failures, acquisitions, and historical financial trends to research institutions and analyze the banking landscape.
thecompaniesapi.com API
Enrich your company database with 80+ data points per company, search by industry or company details, and discover email patterns to drive your business intelligence. Find verified company information, get pricing data, and ask contextual questions about any organization to fuel your sales, marketing, or research efforts.
ibba.org API
Search and find professional business brokers from the IBBA directory by location or name, accessing their contact information, business details, and specialties across over 3,000 verified profiles. Discover brokers in your area or filter by geographic regions and service specialties to connect with the right professional for your business needs.
projects.worldbank.org API
Search World Bank projects and procurement opportunities across all sectors and regions to find funding information and active tenders. Retrieve detailed project information, funding breakdowns, and procurement notices.
wise.com API
Get real-time exchange rates, convert between currencies, and check transfer fees directly from Wise.com. Access live pricing data, supported currency pairs, historical rate trends, and detailed currency information to make informed international money transfer decisions.