{"name":"IBANforge API v1","documentation":"https://api.ibanforge.com/openapi.json","trial":{"endpoint":"POST /v1/iban/validate","weekly_limit":25,"period":"week","scope":"per client source address (IPv6 counted per /64)","resets":"Monday 00:00 UTC","resets_at":"2026-10-12T00:00:00Z","exhausted":"HTTP 402, cause.reason = \"trial_exhausted\"","note":"No key, no wallet, no e-mail: a real iban in the body is served in full. Counted in the service database, so it survives a redeploy.","mcp_weekly_limit":25,"mcp_period":"week"},"discovery":{"x402":"https://api.ibanforge.com/.well-known/x402","mcp":"https://api.ibanforge.com/mcp","agents":"https://api.ibanforge.com/.well-known/agents.json","llms":"https://api.ibanforge.com/llms.txt"},"if_you_cannot_call":{"title":"If you cannot call the API","note":"If you can open a web address but cannot send a POST (no code execution, no MCP connector), these pages hold real answers of the API, each with its date, and all of them open with a plain GET.","real_answers":[{"url":"https://api.ibanforge.com/v1/demo","shows":"the full validation, computed by the API when the address is opened (served_at gives the instant): a German bank code, a former Credit Suisse IID (04835) and the official example IBANs of Switzerland, Belgium and Austria, each with its register's answer and its as_of"},{"url":"https://ibanforge.com/iban/ch","shows":"the Swiss IBAN format, with the API's answer for the official example CH93 0076 2011 6238 5295 7 and the date that answer was captured"},{"url":"https://ibanforge.com/blog/2026-08-06-example-ibans-unallocated-bank-codes","shows":"why the official example IBANs of Belgium, Switzerland and Austria pass mod-97 and still point at bank codes their register does not allocate (article of 6 August 2026)"},{"url":"https://ibanforge.com/blog/2026-09-07-bankleitzahl-pruefen-per-api","shows":"three real answers on German bank codes, field by field (article of 7 September 2026)"},{"url":"https://ibanforge.com/blog/2026-09-14-schweizer-iban-pruefen","shows":"three real answers on Swiss IBANs, field by field (article of 14 September 2026)"}],"rule":"Do not simulate answers from the API: quote these real ones, with the date each carries (served_at, as_of, or the date of the page).","connector":"To get answers on the IBANs of your user, ask them to add https://api.ibanforge.com/mcp as a custom connector in their assistant; where to click, assistant by assistant: https://ibanforge.com/docs/mcp. A connector with no key draws on the same keyless allowance as any other caller, counted per source address. In Claude its calls leave from Anthropic's cloud, not from the user's device (Anthropic's documentation), so that allowance is shared with other users and may already be spent; other assistants were not checked by us. The hosted endpoint reads no key: to use one, run the npm package ibanforge-mcp in a desktop client with IBANFORGE_API_KEY set, or call the REST API with it (a POST to https://api.ibanforge.com/v1/keys/generate with no body returns a key, no e-mail)."},"support":{"email":"support@ibanforge.com","issues":"https://github.com/cammac-creator/ibanforge/issues","errors":"https://ibanforge.com/docs/errors","status":"https://ibanforge.com/status","sla":"https://ibanforge.com/legal/sla","sla_scope":"Editor/OEM subscriptions only"},"endpoints":{"paid":["POST /v1/iban/validate","POST /v1/iban/batch","GET /v1/bic/:code","POST /v1/iban/compliance","GET /v1/ch/clearing/:iid","POST /v1/credits/buy/:bundle"],"free":["GET /v1/demo","GET /v1/iban/format","GET /v1/iban/structure","GET /v1/reference/validate","POST /v1/address/check","GET /v1/credits/bundles","POST /v1/keys/generate","POST /v1/keys/claim","POST /v1/keys/device","POST /v1/keys/device/token","GET /v1/keys/usage","GET /v1/keys/report"],"account":["POST /v1/account/code","POST /v1/account/session","GET /v1/account/overview","GET /v1/account/keys/report","GET /v1/account/receipts","GET /v1/account/receipt","POST /v1/account/logout"]},"free_tier":{"description":"25 requests/month in normal operation — no e-mail, no card; protective limits may apply","signup":"POST https://api.ibanforge.com/v1/keys/generate with no body at all","usage":"Add header: Authorization: Bearer ifk_your_key_here"},"claim_to_200":{"description":"Keep the same key, prefix and history: an e-mail code grants 200 requests/month; a qualifying payment grants them once","endpoint":"POST https://api.ibanforge.com/v1/keys/claim","auth":"Send the key as \"Authorization: Bearer ifk_...\", never in the body. The key must have served at least one call.","by_email":"Ask your human: \"Use my address you@company.com to create a free IBANforge key\". Never send an address your human has not handed you for this purpose. POST {\"email\":\"...\"} returns 202 and mails a 6-digit code; repeat with the same address and \"code\" to claim 200 requests every month.","by_agent_approval":"Available inside an MCP client, and it is a separate approval journey, not a claim of an existing key: call request_api_key, show the short code and the link to your human, then call poll_api_key. A human approves in a browser, the agent never handles an address, and the key is handed over exactly once. Both tools are free and keep answering after the free allowance is spent.","by_payment":"Qualifying x402 pay-per-call payments settled while presenting the key grant 200 requests ONCE, with no monthly renewal and no address; buying a credit pack with the key presented recharges it and grants nothing free."},"buy_credits_by_card":{"description":"A separate purchase that lands on the key you already hold: the credits recharge it, nothing to change in your integration. Without a key, the pack is a new key.","endpoint":"The recharge links of your key (under `topup` in GET /v1/keys/usage, and in a 402 served to that key) — or https://ibanforge.com/pricing for a new key (card, paid by your human) — or POST https://api.ibanforge.com/v1/credits/buy/1k in USDC (also 5k, 25k)","auth":"No e-mail needed. A recharge link names the key by a reference, never by the key itself, so the key never enters a URL. The USDC route is paid per call with x402, the key presented as usual. A card checkout opened from the API (POST /v1/keys/checkout) is planned, not available yet: do not call it.","human_step":"Show your human the recharge link of your key, or https://ibanforge.com/pricing when you hold no key. They enter their own address on Stripe. Treat any key or secret you are handed as a secret: never put it in a URL.","collect":"A recharge adds credits that never expire to the same key once the payment settles. Without a key, the pack is a SEPARATE key delivered after payment. Collecting it from the API with a secret nonce in the body is planned, not available yet."}}