@apifreaks/openapi-specs 0.1.0

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 (109) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +156 -0
  3. package/dist/index.cjs +44663 -0
  4. package/dist/index.d.cts +30 -0
  5. package/dist/index.d.ts +30 -0
  6. package/dist/index.js +44631 -0
  7. package/package.json +81 -0
  8. package/specs/commodity/commodity-fluctuation.json +301 -0
  9. package/specs/commodity/commodity-prices.json +317 -0
  10. package/specs/commodity/commodity-symbols.json +215 -0
  11. package/specs/commodity/commodity-time-series.json +329 -0
  12. package/specs/commodity/historical-commodity-prices.json +273 -0
  13. package/specs/currency/currency-converter.json +261 -0
  14. package/specs/currency/currency-fluctuation.json +282 -0
  15. package/specs/currency/currency-historical-data-limit.json +158 -0
  16. package/specs/currency/currency-rate.json +229 -0
  17. package/specs/currency/currency-supported.json +234 -0
  18. package/specs/currency/currency-symbols.json +161 -0
  19. package/specs/currency/currency-time-series.json +325 -0
  20. package/specs/currency/geolocalized-currency-conversion.json +287 -0
  21. package/specs/currency/historical-currency-converter.json +269 -0
  22. package/specs/currency/historical-currency-rate.json +246 -0
  23. package/specs/dns/bulk-dns-lookup.json +624 -0
  24. package/specs/dns/dns-history-lookup.json +579 -0
  25. package/specs/dns/dns-lookup.json +466 -0
  26. package/specs/dns/reverse-dns-lookup.json +414 -0
  27. package/specs/domain/bulk-domain-checker.json +284 -0
  28. package/specs/domain/domain-search-with-suggestions.json +280 -0
  29. package/specs/domain/domain-search.json +206 -0
  30. package/specs/domain/subdomain-lookup.json +343 -0
  31. package/specs/email-validation/bulk-email-validation.json +534 -0
  32. package/specs/email-validation/email-checker.json +586 -0
  33. package/specs/financial/bulk-vat-rates-country.json +341 -0
  34. package/specs/financial/financial-apis-supported-countries.json +204 -0
  35. package/specs/financial/iban-validation.json +328 -0
  36. package/specs/financial/swift-code-finder.json +192 -0
  37. package/specs/financial/swift-code-lookup.json +220 -0
  38. package/specs/financial/vat-number-validation.json +283 -0
  39. package/specs/financial/vat-rates-by-ip.json +275 -0
  40. package/specs/financial/vat-rates-country.json +288 -0
  41. package/specs/general/usage-credits.json +218 -0
  42. package/specs/geocoding/forward-geocoding.json +402 -0
  43. package/specs/geocoding/reverse-geocoding.json +326 -0
  44. package/specs/geodb/administrative-units-details.json +250 -0
  45. package/specs/geodb/administrative-units-levels.json +198 -0
  46. package/specs/geodb/administrative-units.json +237 -0
  47. package/specs/geodb/cities.json +288 -0
  48. package/specs/geodb/countries-details.json +274 -0
  49. package/specs/geodb/countries.json +276 -0
  50. package/specs/geodb/flags-supported.json +166 -0
  51. package/specs/geodb/flags.json +227 -0
  52. package/specs/geodb/regions.json +109 -0
  53. package/specs/geodb/subregions.json +217 -0
  54. package/specs/ip-intelligence/bulk-ip-lookup.json +1162 -0
  55. package/specs/ip-intelligence/bulk-ip-threat-intelligence.json +417 -0
  56. package/specs/ip-intelligence/ip-locator.json +941 -0
  57. package/specs/ip-intelligence/ip-threat-intelligence.json +316 -0
  58. package/specs/other/astronomy-data.json +803 -0
  59. package/specs/pdf/delete-pdf-page.json +286 -0
  60. package/specs/pdf/linearize-pdf.json +277 -0
  61. package/specs/pdf/merge-pdf.json +285 -0
  62. package/specs/pdf/pdf-compress.json +304 -0
  63. package/specs/pdf/pdf-decrypt.json +297 -0
  64. package/specs/pdf/pdf-encrypt.json +314 -0
  65. package/specs/pdf/pdf-extract-pages.json +295 -0
  66. package/specs/pdf/pdf-file-status.json +208 -0
  67. package/specs/pdf/pdf-file.json +190 -0
  68. package/specs/pdf/pdf-files.json +126 -0
  69. package/specs/pdf/pdf-resource-download.json +168 -0
  70. package/specs/pdf/pdf-resource-upload-binary.json +218 -0
  71. package/specs/pdf/pdf-resource-upload.json +248 -0
  72. package/specs/pdf/pdf-restrict.json +343 -0
  73. package/specs/pdf/pdf-split-pages.json +281 -0
  74. package/specs/pdf/pdf-task-status.json +252 -0
  75. package/specs/pdf/pdf-to-image.json +1219 -0
  76. package/specs/pdf/pdf-unrestrict.json +324 -0
  77. package/specs/pdf/rotate-pdf-pages.json +305 -0
  78. package/specs/phone-validation/bulk-phone-number-validation.json +518 -0
  79. package/specs/phone-validation/phone-number-validation.json +456 -0
  80. package/specs/scraper/web-scraper.json +674 -0
  81. package/specs/screenshot/bulk-screenshot.json +949 -0
  82. package/specs/screenshot/website-screenshot.json +1147 -0
  83. package/specs/ssl/ssl-certificate-chain-lookup.json +756 -0
  84. package/specs/ssl/ssl-certificate-lookup.json +634 -0
  85. package/specs/timezone/timezone-converter.json +362 -0
  86. package/specs/timezone/timezone-lookup.json +910 -0
  87. package/specs/user-agent/bulk-user-agent-parser.json +441 -0
  88. package/specs/user-agent/user-agent-parser.json +346 -0
  89. package/specs/weather/air-quality.json +779 -0
  90. package/specs/weather/bulk-live-weather.json +834 -0
  91. package/specs/weather/flood-forecast.json +693 -0
  92. package/specs/weather/historical-weather.json +1019 -0
  93. package/specs/weather/live-weather.json +789 -0
  94. package/specs/weather/marine-weather.json +940 -0
  95. package/specs/weather/time-series-weather.json +1056 -0
  96. package/specs/weather/weather-forecast.json +1202 -0
  97. package/specs/whois/asn-lookup.json +729 -0
  98. package/specs/whois/bulk-whois-lookup.json +698 -0
  99. package/specs/whois/domain-whois-history-lookup.json +500 -0
  100. package/specs/whois/reverse-whois.json +625 -0
  101. package/specs/whois/whois-domain-lookup.json +533 -0
  102. package/specs/whois/whois-ip-lookup.json +1110 -0
  103. package/specs/zip-code/bulk-zip-code-lookup.json +318 -0
  104. package/specs/zip-code/zip-code-api.json +299 -0
  105. package/specs/zip-code/zip-code-distance-match.json +311 -0
  106. package/specs/zip-code/zip-code-distance.json +307 -0
  107. package/specs/zip-code/zip-codes-by-city.json +279 -0
  108. package/specs/zip-code/zip-codes-by-region.json +278 -0
  109. package/specs/zip-code/zip-codes-radius-search.json +349 -0
