@apifreaks/openapi-specs 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/dist/index.cjs +131 -0
  2. package/dist/index.d.cts +140 -3
  3. package/dist/index.d.ts +140 -3
  4. package/dist/index.js +129 -0
  5. package/dist/specs/commodity/commodity-fluctuation.yaml +225 -0
  6. package/dist/specs/commodity/commodity-prices.yaml +236 -0
  7. package/dist/specs/commodity/commodity-symbols.yaml +159 -0
  8. package/dist/specs/commodity/commodity-time-series.yaml +238 -0
  9. package/dist/specs/commodity/historical-commodity-prices.yaml +208 -0
  10. package/dist/specs/currency/currency-converter.yaml +193 -0
  11. package/dist/specs/currency/currency-fluctuation.yaml +211 -0
  12. package/dist/specs/currency/currency-historical-data-limit.yaml +112 -0
  13. package/dist/specs/currency/currency-rate.yaml +173 -0
  14. package/dist/specs/currency/currency-supported.yaml +176 -0
  15. package/dist/specs/currency/currency-symbols.yaml +115 -0
  16. package/dist/specs/currency/currency-time-series.yaml +232 -0
  17. package/dist/specs/currency/geolocalized-currency-conversion.yaml +214 -0
  18. package/dist/specs/currency/historical-currency-converter.yaml +195 -0
  19. package/dist/specs/currency/historical-currency-rate.yaml +180 -0
  20. package/dist/specs/dns/bulk-dns-lookup.yaml +484 -0
  21. package/dist/specs/dns/dns-history-lookup.yaml +451 -0
  22. package/dist/specs/dns/dns-lookup.yaml +360 -0
  23. package/dist/specs/dns/reverse-dns-lookup.yaml +338 -0
  24. package/dist/specs/domain/bulk-domain-checker.yaml +198 -0
  25. package/dist/specs/domain/domain-search-with-suggestions.yaml +196 -0
  26. package/dist/specs/domain/domain-search.yaml +149 -0
  27. package/dist/specs/domain/subdomain-lookup.yaml +251 -0
  28. package/dist/specs/email-validation/bulk-email-validation.yaml +403 -0
  29. package/dist/specs/email-validation/email-checker.yaml +451 -0
  30. package/dist/specs/financial/bulk-vat-rates-country.yaml +250 -0
  31. package/dist/specs/financial/financial-apis-supported-countries.yaml +152 -0
  32. package/dist/specs/financial/iban-validation.yaml +270 -0
  33. package/dist/specs/financial/swift-code-finder.yaml +146 -0
  34. package/dist/specs/financial/swift-code-lookup.yaml +156 -0
  35. package/dist/specs/financial/vat-number-validation.yaml +205 -0
  36. package/dist/specs/financial/vat-rates-by-ip.yaml +200 -0
  37. package/dist/specs/financial/vat-rates-country.yaml +212 -0
  38. package/dist/specs/general/usage-credits.yaml +188 -0
  39. package/dist/specs/geocoding/forward-geocoding.yaml +292 -0
  40. package/dist/specs/geocoding/reverse-geocoding.yaml +237 -0
  41. package/dist/specs/geodb/administrative-units-details.yaml +180 -0
  42. package/dist/specs/geodb/administrative-units-levels.yaml +140 -0
  43. package/dist/specs/geodb/administrative-units.yaml +168 -0
  44. package/dist/specs/geodb/cities.yaml +209 -0
  45. package/dist/specs/geodb/countries-details.yaml +207 -0
  46. package/dist/specs/geodb/countries.yaml +199 -0
  47. package/dist/specs/geodb/flags-supported.yaml +119 -0
  48. package/dist/specs/geodb/flags.yaml +170 -0
  49. package/dist/specs/geodb/regions.yaml +76 -0
  50. package/dist/specs/geodb/subregions.yaml +158 -0
  51. package/dist/specs/ip-intelligence/bulk-ip-lookup.yaml +895 -0
  52. package/dist/specs/ip-intelligence/bulk-ip-threat-intelligence.yaml +310 -0
  53. package/dist/specs/ip-intelligence/ip-locator.yaml +708 -0
  54. package/dist/specs/ip-intelligence/ip-threat-intelligence.yaml +230 -0
  55. package/dist/specs/other/astronomy-data.yaml +632 -0
  56. package/dist/specs/pdf/delete-pdf-page.yaml +193 -0
  57. package/dist/specs/pdf/linearize-pdf.yaml +187 -0
  58. package/dist/specs/pdf/merge-pdf.yaml +193 -0
  59. package/dist/specs/pdf/pdf-compress.yaml +208 -0
  60. package/dist/specs/pdf/pdf-decrypt.yaml +202 -0
  61. package/dist/specs/pdf/pdf-encrypt.yaml +213 -0
  62. package/dist/specs/pdf/pdf-extract-pages.yaml +199 -0
  63. package/dist/specs/pdf/pdf-file-status.yaml +148 -0
  64. package/dist/specs/pdf/pdf-file.yaml +136 -0
  65. package/dist/specs/pdf/pdf-files.yaml +85 -0
  66. package/dist/specs/pdf/pdf-resource-download.yaml +117 -0
  67. package/dist/specs/pdf/pdf-resource-upload-binary.yaml +152 -0
  68. package/dist/specs/pdf/pdf-resource-upload.yaml +163 -0
  69. package/dist/specs/pdf/pdf-restrict.yaml +246 -0
  70. package/dist/specs/pdf/pdf-split-pages.yaml +208 -0
  71. package/dist/specs/pdf/pdf-task-status.yaml +187 -0
  72. package/dist/specs/pdf/pdf-to-image.yaml +844 -0
  73. package/dist/specs/pdf/pdf-unrestrict.yaml +221 -0
  74. package/dist/specs/pdf/rotate-pdf-pages.yaml +207 -0
  75. package/dist/specs/phone-validation/bulk-phone-number-validation.yaml +374 -0
  76. package/dist/specs/phone-validation/phone-number-validation.yaml +344 -0
  77. package/dist/specs/scraper/web-scraper.yaml +479 -0
  78. package/dist/specs/screenshot/bulk-screenshot.yaml +728 -0
  79. package/dist/specs/screenshot/website-screenshot.yaml +822 -0
  80. package/dist/specs/ssl/ssl-certificate-chain-lookup.yaml +593 -0
  81. package/dist/specs/ssl/ssl-certificate-lookup.yaml +478 -0
  82. package/dist/specs/timezone/timezone-converter.yaml +249 -0
  83. package/dist/specs/timezone/timezone-lookup.yaml +712 -0
  84. package/dist/specs/user-agent/bulk-user-agent-parser.yaml +340 -0
  85. package/dist/specs/user-agent/user-agent-parser.yaml +271 -0
  86. package/dist/specs/weather/air-quality.yaml +590 -0
  87. package/dist/specs/weather/bulk-live-weather.yaml +654 -0
  88. package/dist/specs/weather/flood-forecast.yaml +519 -0
  89. package/dist/specs/weather/historical-weather.yaml +842 -0
  90. package/dist/specs/weather/live-weather.yaml +633 -0
  91. package/dist/specs/weather/marine-weather.yaml +806 -0
  92. package/dist/specs/weather/time-series-weather.yaml +821 -0
  93. package/dist/specs/weather/weather-forecast.yaml +935 -0
  94. package/dist/specs/whois/asn-lookup.yaml +618 -0
  95. package/dist/specs/whois/bulk-whois-lookup.yaml +827 -0
  96. package/dist/specs/whois/domain-whois-history-lookup.yaml +445 -0
  97. package/dist/specs/whois/reverse-whois.yaml +566 -0
  98. package/dist/specs/whois/whois-domain-lookup.yaml +537 -0
  99. package/dist/specs/whois/whois-ip-lookup.yaml +1123 -0
  100. package/dist/specs/zip-code/bulk-zip-code-lookup.yaml +232 -0
  101. package/dist/specs/zip-code/zip-code-api.yaml +216 -0
  102. package/dist/specs/zip-code/zip-code-distance-match.yaml +239 -0
  103. package/dist/specs/zip-code/zip-code-distance.yaml +233 -0
  104. package/dist/specs/zip-code/zip-codes-by-city.yaml +201 -0
  105. package/dist/specs/zip-code/zip-codes-by-region.yaml +200 -0
  106. package/dist/specs/zip-code/zip-codes-radius-search.yaml +262 -0
  107. package/package.json +6 -2
