@apifreaks/openapi-specs 0.1.0 → 0.1.2

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 (108) hide show
  1. package/dist/index.cjs +133 -2
  2. package/dist/index.d.cts +140 -3
  3. package/dist/index.d.ts +140 -3
  4. package/dist/index.js +131 -2
  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
  108. package/specs/pdf/merge-pdf.json +2 -2
@@ -0,0 +1,168 @@
1
+ openapi: 3.1.1
2
+ info:
3
+ title: Administrative Units API - Get Country Subdivisions & Admin Units
4
+ version: 1.0.0
5
+ description: Retrieve administrative units (states, provinces, governorates, districts) for any country using ISO 3166-1 alpha-2 country codes. Each result includes the unit name, admin code, and admin level type. Optionally filter results by one or more administrative levels using the `admin_level` parameter with comma-separated level names; a level name that matches nothing returns a 200 with an empty admin_units array, not an error. A valid country code is required; countries without published admin units return a 404.
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: Administrative Units API Server
13
+ paths:
14
+ /geo/admin-units:
15
+ get:
16
+ tags:
17
+ - GeoDB APIs
18
+ summary: Retrieve administrative units for a country with optional level filtering
19
+ description: Returns all administrative units (states, provinces, districts) for a country using ISO 3166-1 alpha-2 country code. Optionally filter by one or more admin levels.
20
+ operationId: getAdminUnits
21
+ parameters:
22
+ - name: format
23
+ in: query
24
+ required: false
25
+ description: 'Format of the response. Possible values: json, xml.'
26
+ schema:
27
+ type: string
28
+ enum:
29
+ - json
30
+ - xml
31
+ default: json
32
+ - name: country
33
+ in: query
34
+ required: true
35
+ description: Country code in ISO 3166-1 alpha-2 format (e.g., US, PK).
36
+ schema:
37
+ type: string
38
+ - name: admin_level
39
+ in: query
40
+ required: false
41
+ description: Comma-separated list to filter results by one or more administrative levels (e.g., state, district). A level name that doesn't exist for the country returns a 200 with an empty admin_units array rather than an error.
42
+ schema:
43
+ type: string
44
+ responses:
45
+ '200':
46
+ description: Successful response with list of administrative units
47
+ content:
48
+ application/json:
49
+ schema:
50
+ $ref: '#/components/schemas/AdminUnitsResponse'
51
+ examples:
52
+ typicalSuccess:
53
+ summary: Typical successful response
54
+ value:
55
+ admin_units:
56
+ - name: California
57
+ admin_code: CA
58
+ admin_level: state
59
+ - name: Texas
60
+ admin_code: TX
61
+ admin_level: state
62
+ - name: New York
63
+ admin_code: NY
64
+ admin_level: state
65
+ '400':
66
+ description: Bad Request — Missing country parameter, or country is not a valid/known ISO 3166-1 alpha-2 code
67
+ content:
68
+ application/json:
69
+ schema:
70
+ $ref: '#/components/schemas/ErrorResponse'
71
+ examples:
72
+ MissingCountry:
73
+ summary: Missing required country parameter
74
+ value:
75
+ error: Invalid Param Exception
76
+ message: please pass correct parameters
77
+ path: /v1.0/geo/admin-units
78
+ status: 400
79
+ timestamp: '2026-07-24T10:44:10.185Z'
80
+ InvalidCountryCode:
81
+ summary: Malformed or unrecognized country code (also returned for well-formed but non-existent codes)
82
+ value:
83
+ timestamp: '2026-07-24T10:44:10.711Z'
84
+ path: /v1/admin-units
85
+ status: 400
86
+ error: Invalid Country Code provided
87
+ message: Only ISO 3166-1 alpha-2 codes country codes are supported.
88
+ '404':
89
+ description: Not Found — Country is a recognized ISO 3166-1 alpha-2 code but has no published admin units (e.g. Vatican City)
90
+ content:
91
+ application/json:
92
+ schema:
93
+ $ref: '#/components/schemas/ErrorResponse'
94
+ examples:
95
+ NoAdminUnits:
96
+ summary: No admin units for this country
97
+ value:
98
+ timestamp: '2026-07-24T10:44:11.244Z'
99
+ path: /v1/admin-units
100
+ status: 404
101
+ error: No Admin Unit present in country
102
+ message: This Country does not have any admin units associated with it.
103
+ components:
104
+ securitySchemes:
105
+ ApiKeyAuthHeader:
106
+ type: apiKey
107
+ in: header
108
+ name: X-apiKey
109
+ description: Pass your API key via the X-apiKey request header.
110
+ ApiKeyAuthQuery:
111
+ type: apiKey
112
+ in: query
113
+ name: apiKey
114
+ description: Pass your API key via the apiKey query parameter.
115
+ schemas:
116
+ AdminUnitsResponse:
117
+ type: object
118
+ description: Response containing the administrative units for the requested country, optionally filtered by admin_level.
119
+ required:
120
+ - admin_units
121
+ properties:
122
+ admin_units:
123
+ type: array
124
+ description: An array of administrative unit objects for the specified country.
125
+ items:
126
+ $ref: '#/components/schemas/AdminUnit'
127
+ AdminUnit:
128
+ type: object
129
+ description: An administrative unit object.
130
+ required:
131
+ - name
132
+ - admin_code
133
+ - admin_level
134
+ properties:
135
+ name:
136
+ type: string
137
+ description: Name of the administrative unit.
138
+ admin_code:
139
+ type: string
140
+ description: Administrative code of the unit.
141
+ admin_level:
142
+ type: string
143
+ description: Level or type of the administrative unit (e.g., state, district, province).
144
+ ErrorResponse:
145
+ type: object
146
+ description: Standard error envelope returned by the API on failed requests.
147
+ required:
148
+ - message
149
+ properties:
150
+ error:
151
+ type: string
152
+ description: Short error category or exception type.
153
+ message:
154
+ type: string
155
+ description: Human-readable error message describing the failure.
156
+ path:
157
+ type: string
158
+ description: API endpoint path that produced the error.
159
+ status:
160
+ type: integer
161
+ description: HTTP status code returned with the error.
162
+ timestamp:
163
+ type: string
164
+ format: date-time
165
+ description: Timestamp when the error occurred (ISO 8601).
166
+ security:
167
+ - ApiKeyAuthHeader: []
168
+ - ApiKeyAuthQuery: []
@@ -0,0 +1,209 @@
1
+ openapi: 3.1.1
2
+ info:
3
+ title: Cities API - Get City Data for Any Country
4
+ version: 1.0.0
5
+ description: 'Retrieve all cities for a given country with their latitude, longitude, administrative unit details, and ISO country code. Uses ISO 3166-1 alpha-2 country codes. Optionally filter by administrative unit code using the `admin_unit` parameter to narrow results to a specific region or province; an admin_unit code that doesn''t exist for the country returns a 400 error here (unlike the Administrative Units endpoint''s admin_level filter, which returns an empty array for an unknown level). Each city result includes name, coordinates, admin unit information (name, code, level), and the two-letter country code. There is no pagination: large countries return every city in one response. A valid country code is required.'
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: Cities API Server
13
+ paths:
14
+ /geo/cities:
15
+ get:
16
+ tags:
17
+ - GeoDB APIs
18
+ summary: Retrieve cities for a country with optional admin unit filtering
19
+ description: Returns all cities for a country, optionally filtered by administrative unit. Each city includes name, coordinates, admin unit details, and ISO country code.
20
+ operationId: getCities
21
+ parameters:
22
+ - name: format
23
+ in: query
24
+ required: false
25
+ description: 'Format of the response. Possible values: json, xml.'
26
+ schema:
27
+ type: string
28
+ enum:
29
+ - json
30
+ - xml
31
+ default: json
32
+ - name: country
33
+ in: query
34
+ required: true
35
+ description: Country code in ISO 3166-1 alpha-2 format (e.g., US, PK).
36
+ schema:
37
+ type: string
38
+ - name: admin_unit
39
+ in: query
40
+ required: false
41
+ description: Administrative unit code used to filter cities within a specific region. An admin_unit code that doesn't exist for the specified country returns a 400 error, not an empty result.
42
+ schema:
43
+ type: string
44
+ responses:
45
+ '200':
46
+ description: Successful response with list of cities
47
+ content:
48
+ application/json:
49
+ schema:
50
+ $ref: '#/components/schemas/CitiesResponse'
51
+ examples:
52
+ typicalSuccess:
53
+ summary: Typical successful response
54
+ value:
55
+ cities:
56
+ - name: Aberdeen
57
+ latitude: 57.14369
58
+ longitude: -2.09814
59
+ admin_unit:
60
+ name: Aberdeen
61
+ admin_code: ABE
62
+ admin_level: council area
63
+ iso_alpha_2: GB
64
+ - name: Balmedie
65
+ latitude: 57.25052
66
+ longitude: -2.06163
67
+ admin_unit:
68
+ name: Aberdeen
69
+ admin_code: ABE
70
+ admin_level: council area
71
+ iso_alpha_2: GB
72
+ '400':
73
+ description: Bad Request — Missing country parameter, invalid country code, or admin_unit code not found for the country
74
+ content:
75
+ application/json:
76
+ schema:
77
+ $ref: '#/components/schemas/ErrorResponse'
78
+ examples:
79
+ MissingCountry:
80
+ summary: Missing required country parameter
81
+ value:
82
+ error: Invalid Param Exception
83
+ message: please pass correct parameters
84
+ path: /v1.0/geo/cities
85
+ status: 400
86
+ timestamp: '2026-07-24T10:56:41.424Z'
87
+ InvalidCountryCode:
88
+ summary: Malformed or unrecognized country code
89
+ value:
90
+ timestamp: '2026-07-24T10:56:41.913Z'
91
+ path: /v1/cities
92
+ status: 400
93
+ error: Invalid Country Code provided
94
+ message: Only ISO 3166-1 alpha-2 codes country codes are supported.
95
+ InvalidAdminCode:
96
+ summary: admin_unit code does not exist for the given country
97
+ value:
98
+ timestamp: '2026-07-24T10:56:42.419Z'
99
+ path: /v1/cities
100
+ status: 400
101
+ error: Invalid Admin Code provided
102
+ message: Please provide a valid admin code.
103
+ '404':
104
+ description: Not Found — Country is a recognized ISO 3166-1 alpha-2 code but has no cities in the database (e.g. Vatican City)
105
+ content:
106
+ application/json:
107
+ schema:
108
+ $ref: '#/components/schemas/ErrorResponse'
109
+ examples:
110
+ NoCities:
111
+ summary: No cities for this country
112
+ value:
113
+ timestamp: '2026-07-24T10:56:42.941Z'
114
+ path: /v1/cities
115
+ status: 404
116
+ error: No Cities present in country
117
+ message: This country does not have any cities associated with it.
118
+ components:
119
+ securitySchemes:
120
+ ApiKeyAuthHeader:
121
+ type: apiKey
122
+ in: header
123
+ name: X-apiKey
124
+ description: Pass your API key via the X-apiKey request header.
125
+ ApiKeyAuthQuery:
126
+ type: apiKey
127
+ in: query
128
+ name: apiKey
129
+ description: Pass your API key via the apiKey query parameter.
130
+ schemas:
131
+ CitiesResponse:
132
+ type: object
133
+ description: Response containing every city for the requested country (optionally filtered by admin_unit), returned unpaginated in a single array.
134
+ required:
135
+ - cities
136
+ properties:
137
+ cities:
138
+ type: array
139
+ description: An array of city objects for the specified country, optionally filtered by admin unit.
140
+ items:
141
+ $ref: '#/components/schemas/CityItem'
142
+ CityItem:
143
+ type: object
144
+ description: A city object containing name, coordinates, admin unit, and country code.
145
+ required:
146
+ - name
147
+ - latitude
148
+ - longitude
149
+ - admin_unit
150
+ - iso_alpha_2
151
+ properties:
152
+ name:
153
+ type: string
154
+ description: The name of the city.
155
+ latitude:
156
+ type: number
157
+ format: float
158
+ description: The geographic latitude of the city in decimal degrees.
159
+ longitude:
160
+ type: number
161
+ format: float
162
+ description: The geographic longitude of the city in decimal degrees.
163
+ iso_alpha_2:
164
+ type: string
165
+ description: The ISO 3166-1 alpha-2 country code the city belongs to.
166
+ admin_unit:
167
+ $ref: '#/components/schemas/AdminUnit'
168
+ AdminUnit:
169
+ type: object
170
+ description: An object describing the administrative unit the city belongs to.
171
+ required:
172
+ - name
173
+ - admin_code
174
+ - admin_level
175
+ properties:
176
+ name:
177
+ type: string
178
+ description: The full name of the administrative unit.
179
+ admin_code:
180
+ type: string
181
+ description: The short code of the administrative unit.
182
+ admin_level:
183
+ type: string
184
+ description: The administrative level type of the unit (e.g., province, council area).
185
+ ErrorResponse:
186
+ type: object
187
+ description: Standard error envelope returned by the API on failed requests.
188
+ required:
189
+ - message
190
+ properties:
191
+ error:
192
+ type: string
193
+ description: Short error category or exception type.
194
+ message:
195
+ type: string
196
+ description: Human-readable error message describing the failure.
197
+ path:
198
+ type: string
199
+ description: API endpoint path that produced the error.
200
+ status:
201
+ type: integer
202
+ description: HTTP status code returned with the error.
203
+ timestamp:
204
+ type: string
205
+ format: date-time
206
+ description: Timestamp when the error occurred (ISO 8601).
207
+ security:
208
+ - ApiKeyAuthHeader: []
209
+ - ApiKeyAuthQuery: []
@@ -0,0 +1,207 @@
1
+ openapi: 3.1.1
2
+ info:
3
+ title: Country Details API Reference
4
+ version: 1.0.0
5
+ description: Get comprehensive metadata for a specific country identified by its ISO 3166-1 alpha-2 code. Returns the country name, ISO codes (alpha-2, alpha-3, numeric), phone code, capital city, top-level domain, native name, region and subregion, nationality, flag emoji, and currency details (code, name, symbol). A valid two-letter country code is required. capital, region, and subregion are empty strings (not omitted) for the same handful of uninhabited/dependent territories as the Countries list endpoint — every other field, including currency and phone code, is populated for those territories.
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: Country Details API Server
13
+ paths:
14
+ /geo/country/details:
15
+ get:
16
+ tags:
17
+ - GeoDB APIs
18
+ summary: Retrieve comprehensive metadata for a specific country
19
+ description: Returns complete country details for a single country identified by its ISO 3166-1 alpha-2 code, including ISO codes, capital, currency, phone code, nationality, and flag emoji.
20
+ operationId: getCountryDetails
21
+ parameters:
22
+ - name: format
23
+ in: query
24
+ required: false
25
+ description: 'Format of the response. Possible values: json, xml.'
26
+ schema:
27
+ type: string
28
+ enum:
29
+ - json
30
+ - xml
31
+ default: json
32
+ - name: country
33
+ in: query
34
+ required: true
35
+ description: Country code in ISO 3166-1 alpha-2 format (e.g., US, PK).
36
+ schema:
37
+ type: string
38
+ responses:
39
+ '200':
40
+ description: Successful response with country details
41
+ content:
42
+ application/json:
43
+ schema:
44
+ $ref: '#/components/schemas/CountryDetailsResponse'
45
+ examples:
46
+ typicalSuccess:
47
+ summary: Typical successful response
48
+ value:
49
+ name: United States
50
+ iso_alpha_2: US
51
+ iso_alpha_3: USA
52
+ iso_numeric: 840
53
+ phone_code: 1
54
+ capital: Washington
55
+ top_level_domain: .us
56
+ native_name: United States
57
+ region: Americas
58
+ subregion: Northern America
59
+ nationality: American
60
+ flag_emoji: 🇺🇸
61
+ currency_code: USD
62
+ currency_name: United States dollar
63
+ currency_symbol: $
64
+ unassignedFields:
65
+ summary: Uninhabited territory — capital, region, and subregion are empty strings; every other field is still populated
66
+ value:
67
+ name: Bouvet Island
68
+ iso_alpha_2: BV
69
+ iso_alpha_3: BVT
70
+ iso_numeric: 74
71
+ phone_code: 55
72
+ capital: ''
73
+ top_level_domain: .bv
74
+ native_name: Bouvetøya
75
+ region: ''
76
+ subregion: ''
77
+ nationality: Bouvet Island
78
+ flag_emoji: 🇧🇻
79
+ currency_code: NOK
80
+ currency_name: Norwegian krone
81
+ currency_symbol: ko
82
+ '400':
83
+ description: Bad Request — Missing country parameter, or country is not a valid/known ISO 3166-1 alpha-2 code
84
+ content:
85
+ application/json:
86
+ schema:
87
+ $ref: '#/components/schemas/ErrorResponse'
88
+ examples:
89
+ MissingCountry:
90
+ summary: Missing required country parameter
91
+ value:
92
+ error: Invalid Param Exception
93
+ message: please pass correct parameters
94
+ path: /v1.0/geo/country/details
95
+ status: 400
96
+ timestamp: '2026-07-24T10:54:42.188Z'
97
+ InvalidCountryCode:
98
+ summary: Malformed or unrecognized country code
99
+ value:
100
+ timestamp: '2026-07-24T10:54:42.684Z'
101
+ path: /v1/country/details
102
+ status: 400
103
+ error: Invalid Country Code provided
104
+ message: Only ISO 3166-1 alpha-2 codes country codes are supported.
105
+ components:
106
+ securitySchemes:
107
+ ApiKeyAuthHeader:
108
+ type: apiKey
109
+ in: header
110
+ name: X-apiKey
111
+ description: Pass your API key via the X-apiKey request header.
112
+ ApiKeyAuthQuery:
113
+ type: apiKey
114
+ in: query
115
+ name: apiKey
116
+ description: Pass your API key via the apiKey query parameter.
117
+ schemas:
118
+ CountryDetailsResponse:
119
+ type: object
120
+ description: Comprehensive metadata for a single country resolved from an ISO 3166-1 alpha-2 code.
121
+ required:
122
+ - name
123
+ - iso_alpha_2
124
+ - iso_alpha_3
125
+ - iso_numeric
126
+ - phone_code
127
+ - capital
128
+ - top_level_domain
129
+ - native_name
130
+ - region
131
+ - subregion
132
+ - nationality
133
+ - flag_emoji
134
+ - currency_code
135
+ - currency_name
136
+ - currency_symbol
137
+ properties:
138
+ name:
139
+ type: string
140
+ description: The full English name of the country.
141
+ iso_alpha_2:
142
+ type: string
143
+ description: The ISO 3166-1 alpha-2 two-letter country code.
144
+ iso_alpha_3:
145
+ type: string
146
+ description: The ISO 3166-1 alpha-3 three-letter country code.
147
+ iso_numeric:
148
+ type: integer
149
+ description: The ISO 3166-1 numeric country code.
150
+ phone_code:
151
+ type: integer
152
+ description: The international dialing/phone code for the country.
153
+ capital:
154
+ type: string
155
+ description: The capital city of the country. Empty string for uninhabited/dependent territories with no capital.
156
+ top_level_domain:
157
+ type: string
158
+ description: The country-code top-level internet domain.
159
+ native_name:
160
+ type: string
161
+ description: The name of the country in its native language.
162
+ region:
163
+ type: string
164
+ description: The broad geographical region the country belongs to. Empty string for a small number of territories with no assigned region.
165
+ subregion:
166
+ type: string
167
+ description: The more specific subregion the country belongs to. Empty string for a small number of territories with no assigned subregion.
168
+ nationality:
169
+ type: string
170
+ description: The demonym for citizens of the country.
171
+ flag_emoji:
172
+ type: string
173
+ description: The emoji flag representing the country.
174
+ currency_code:
175
+ type: string
176
+ description: The ISO 4217 currency code used in the country.
177
+ currency_name:
178
+ type: string
179
+ description: The full name of the currency used in the country.
180
+ currency_symbol:
181
+ type: string
182
+ description: The symbol of the currency used in the country.
183
+ ErrorResponse:
184
+ type: object
185
+ description: Standard error envelope returned by the API on failed requests.
186
+ required:
187
+ - message
188
+ properties:
189
+ error:
190
+ type: string
191
+ description: Short error category or exception type.
192
+ message:
193
+ type: string
194
+ description: Human-readable error message describing the failure.
195
+ path:
196
+ type: string
197
+ description: API endpoint path that produced the error.
198
+ status:
199
+ type: integer
200
+ description: HTTP status code returned with the error.
201
+ timestamp:
202
+ type: string
203
+ format: date-time
204
+ description: Timestamp when the error occurred (ISO 8601).
205
+ security:
206
+ - ApiKeyAuthHeader: []
207
+ - ApiKeyAuthQuery: []