Endpoint
| Method | GET |
| URL | https://swiftcodecheck.com/api/swift/{code} |
| Auth | None required for the free per-IP allowance. An IPNOVA API key (free account at api.ipnova.com) applies your plan allowance instead: send it as the X-Api-Key header or the ?key= query parameter. Keyed responses carry X-Credits-Remaining and X-Credits-Used. |
| Rate limit | 100 requests a day and 30 a minute, per IP (see X-RateLimit-Remaining header) |
| CORS | Access-Control-Allow-Origin: *, call it straight from the browser |
| Caching | Responses cacheable for 24h (Cache-Control: max-age=86400) |
| OpenAPI | Machine-readable spec at /openapi.json |
Plans
One key. Twelve APIs.
A free IPNOVA API account gives you 5,000 lookups a month across every API below, 60 a minute, no card, for evaluation and small projects. Paid plans from $19 a month for production volumes, with a commercial licence and a hard cap instead of overage billing.
Takes a minute. Send it as X-Api-Key or ?key=.
Without a key this API answers 100 requests a day per IP address, for evaluation and personal use. Try it: curl https://swiftcodecheck.com/api/swift/DEUTDEFF
Example Request
| curl | curl https://swiftcodecheck.com/api/swift/DEUTDEFF |
| JavaScript | const r = await fetch('https://swiftcodecheck.com/api/swift/DEUTDEFF').then(r => r.json()); |
| PHP | $r = json_decode(file_get_contents('https://swiftcodecheck.com/api/swift/DEUTDEFF'), true); |
| Python | r = requests.get('https://swiftcodecheck.com/api/swift/DEUTDEFF').json() |
Response Fields
| Field | Type | Description |
|---|---|---|
success | boolean | true when the code was found |
data.swift_code | string | The matched code (canonical form) |
data.bank | string | Bank / institution name |
data.branch | string | Branch name (empty = head office) |
data.city / data.country / data.country_code | string | Location details |
data.bank_code / location_code / branch_code | string | Code structure breakdown |
data.head_office | boolean | Whether this is a head office code |
page | string | Human-readable page for this code |
Errors
Every non-200 response uses the same envelope: success: false, an error flag, a machine-readable reason, a human message, and a docs link back to this page. A 404 for a structurally valid code also carries valid_format: true, so you can still treat it as "format OK, existence unverified".
| Status | Reason | Meaning |
|---|---|---|
400 | invalid_input | Not a valid SWIFT/BIC shape |
401 | invalid_key | The supplied API key is unknown or revoked |
404 | not_found | Code not in the dataset |
429 | rate_limit | Too many requests in the last minute (Retry-After: 60) |
429 | daily_limit | Keyless per-IP daily cap reached |
429 | credits_exhausted | Keyed monthly allowance used up |
Example, a code not in the dataset:
{"success": false, "error": true, "reason": "not_found", "message": "SWIFT code not in the public dataset.", "docs": "https://swiftcodecheck.com/swift-code-api", "valid_format": true}
Fair Use & Attribution
- 100 requests per day per IP. Responses are cacheable for 24 hours, so cache on your side; a free IPNOVA API key raises the limit.
- Always advise your users to verify codes with the receiving bank before transferring money.
Frequently Asked Questions
Is the API really free?
Yes. No API key, no registration, no credit card. Each IP address can make up to 100 requests per day, and CORS is enabled for direct browser use.
Can I validate codes that aren't in the dataset?
Yes. A 404 response with valid_format: true means the code is structurally valid ISO 9362 but not in our directory. Treat it as "format OK, existence unverified".
Can I test it right now?
Try /api/swift/DEUTDEFF in your browser, or check CHASUS33 and HBUKGB4B on the site.
How do I call the SWIFT code API?
Send a GET request to https://swiftcodecheck.com/api/swift/{code}, for example https://swiftcodecheck.com/api/swift/DEUTDEFF. The response is JSON.
What data does the API return?
The bank name, branch, city, country, and the full code breakdown (bank code, country, location, branch), plus whether the code is a head office or branch code.
How many SWIFT codes are covered?
More than 112,000 SWIFT/BIC codes across 232 countries and territories, from an openly licensed dataset.