@@ -0,0 +1,152 @@
1
+ openapi: 3.1.1
2
+ info:
3
+ title: Financial APIs Supported Countries Reference
4
+ version: 1.0.0
5
+ description: Retrieve the countries and states supported by the VAT, IBAN, and SWIFT APIs. The response always includes all three categories — VAT_Supported_Countries_And_States, IBAN_Supported_Countries, and SWIFT_Supported_Countries — each with a different shape. VAT entries are keyed by lowercase country name and include an ISO code plus, for a handful of countries (US, Canada, Spain), a nested map of sub-national state/region codes. IBAN and SWIFT entries are flat arrays of {name, countryCode} objects.
6
+ contact:
7
+ name: APIFreaks Support
8
+ url: https://apifreaks.com/contact
9
+ email: support@apifreaks.com
10
+ servers:
11
+ - url: https://api.apifreaks.com/v1.0
12
+ description: Financial APIs Supported Countries API Server
13
+ paths:
14
+ /vat/supported-countries:
15
+ get:
16
+ tags:
17
+ - Financial APIs
18
+ summary: Get supported countries
19
+ description: Returns the countries and states supported by the VAT, IBAN, and SWIFT APIs.
20
+ operationId: getSupportedCountries
21
+ parameters:
22
+ - name: format
23
+ in: query
24
+ required: false
25
+ schema:
26
+ type: string
27
+ enum:
28
+ - json
29
+ - xml
30
+ default: json
31
+ description: Format of the response. Default is JSON.
32
+ - name: type
33
+ in: query
34
+ required: false
35
+ schema:
36
+ type: string
37
+ description: Accepted by the endpoint but currently has no effect — all three categories (VAT, IBAN, SWIFT) are always returned regardless of this value.
38
+ responses:
39
+ '200':
40
+ description: Successful response — always returns all three categories
41
+ content:
42
+ application/json:
43
+ schema:
44
+ $ref: '#/components/schemas/SupportedCountriesResponse'
45
+ examples:
46
+ typicalSuccess:
47
+ summary: Typical successful response (truncated)
48
+ value:
49
+ VAT_Supported_Countries_And_States:
50
+ - germany:
51
+ code: de
52
+ - united_states:
53
+ code: us
54
+ states:
55
+ california: us:ca
56
+ new_york: us:ny
57
+ texas: us:tx
58
+ IBAN_Supported_Countries:
59
+ - countryCode: DE
60
+ name: Germany
61
+ - countryCode: GB
62
+ name: United Kingdom
63
+ SWIFT_Supported_Countries:
64
+ - name: Germany
65
+ countryCode: DE
66
+ - name: United States
67
+ countryCode: US
68
+ components:
69
+ securitySchemes:
70
+ ApiKeyAuthHeader:
71
+ type: apiKey
72
+ in: header
73
+ name: X-apiKey
74
+ description: Pass your API key via the X-apiKey request header.
75
+ ApiKeyAuthQuery:
76
+ type: apiKey
77
+ in: query
78
+ name: apiKey
79
+ description: Pass your API key via the apiKey query parameter.
80
+ schemas:
81
+ SupportedCountriesResponse:
82
+ type: object
83
+ description: Countries and states supported by the VAT, IBAN, and SWIFT APIs.
84
+ required:
85
+ - VAT_Supported_Countries_And_States
86
+ - IBAN_Supported_Countries
87
+ - SWIFT_Supported_Countries
88
+ properties:
89
+ VAT_Supported_Countries_And_States:
90
+ type: array
91
+ description: Array of single-key objects, one per supported VAT country. Each key is the lowercase, underscore-separated country name.
92
+ items:
93
+ type: object
94
+ description: A single VAT-supported country, keyed by its lowercase name.
95
+ additionalProperties:
96
+ title: VatCountryEntry
97
+ $ref: '#/components/schemas/VatCountryEntry'
98
+ IBAN_Supported_Countries:
99
+ type: array
100
+ description: Array of countries supported by the IBAN Validation API.
101
+ items:
102
+ $ref: '#/components/schemas/IbanCountryEntry'
103
+ SWIFT_Supported_Countries:
104
+ type: array
105
+ description: Array of countries supported by the SWIFT/BIC Code Lookup and Finder APIs.
106
+ items:
107
+ $ref: '#/components/schemas/SwiftCountryEntry'
108
+ VatCountryEntry:
109
+ type: object
110
+ description: 'VAT country metadata: an ISO 3166-1 alpha-2 code, plus an optional map of sub-national states/regions for countries with state-level VAT (US, Canada, Spain).'
111
+ required:
112
+ - code
113
+ properties:
114
+ code:
115
+ type: string
116
+ description: ISO 3166-1 alpha-2 country code, lowercase.
117
+ states:
118
+ type: object
119
+ description: Map of state/region name to its combined country:state code. Only present for countries with sub-national VAT rates.
120
+ additionalProperties:
121
+ title: StateCode
122
+ type: string
123
+ description: Combined country:state identifier (e.g. us:ca).
124
+ IbanCountryEntry:
125
+ type: object
126
+ description: A single country supported by the IBAN Validation API.
127
+ required:
128
+ - countryCode
129
+ - name
130
+ properties:
131
+ countryCode:
132
+ type: string
133
+ description: ISO 3166-1 alpha-2 country code.
134
+ name:
135
+ type: string
136
+ description: Full country name.
137
+ SwiftCountryEntry:
138
+ type: object
139
+ description: A single country supported by the SWIFT/BIC Code Lookup and Finder APIs.
140
+ required:
141
+ - name
142
+ - countryCode
143
+ properties:
144
+ name:
145
+ type: string
146
+ description: Full country name.
147
+ countryCode:
148
+ type: string
149
+ description: ISO 3166-1 alpha-2 country code.
150
+ security:
151
+ - ApiKeyAuthHeader: []
152
+ - ApiKeyAuthQuery: []
@@ -0,0 +1,270 @@
1
+ openapi: 3.1.1
2
+ info:
3
+ title: IBAN Validation API - Validate Format, Check SEPA & Return Bank Details
4
+ version: 1.0.0
5
+ description: Validate an IBAN number against country-specific format, length, and checksum rules. Supports IBANs from all SEPA and IBAN-compliant countries. Returns detailed validation results for each check — alphanumeric, supported country, length, structure, and check digit. Includes bank data such as BIC/SWIFT code, bank name, branch details, and SEPA eligibility when available.
6
+ contact:
7
+ name: APIFreaks Support
8
+ url: https://apifreaks.com/contact
9
+ email: support@apifreaks.com
10
+ servers:
11
+ - url: https://api.apifreaks.com/v1.0
12
+ description: IBAN Validation API Server
13
+ paths:
14
+ /iban/validation:
15
+ get:
16
+ tags:
17
+ - Financial APIs
18
+ summary: Validate IBAN
19
+ description: Checks an IBAN for structural validity, checksum accuracy, and bank metadata.
20
+ parameters:
21
+ - name: format
22
+ in: query
23
+ required: false
24
+ schema:
25
+ type: string
26
+ enum:
27
+ - json
28
+ - xml
29
+ default: json
30
+ description: 'Specify the desired response format. Options: ''json'' (default) or ''xml''.'
31
+ - name: iban
32
+ in: query
33
+ required: true
34
+ schema:
35
+ type: string
36
+ description: IBAN to validate.
37
+ responses:
38
+ '200':
39
+ description: Successful response
40
+ content:
41
+ application/json:
42
+ schema:
43
+ $ref: '#/components/schemas/IbanValidationResponse'
44
+ examples:
45
+ validIban:
46
+ summary: Valid IBAN with full bank data
47
+ value:
48
+ valid: true
49
+ iban: GB29NWBK60161331926819
50
+ validation:
51
+ is_alpha_numeric: true
52
+ is_iban_supported_country: true
53
+ is_valid_length: true
54
+ is_valid_structure: true
55
+ is_iban_check_digit_valid: true
56
+ bban: valid
57
+ bank_data:
58
+ bic: NWBKGB2LBHM
59
+ bank: NATIONAL WESTMINSTER BANK PLC
60
+ bank_code: NWBK
61
+ branch_code: '601613'
62
+ country: United Kingdom
63
+ country_iso2: GB
64
+ city: BIRMINGHAM
65
+ address: 6 BRINDLEY PLACE - BIRMINGHAM, B1
66
+ account: '31926819'
67
+ sepa: true
68
+ invalidIban:
69
+ summary: Structurally invalid IBAN — still a 200, not an error, with the failing checks flagged
70
+ value:
71
+ valid: false
72
+ iban: NOTANIBAN123
73
+ validation:
74
+ is_alpha_numeric: true
75
+ is_iban_supported_country: true
76
+ is_valid_length: false
77
+ is_valid_structure: false
78
+ is_iban_check_digit_valid: false
79
+ bban: unknown
80
+ bank_data:
81
+ bic: null
82
+ bank: null
83
+ bank_code: null
84
+ branch_code: ''
85
+ country: Norway
86
+ country_iso2: 'NO'
87
+ city: null
88
+ address: null
89
+ account: N123
90
+ sepa: true
91
+ unsupportedCountry:
92
+ summary: Country prefix not covered by IBAN — bank_data fields are null
93
+ value:
94
+ valid: false
95
+ iban: US29NWBK60161331926819
96
+ validation:
97
+ is_alpha_numeric: true
98
+ is_iban_supported_country: false
99
+ is_valid_length: false
100
+ is_valid_structure: false
101
+ is_iban_check_digit_valid: false
102
+ bban: unknown
103
+ bank_data:
104
+ bic: null
105
+ bank: null
106
+ bank_code: null
107
+ branch_code: ''
108
+ country: null
109
+ country_iso2: US
110
+ city: null
111
+ address: null
112
+ account: null
113
+ sepa: null
114
+ '400':
115
+ description: Bad Request
116
+ content:
117
+ application/json:
118
+ schema:
119
+ $ref: '#/components/schemas/ErrorResponse'
120
+ examples:
121
+ MissingIban:
122
+ summary: Missing required iban parameter
123
+ value:
124
+ error: Invalid Param Exception
125
+ message: please pass correct parameters
126
+ path: /v1.0/iban/validation
127
+ status: 400
128
+ timestamp: '2026-07-27T11:49:29.286Z'
129
+ operationId: validateIban
130
+ components:
131
+ securitySchemes:
132
+ ApiKeyAuthHeader:
133
+ type: apiKey
134
+ in: header
135
+ name: X-apiKey
136
+ description: Pass your API key via the X-apiKey request header.
137
+ ApiKeyAuthQuery:
138
+ type: apiKey
139
+ in: query
140
+ name: apiKey
141
+ description: Pass your API key via the apiKey query parameter.
142
+ schemas:
143
+ IbanValidationResponse:
144
+ type: object
145
+ properties:
146
+ valid:
147
+ type: boolean
148
+ description: True if the IBAN passes all validation checks.
149
+ iban:
150
+ type: string
151
+ description: The IBAN number provided in the request.
152
+ validation:
153
+ $ref: '#/components/schemas/IbanValidationResult'
154
+ bank_data:
155
+ $ref: '#/components/schemas/IbanBankData'
156
+ required:
157
+ - valid
158
+ - iban
159
+ - validation
160
+ - bank_data
161
+ description: IBAN validation response containing validation results and bank data.
162
+ IbanValidationResult:
163
+ type: object
164
+ description: Object contains IBAN validation details.
165
+ required:
166
+ - is_alpha_numeric
167
+ - is_iban_supported_country
168
+ - is_valid_length
169
+ - is_valid_structure
170
+ - is_iban_check_digit_valid
171
+ properties:
172
+ is_alpha_numeric:
173
+ type: boolean
174
+ description: Whether the IBAN contains only alphanumeric characters.
175
+ is_iban_supported_country:
176
+ type: boolean
177
+ description: Whether the country extracted from the IBAN supports IBAN standards.
178
+ is_valid_length:
179
+ type: boolean
180
+ description: Whether the IBAN length matches the expected length for its country.
181
+ is_valid_structure:
182
+ type: boolean
183
+ description: Whether the IBAN structure matches the pattern for its country.
184
+ is_iban_check_digit_valid:
185
+ type: boolean
186
+ description: Whether the IBAN check digit is valid.
187
+ bban:
188
+ type: string
189
+ enum:
190
+ - valid
191
+ - invalid
192
+ - unknown
193
+ description: BBAN checksum status. "unknown" means BBAN checksum validation isn't supported for this country.
194
+ IbanBankData:
195
+ type: object
196
+ description: Object contains Bank and BIC details. Most fields are null when the IBAN is structurally invalid or the country's bank data isn't resolvable.
197
+ required:
198
+ - country_iso2
199
+ properties:
200
+ bic:
201
+ type:
202
+ - string
203
+ - 'null'
204
+ description: SWIFT/BIC code extracted from the IBAN. Null when not available for this country or IBAN.
205
+ bank:
206
+ type:
207
+ - string
208
+ - 'null'
209
+ description: Bank name extracted from the IBAN. Null when not resolvable.
210
+ bank_code:
211
+ type:
212
+ - string
213
+ - 'null'
214
+ description: Bank code extracted from the IBAN. Null when not resolvable.
215
+ branch_code:
216
+ type: string
217
+ description: Branch code extracted from the IBAN. Can be an empty string when not available.
218
+ country:
219
+ type:
220
+ - string
221
+ - 'null'
222
+ description: Country name extracted from the IBAN. Null when the country prefix isn't a supported IBAN country.
223
+ country_iso2:
224
+ type: string
225
+ description: ISO 3166-1 alpha-2 country code extracted from the IBAN's prefix.
226
+ city:
227
+ type:
228
+ - string
229
+ - 'null'
230
+ description: City or branch name for the bank. Null when not resolvable.
231
+ address:
232
+ type:
233
+ - string
234
+ - 'null'
235
+ description: Bank branch address. Null when not resolvable.
236
+ account:
237
+ type:
238
+ - string
239
+ - 'null'
240
+ description: Account number extracted from the IBAN. Null when the country prefix isn't a supported IBAN country.
241
+ sepa:
242
+ type:
243
+ - boolean
244
+ - 'null'
245
+ description: Whether the country supports Single Euro Payments Area (SEPA). Null when the country prefix isn't a supported IBAN country.
246
+ ErrorResponse:
247
+ type: object
248
+ required:
249
+ - message
250
+ properties:
251
+ error:
252
+ type: string
253
+ description: Short error category or exception type.
254
+ message:
255
+ type: string
256
+ description: Human-readable error message describing the failure.
257
+ path:
258
+ type: string
259
+ description: API endpoint path that produced the error.
260
+ status:
261
+ type: integer
262
+ description: HTTP status code returned with the error.
263
+ timestamp:
264
+ type: string
265
+ format: date-time
266
+ description: Timestamp when the error occurred (ISO 8601).
267
+ description: Standard error envelope returned by the API on failed requests.
268
+ security:
269
+ - ApiKeyAuthHeader: []
270
+ - ApiKeyAuthQuery: []
@@ -0,0 +1,146 @@
1
+ openapi: 3.1.1
2
+ info:
3
+ title: SWIFT/BIC Code Finder API Reference
4
+ version: 1.0.0
5
+ description: Progressively drill down from all supported countries to a specific bank's SWIFT/BIC codes. With no parameters, returns the list of all supported countries. Adding country returns the list of bank names in that country. Adding bank returns the list of cities that bank operates in. Adding city as well returns the matching SWIFT/BIC codes. Parameters must be supplied in order (country, then bank, then city) — supplying bank without country, for example, returns a 400. An unmatched country/bank/city combination returns a 200 with an empty array, not an error.
6
+ contact:
7
+ name: APIFreaks Support
8
+ url: https://apifreaks.com/contact
9
+ email: support@apifreaks.com
10
+ servers:
11
+ - url: https://api.apifreaks.com/v1.0
12
+ description: SWIFT/BIC Code Finder API Server
13
+ paths:
14
+ /swift-code/finder:
15
+ get:
16
+ tags:
17
+ - Financial APIs
18
+ summary: Find SWIFT codes
19
+ description: Drills down from countries to banks to cities to SWIFT/BIC codes, one parameter level at a time.
20
+ operationId: findSwiftCode
21
+ parameters:
22
+ - name: format
23
+ in: query
24
+ required: false
25
+ schema:
26
+ type: string
27
+ enum:
28
+ - json
29
+ - xml
30
+ default: json
31
+ description: 'Specify the desired response format. Options: ''json'' (default) or ''xml''.'
32
+ - name: country
33
+ in: query
34
+ required: false
35
+ schema:
36
+ type: string
37
+ description: Country name (accepts full name, e.g., Pakistan, United States). If supplied alone, returns the list of bank names in that country. If omitted entirely, returns the list of all supported countries.
38
+ - name: bank
39
+ in: query
40
+ required: false
41
+ schema:
42
+ type: string
43
+ description: Bank name (upper case) to drill into. Requires country to also be set. If supplied without city, returns the list of cities that bank operates in.
44
+ - name: city
45
+ in: query
46
+ required: false
47
+ schema:
48
+ type: string
49
+ description: City (upper case) to narrow results to. Requires country and bank to also be set. Returns the matching SWIFT/BIC codes for that bank in that city.
50
+ responses:
51
+ '200':
52
+ description: Successful response. The array's contents depend on which parameters were supplied — see the examples for each drill-down level.
53
+ content:
54
+ application/json:
55
+ schema:
56
+ $ref: '#/components/schemas/SwiftCodeFinderResponse'
57
+ examples:
58
+ allCountries:
59
+ summary: No parameters — all supported countries
60
+ value:
61
+ - Albania
62
+ - Algeria
63
+ - Andorra
64
+ - Germany
65
+ - United States
66
+ banksInCountry:
67
+ summary: country only — bank names in that country
68
+ value:
69
+ - 1NCE GMBH
70
+ - AAREAL BANK AG
71
+ - DEUTSCHE BANK AG
72
+ citiesForBank:
73
+ summary: country + bank — cities that bank operates in
74
+ value:
75
+ - AACHEN
76
+ - BERLIN
77
+ - FRANKFURT AM MAIN
78
+ - MUENCHEN
79
+ swiftCodes:
80
+ summary: country + bank + city — matching SWIFT/BIC codes
81
+ value:
82
+ - DEUTDEBB101
83
+ - DEUTDEBB162
84
+ - DEUTDEBB165
85
+ - DEUTDEBBXXX
86
+ - DEUTDEDB101
87
+ noMatch:
88
+ summary: Unmatched country/bank/city — empty array, not an error
89
+ value: []
90
+ '400':
91
+ description: Bad Request — Parameters supplied out of order
92
+ content:
93
+ application/json:
94
+ schema:
95
+ $ref: '#/components/schemas/ErrorResponse'
96
+ examples:
97
+ OutOfOrder:
98
+ summary: bank supplied without country
99
+ value:
100
+ message: 'Invalid query parameters. Provide parameters in sequence: country → bank → city'
101
+ components:
102
+ securitySchemes:
103
+ ApiKeyAuthHeader:
104
+ type: apiKey
105
+ in: header
106
+ name: X-apiKey
107
+ description: Pass your API key via the X-apiKey request header.
108
+ ApiKeyAuthQuery:
109
+ type: apiKey
110
+ in: query
111
+ name: apiKey
112
+ description: Pass your API key via the apiKey query parameter.
113
+ schemas:
114
+ SwiftCodeFinderResponse:
115
+ type: array
116
+ description: 'Array of strings whose meaning depends on the supplied parameters: country names, bank names, city names, or SWIFT/BIC codes.'
117
+ items:
118
+ $ref: '#/components/schemas/SwiftCodeString'
119
+ SwiftCodeString:
120
+ type: string
121
+ description: A single result value — a country name, bank name, city name, or SWIFT/BIC code depending on the drill-down level.
122
+ ErrorResponse:
123
+ type: object
124
+ description: Standard error envelope returned by the API on failed requests.
125
+ required:
126
+ - message
127
+ properties:
128
+ error:
129
+ type: string
130
+ description: Short error category or exception type.
131
+ message:
132
+ type: string
133
+ description: Human-readable error message describing the failure.
134
+ path:
135
+ type: string
136
+ description: API endpoint path that produced the error.
137
+ status:
138
+ type: integer
139
+ description: HTTP status code returned with the error.
140
+ timestamp:
141
+ type: string
142
+ format: date-time
143
+ description: Timestamp when the error occurred (ISO 8601).
144
+ security:
145
+ - ApiKeyAuthHeader: []
146
+ - ApiKeyAuthQuery: []