@@ -0,0 +1,349 @@
1
+ {
2
+ "openapi": "3.1.1",
3
+ "info": {
4
+ "title": "Find All ZIP Codes within a Radius - ZIP Code Radius Search API",
5
+ "version": "1.0.0",
6
+ "description": "Find all ZIP or postal codes within a given radius from a central ZIP code or GPS coordinates. Supports pagination with up to 500 results per page and multiple distance units (km, mi, yd, m, ft, in). The central point can be specified by ZIP code plus country, or by latitude/longitude coordinates. Returns code, region, city, district, and distance for each matching postal code within the radius, sorted nearest-first. Maximum radius is 100 km (or the equivalent in other units).",
7
+ "contact": {
8
+ "name": "APIFreaks Support",
9
+ "url": "https://apifreaks.com/contact",
10
+ "email": "support@apifreaks.com"
11
+ }
12
+ },
13
+ "servers": [
14
+ {
15
+ "url": "https://api.apifreaks.com/v1.0",
16
+ "description": "ZIP Code Radius Search API Server"
17
+ }
18
+ ],
19
+ "paths": {
20
+ "/zipcode/search/radius": {
21
+ "get": {
22
+ "tags": ["ZIP Code APIs"],
23
+ "summary": "Find ZIP/postal codes within a radius",
24
+ "description": "Returns every ZIP/postal code within the given radius of a center point, specified either by code plus country or by latitude/longitude coordinates.",
25
+ "operationId": "searchZipByRadius",
26
+ "parameters": [
27
+ {
28
+ "name": "format",
29
+ "in": "query",
30
+ "required": false,
31
+ "schema": {
32
+ "type": "string",
33
+ "enum": ["json", "xml"],
34
+ "default": "json"
35
+ },
36
+ "description": "Format of the response. Possible values: json, xml."
37
+ },
38
+ {
39
+ "name": "code",
40
+ "in": "query",
41
+ "required": false,
42
+ "schema": {
43
+ "type": "string"
44
+ },
45
+ "description": "Postal/ZIP code to use as the center point for the search. Requires country to be set. Alternative to lat/long."
46
+ },
47
+ {
48
+ "name": "lat",
49
+ "in": "query",
50
+ "required": false,
51
+ "schema": {
52
+ "type": "number",
53
+ "format": "float"
54
+ },
55
+ "description": "Latitude coordinate for the center point. Alternative to code/country."
56
+ },
57
+ {
58
+ "name": "long",
59
+ "in": "query",
60
+ "required": false,
61
+ "schema": {
62
+ "type": "number",
63
+ "format": "float"
64
+ },
65
+ "description": "Longitude coordinate for the center point. Alternative to code/country."
66
+ },
67
+ {
68
+ "name": "country",
69
+ "in": "query",
70
+ "required": false,
71
+ "schema": {
72
+ "type": "string"
73
+ },
74
+ "description": "Country code in ISO 3166-1 alpha-2 format. Required only when using the code parameter."
75
+ },
76
+ {
77
+ "name": "radius",
78
+ "in": "query",
79
+ "required": true,
80
+ "schema": {
81
+ "type": "number",
82
+ "format": "float"
83
+ },
84
+ "description": "Search radius for the query. The maximum allowed values are: 100 km, 100 mi, 109361 yd, 100000 m, 328084 ft, 3937007.75 in."
85
+ },
86
+ {
87
+ "name": "unit",
88
+ "in": "query",
89
+ "required": false,
90
+ "schema": {
91
+ "type": "string",
92
+ "default": "km",
93
+ "enum": ["m", "km", "mi", "ft", "yd", "in"]
94
+ },
95
+ "description": "Unit for the radius and returned distance values. Supported distance units are m, km, mi, ft, yd, in."
96
+ },
97
+ {
98
+ "name": "page",
99
+ "in": "query",
100
+ "required": false,
101
+ "schema": {
102
+ "type": "integer",
103
+ "default": 1,
104
+ "minimum": 1
105
+ },
106
+ "description": "Page number to retrieve. Each page returns up to 500 results."
107
+ }
108
+ ],
109
+ "responses": {
110
+ "200": {
111
+ "description": "ZIP/postal codes found within the specified radius",
112
+ "content": {
113
+ "application/json": {
114
+ "schema": {
115
+ "$ref": "#/components/schemas/ZipcodeSearchRadiusResponse"
116
+ },
117
+ "examples": {
118
+ "success": {
119
+ "summary": "Codes within radius, nearest first",
120
+ "value": {
121
+ "total_results": 64,
122
+ "total_pages": 1,
123
+ "current_page": 1,
124
+ "current_page_size": 64,
125
+ "results": [
126
+ {
127
+ "code": "90077",
128
+ "region": "California",
129
+ "region_code": "CA",
130
+ "city": "Los Angeles",
131
+ "district": "Los Angeles (Los Angeles)",
132
+ "distance": 3.335
133
+ },
134
+ {
135
+ "code": "90069",
136
+ "region": "California",
137
+ "region_code": "CA",
138
+ "city": "Los Angeles",
139
+ "district": "West Hollywood (West Hollywood)",
140
+ "distance": 3.403
141
+ }
142
+ ]
143
+ }
144
+ }
145
+ }
146
+ }
147
+ }
148
+ },
149
+ "400": {
150
+ "description": "Bad Request — Missing/invalid radius, coordinates, or country code",
151
+ "content": {
152
+ "application/json": {
153
+ "schema": {
154
+ "$ref": "#/components/schemas/ErrorResponse"
155
+ },
156
+ "examples": {
157
+ "MissingRadius": {
158
+ "summary": "Missing required radius parameter",
159
+ "value": {
160
+ "error": "Invalid Param Exception",
161
+ "message": "please pass correct parameters",
162
+ "path": "/v1.0/zipcode/search/radius",
163
+ "status": 400,
164
+ "timestamp": "2026-07-27T11:19:37.382Z"
165
+ }
166
+ },
167
+ "InvalidRadius": {
168
+ "summary": "radius exceeds the maximum allowed for the given unit",
169
+ "value": {
170
+ "timestamp": "2026-07-27T11:19:46.342Z",
171
+ "path": "/v1.0/zipcode/search/radius",
172
+ "status": 400,
173
+ "error": "Invalid Radius Range",
174
+ "message": "The specified radius is out of the acceptable range. Please check the documentation for valid radius limits."
175
+ }
176
+ },
177
+ "BadLat": {
178
+ "summary": "lat is outside -90 to 90",
179
+ "value": {
180
+ "timestamp": "2026-07-27T11:19:46.876Z",
181
+ "path": "/v1.0/zipcode/search/radius",
182
+ "status": 400,
183
+ "error": "Invalid Latitude",
184
+ "message": "Latitude must be between -90 and 90."
185
+ }
186
+ },
187
+ "BadCountry": {
188
+ "summary": "country is not a valid ISO 3166-1 alpha-2 code",
189
+ "value": {
190
+ "timestamp": "2026-07-27T11:19:47.407Z",
191
+ "path": "/v1.0/zipcode/search/radius",
192
+ "status": 400,
193
+ "error": "Invalid Country Code Provided",
194
+ "message": "Only ISO 3166-1 alpha-2 codes country codes are supported."
195
+ }
196
+ }
197
+ }
198
+ }
199
+ }
200
+ },
201
+ "404": {
202
+ "description": "Not Found — Base ZIP/postal code does not exist",
203
+ "content": {
204
+ "application/json": {
205
+ "schema": {
206
+ "$ref": "#/components/schemas/ErrorResponse"
207
+ },
208
+ "examples": {
209
+ "BaseNotFound": {
210
+ "summary": "code is not a recognized postal/ZIP code",
211
+ "value": {
212
+ "timestamp": "2026-07-27T11:19:47.940Z",
213
+ "path": "/v1.0/zipcode/search/radius",
214
+ "status": 404,
215
+ "error": "Base Postal/Zip Code Not Found",
216
+ "message": "The provided base postal/zip code does not exist in our database."
217
+ }
218
+ }
219
+ }
220
+ }
221
+ }
222
+ }
223
+ }
224
+ }
225
+ }
226
+ },
227
+ "components": {
228
+ "securitySchemes": {
229
+ "ApiKeyAuthHeader": {
230
+ "type": "apiKey",
231
+ "in": "header",
232
+ "name": "X-apiKey",
233
+ "description": "Pass your API key via the X-apiKey request header."
234
+ },
235
+ "ApiKeyAuthQuery": {
236
+ "type": "apiKey",
237
+ "in": "query",
238
+ "name": "apiKey",
239
+ "description": "Pass your API key via the apiKey query parameter."
240
+ }
241
+ },
242
+ "schemas": {
243
+ "ZipcodeSearchRadiusResponse": {
244
+ "type": "object",
245
+ "description": "ZIP code radius search result with pagination metadata and an array of matching codes within the specified radius.",
246
+ "required": [
247
+ "total_results",
248
+ "total_pages",
249
+ "current_page",
250
+ "current_page_size",
251
+ "results"
252
+ ],
253
+ "properties": {
254
+ "total_results": {
255
+ "type": "integer",
256
+ "description": "Total number of ZIP/postal codes found within the radius, across all pages."
257
+ },
258
+ "total_pages": {
259
+ "type": "integer",
260
+ "description": "Total number of pages available."
261
+ },
262
+ "current_page": {
263
+ "type": "integer",
264
+ "description": "Current page number."
265
+ },
266
+ "current_page_size": {
267
+ "type": "integer",
268
+ "description": "Number of ZIP/postal codes returned on the current page (up to 500)."
269
+ },
270
+ "results": {
271
+ "type": "array",
272
+ "description": "Array of matching ZIP/postal codes for the current page, sorted nearest-first by distance.",
273
+ "items": {
274
+ "$ref": "#/components/schemas/ZipRadiusResultItem"
275
+ }
276
+ }
277
+ }
278
+ },
279
+ "ZipRadiusResultItem": {
280
+ "type": "object",
281
+ "description": "A ZIP code result within the search radius, including distance from the center point.",
282
+ "required": ["code", "region", "region_code", "city", "distance"],
283
+ "properties": {
284
+ "code": {
285
+ "type": "string",
286
+ "description": "Postal/ZIP code of the matched location."
287
+ },
288
+ "region": {
289
+ "type": "string",
290
+ "description": "Region, state, or province associated with the postal code."
291
+ },
292
+ "region_code": {
293
+ "type": "string",
294
+ "description": "Region code or abbreviation."
295
+ },
296
+ "city": {
297
+ "type": "string",
298
+ "description": "City associated with the postal code."
299
+ },
300
+ "district": {
301
+ "type": "string",
302
+ "description": "District or neighborhood associated with the postal code. Can be an empty string when no district-level data exists."
303
+ },
304
+ "distance": {
305
+ "type": "number",
306
+ "format": "float",
307
+ "description": "Distance from the center point to this postal code, in the unit specified by the unit parameter."
308
+ }
309
+ }
310
+ },
311
+ "ErrorResponse": {
312
+ "type": "object",
313
+ "description": "Standard error envelope returned by the API on failed requests.",
314
+ "required": ["message"],
315
+ "properties": {
316
+ "error": {
317
+ "type": "string",
318
+ "description": "Short error category or exception type."
319
+ },
320
+ "message": {
321
+ "type": "string",
322
+ "description": "Human-readable error message describing the failure."
323
+ },
324
+ "path": {
325
+ "type": "string",
326
+ "description": "API endpoint path that produced the error."
327
+ },
328
+ "status": {
329
+ "type": "integer",
330
+ "description": "HTTP status code returned with the error."
331
+ },
332
+ "timestamp": {
333
+ "type": "string",
334
+ "format": "date-time",
335
+ "description": "Timestamp when the error occurred (ISO 8601)."
336
+ }
337
+ }
338
+ }
339
+ }
340
+ },
341
+ "security": [
342
+ {
343
+ "ApiKeyAuthHeader": []
344
+ },
345
+ {
346
+ "ApiKeyAuthQuery": []
347
+ }
348
+ ]
349
+ }