@apifreaks/openapi-specs 0.2.0 → 0.3.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 (214) hide show
  1. package/README.md +37 -38
  2. package/dist/index.cjs +5561 -2991
  3. package/dist/index.d.cts +2 -3
  4. package/dist/index.d.ts +2 -3
  5. package/dist/index.js +5561 -2991
  6. package/dist/specs/{general → billing}/usage-credits.yaml +11 -0
  7. package/dist/specs/commodity/commodity-fluctuation.yaml +14 -0
  8. package/dist/specs/commodity/commodity-prices.yaml +14 -0
  9. package/dist/specs/commodity/commodity-symbols.yaml +8 -0
  10. package/dist/specs/commodity/commodity-time-series.yaml +14 -0
  11. package/dist/specs/commodity/historical-commodity-prices.yaml +14 -0
  12. package/dist/specs/currency/currency-converter.yaml +14 -0
  13. package/dist/specs/currency/currency-fluctuation.yaml +14 -0
  14. package/dist/specs/currency/currency-historical-data-limit.yaml +11 -0
  15. package/dist/specs/currency/currency-rate.yaml +14 -0
  16. package/dist/specs/currency/currency-supported.yaml +11 -0
  17. package/dist/specs/currency/currency-symbols.yaml +11 -0
  18. package/dist/specs/currency/currency-time-series.yaml +14 -0
  19. package/dist/specs/currency/geolocalized-currency-conversion.yaml +14 -0
  20. package/dist/specs/currency/historical-currency-converter.yaml +14 -0
  21. package/dist/specs/currency/historical-currency-rate.yaml +14 -0
  22. package/dist/specs/dns/bulk-dns-lookup.yaml +14 -0
  23. package/dist/specs/dns/dns-history-lookup.yaml +14 -0
  24. package/dist/specs/dns/dns-lookup.yaml +11 -0
  25. package/dist/specs/dns/reverse-dns-lookup.yaml +34 -0
  26. package/dist/specs/domain/bulk-domain-checker.yaml +17 -0
  27. package/dist/specs/domain/domain-search-with-suggestions.yaml +14 -0
  28. package/dist/specs/domain/domain-search.yaml +14 -0
  29. package/dist/specs/domain/subdomain-lookup.yaml +14 -0
  30. package/dist/specs/email-validation/bulk-email-validation.yaml +76 -12
  31. package/dist/specs/email-validation/email-checker.yaml +93 -10
  32. package/dist/specs/financial/bulk-vat-rates-country.yaml +14 -0
  33. package/dist/specs/financial/financial-apis-supported-countries.yaml +8 -0
  34. package/dist/specs/financial/iban-validation.yaml +11 -0
  35. package/dist/specs/financial/swift-code-finder.yaml +11 -0
  36. package/dist/specs/financial/swift-code-lookup.yaml +14 -0
  37. package/dist/specs/financial/vat-number-validation.yaml +14 -0
  38. package/dist/specs/financial/vat-rates-by-ip.yaml +14 -0
  39. package/dist/specs/financial/vat-rates-country.yaml +14 -0
  40. package/dist/specs/geocoding/forward-geocoding.yaml +14 -0
  41. package/dist/specs/geocoding/reverse-geocoding.yaml +11 -0
  42. package/dist/specs/{geodb → geography}/administrative-units-details.yaml +14 -0
  43. package/dist/specs/{geodb → geography}/administrative-units-levels.yaml +14 -0
  44. package/dist/specs/{geodb → geography}/administrative-units.yaml +14 -0
  45. package/dist/specs/{geodb → geography}/cities.yaml +14 -0
  46. package/dist/specs/{geodb → geography}/countries-details.yaml +11 -0
  47. package/dist/specs/{geodb → geography}/countries.yaml +11 -0
  48. package/dist/specs/{geodb → geography}/flags-supported.yaml +8 -0
  49. package/dist/specs/{geodb → geography}/flags.yaml +14 -0
  50. package/dist/specs/{geodb → geography}/regions.yaml +8 -0
  51. package/dist/specs/{geodb → geography}/subregions.yaml +14 -0
  52. package/dist/specs/ip-intelligence/bulk-ip-lookup.yaml +14 -0
  53. package/dist/specs/ip-intelligence/bulk-ip-threat-intelligence.yaml +11 -0
  54. package/dist/specs/ip-intelligence/ip-locator.yaml +17 -0
  55. package/dist/specs/ip-intelligence/ip-threat-intelligence.yaml +14 -0
  56. package/dist/specs/pdf/bulk-pdf-generator.yaml +32 -0
  57. package/dist/specs/pdf/delete-pdf-page.yaml +14 -0
  58. package/dist/specs/pdf/linearize-pdf.yaml +14 -0
  59. package/dist/specs/pdf/merge-pdf.yaml +14 -0
  60. package/dist/specs/pdf/pdf-compress.yaml +14 -0
  61. package/dist/specs/pdf/pdf-decrypt.yaml +14 -0
  62. package/dist/specs/pdf/pdf-encrypt.yaml +14 -0
  63. package/dist/specs/pdf/pdf-extract-pages.yaml +14 -0
  64. package/dist/specs/pdf/pdf-file-status.yaml +14 -0
  65. package/dist/specs/pdf/pdf-file.yaml +14 -0
  66. package/dist/specs/pdf/pdf-files.yaml +8 -0
  67. package/dist/specs/pdf/pdf-generator.yaml +32 -0
  68. package/dist/specs/pdf/pdf-resource-download.yaml +14 -0
  69. package/dist/specs/pdf/pdf-resource-upload-binary.yaml +14 -0
  70. package/dist/specs/pdf/pdf-resource-upload.yaml +14 -0
  71. package/dist/specs/pdf/pdf-restrict.yaml +14 -0
  72. package/dist/specs/pdf/pdf-split-pages.yaml +14 -0
  73. package/dist/specs/pdf/pdf-task-status.yaml +14 -0
  74. package/dist/specs/pdf/pdf-to-image.yaml +35 -0
  75. package/dist/specs/pdf/pdf-unrestrict.yaml +14 -0
  76. package/dist/specs/pdf/rotate-pdf-pages.yaml +14 -0
  77. package/dist/specs/phone-validation/bulk-phone-number-validation.yaml +23 -0
  78. package/dist/specs/phone-validation/phone-number-validation.yaml +20 -0
  79. package/dist/specs/scraper/web-scraper.yaml +34 -0
  80. package/dist/specs/screenshot/bulk-screenshot.yaml +34 -0
  81. package/dist/specs/screenshot/website-screenshot.yaml +34 -0
  82. package/dist/specs/ssl/ssl-certificate-chain-lookup.yaml +17 -0
  83. package/dist/specs/ssl/ssl-certificate-lookup.yaml +17 -0
  84. package/dist/specs/timezone/timezone-converter.yaml +14 -0
  85. package/dist/specs/timezone/timezone-lookup.yaml +14 -0
  86. package/dist/specs/user-agent/bulk-user-agent-parser.yaml +11 -0
  87. package/dist/specs/user-agent/user-agent-parser.yaml +11 -0
  88. package/dist/specs/weather/air-quality.yaml +14 -0
  89. package/dist/specs/{other → weather}/astronomy-data.yaml +14 -0
  90. package/dist/specs/weather/bulk-live-weather.yaml +11 -0
  91. package/dist/specs/weather/flood-forecast.yaml +14 -0
  92. package/dist/specs/weather/historical-weather.yaml +14 -0
  93. package/dist/specs/weather/live-weather.yaml +14 -0
  94. package/dist/specs/weather/marine-weather.yaml +14 -0
  95. package/dist/specs/weather/time-series-weather.yaml +11 -0
  96. package/dist/specs/weather/weather-forecast.yaml +11 -0
  97. package/dist/specs/whois/asn-lookup.yaml +14 -0
  98. package/dist/specs/whois/bulk-whois-lookup.yaml +17 -0
  99. package/dist/specs/whois/domain-whois-history-lookup.yaml +14 -0
  100. package/dist/specs/whois/reverse-whois.yaml +34 -0
  101. package/dist/specs/whois/whois-domain-lookup.yaml +17 -0
  102. package/dist/specs/whois/whois-ip-lookup.yaml +14 -0
  103. package/dist/specs/zip-code/bulk-zip-code-lookup.yaml +14 -0
  104. package/dist/specs/zip-code/zip-code-api.yaml +14 -0
  105. package/dist/specs/zip-code/zip-code-distance-match.yaml +14 -0
  106. package/dist/specs/zip-code/zip-code-distance.yaml +14 -0
  107. package/dist/specs/zip-code/zip-codes-by-city.yaml +14 -0
  108. package/dist/specs/zip-code/zip-codes-by-region.yaml +14 -0
  109. package/dist/specs/zip-code/zip-codes-radius-search.yaml +34 -0
  110. package/package.json +1 -1
  111. package/specs/{general → billing}/usage-credits.json +18 -0
  112. package/specs/commodity/commodity-fluctuation.json +23 -0
  113. package/specs/commodity/commodity-prices.json +23 -0
  114. package/specs/commodity/commodity-symbols.json +13 -0
  115. package/specs/commodity/commodity-time-series.json +27 -13
  116. package/specs/commodity/historical-commodity-prices.json +23 -0
  117. package/specs/currency/currency-converter.json +23 -0
  118. package/specs/currency/currency-fluctuation.json +23 -0
  119. package/specs/currency/currency-historical-data-limit.json +18 -0
  120. package/specs/currency/currency-rate.json +23 -0
  121. package/specs/currency/currency-supported.json +18 -0
  122. package/specs/currency/currency-symbols.json +18 -0
  123. package/specs/currency/currency-time-series.json +23 -0
  124. package/specs/currency/geolocalized-currency-conversion.json +23 -0
  125. package/specs/currency/historical-currency-converter.json +23 -0
  126. package/specs/currency/historical-currency-rate.json +23 -0
  127. package/specs/dns/bulk-dns-lookup.json +23 -0
  128. package/specs/dns/dns-history-lookup.json +23 -0
  129. package/specs/dns/dns-lookup.json +18 -0
  130. package/specs/dns/reverse-dns-lookup.json +61 -1
  131. package/specs/domain/bulk-domain-checker.json +28 -0
  132. package/specs/domain/domain-search-with-suggestions.json +23 -0
  133. package/specs/domain/domain-search.json +23 -0
  134. package/specs/domain/subdomain-lookup.json +23 -0
  135. package/specs/email-validation/bulk-email-validation.json +118 -13
  136. package/specs/email-validation/email-checker.json +131 -11
  137. package/specs/financial/bulk-vat-rates-country.json +23 -0
  138. package/specs/financial/financial-apis-supported-countries.json +34 -5
  139. package/specs/financial/iban-validation.json +18 -0
  140. package/specs/financial/swift-code-finder.json +31 -2
  141. package/specs/financial/swift-code-lookup.json +23 -0
  142. package/specs/financial/vat-number-validation.json +23 -0
  143. package/specs/financial/vat-rates-by-ip.json +23 -0
  144. package/specs/financial/vat-rates-country.json +23 -0
  145. package/specs/geocoding/forward-geocoding.json +23 -0
  146. package/specs/geocoding/reverse-geocoding.json +18 -0
  147. package/specs/{geodb → geography}/administrative-units-details.json +23 -0
  148. package/specs/{geodb → geography}/administrative-units-levels.json +23 -0
  149. package/specs/{geodb → geography}/administrative-units.json +23 -0
  150. package/specs/{geodb → geography}/cities.json +23 -0
  151. package/specs/{geodb → geography}/countries-details.json +18 -0
  152. package/specs/{geodb → geography}/countries.json +18 -0
  153. package/specs/{geodb → geography}/flags-supported.json +13 -0
  154. package/specs/{geodb → geography}/flags.json +23 -0
  155. package/specs/{geodb → geography}/regions.json +13 -0
  156. package/specs/{geodb → geography}/subregions.json +23 -0
  157. package/specs/ip-intelligence/bulk-ip-lookup.json +23 -0
  158. package/specs/ip-intelligence/bulk-ip-threat-intelligence.json +18 -0
  159. package/specs/ip-intelligence/ip-locator.json +33 -5
  160. package/specs/ip-intelligence/ip-threat-intelligence.json +23 -0
  161. package/specs/pdf/bulk-pdf-generator.json +61 -8
  162. package/specs/pdf/delete-pdf-page.json +33 -21
  163. package/specs/pdf/linearize-pdf.json +31 -19
  164. package/specs/pdf/merge-pdf.json +30 -18
  165. package/specs/pdf/pdf-compress.json +32 -25
  166. package/specs/pdf/pdf-decrypt.json +32 -21
  167. package/specs/pdf/pdf-encrypt.json +31 -19
  168. package/specs/pdf/pdf-extract-pages.json +33 -21
  169. package/specs/pdf/pdf-file-status.json +23 -0
  170. package/specs/pdf/pdf-file.json +23 -0
  171. package/specs/pdf/pdf-files.json +13 -0
  172. package/specs/pdf/pdf-generator.json +61 -8
  173. package/specs/pdf/pdf-resource-download.json +23 -0
  174. package/specs/pdf/pdf-resource-upload-binary.json +29 -16
  175. package/specs/pdf/pdf-resource-upload.json +30 -19
  176. package/specs/pdf/pdf-restrict.json +32 -20
  177. package/specs/pdf/pdf-split-pages.json +33 -21
  178. package/specs/pdf/pdf-task-status.json +23 -0
  179. package/specs/pdf/pdf-to-image.json +90 -101
  180. package/specs/pdf/pdf-unrestrict.json +32 -20
  181. package/specs/pdf/rotate-pdf-pages.json +32 -20
  182. package/specs/phone-validation/bulk-phone-number-validation.json +54 -16
  183. package/specs/phone-validation/phone-number-validation.json +33 -0
  184. package/specs/scraper/web-scraper.json +53 -0
  185. package/specs/screenshot/bulk-screenshot.json +53 -0
  186. package/specs/screenshot/website-screenshot.json +53 -0
  187. package/specs/ssl/ssl-certificate-chain-lookup.json +28 -0
  188. package/specs/ssl/ssl-certificate-lookup.json +28 -0
  189. package/specs/timezone/timezone-converter.json +23 -0
  190. package/specs/timezone/timezone-lookup.json +25 -2
  191. package/specs/user-agent/bulk-user-agent-parser.json +20 -2
  192. package/specs/user-agent/user-agent-parser.json +18 -0
  193. package/specs/weather/air-quality.json +23 -0
  194. package/specs/{other → weather}/astronomy-data.json +24 -2
  195. package/specs/weather/bulk-live-weather.json +18 -0
  196. package/specs/weather/flood-forecast.json +23 -0
  197. package/specs/weather/historical-weather.json +23 -0
  198. package/specs/weather/live-weather.json +23 -0
  199. package/specs/weather/marine-weather.json +23 -0
  200. package/specs/weather/time-series-weather.json +18 -0
  201. package/specs/weather/weather-forecast.json +18 -0
  202. package/specs/whois/asn-lookup.json +23 -0
  203. package/specs/whois/bulk-whois-lookup.json +28 -0
  204. package/specs/whois/domain-whois-history-lookup.json +23 -0
  205. package/specs/whois/reverse-whois.json +53 -0
  206. package/specs/whois/whois-domain-lookup.json +28 -0
  207. package/specs/whois/whois-ip-lookup.json +23 -0
  208. package/specs/zip-code/bulk-zip-code-lookup.json +23 -0
  209. package/specs/zip-code/zip-code-api.json +23 -0
  210. package/specs/zip-code/zip-code-distance-match.json +23 -0
  211. package/specs/zip-code/zip-code-distance.json +23 -0
  212. package/specs/zip-code/zip-codes-by-city.json +23 -0
  213. package/specs/zip-code/zip-codes-by-region.json +24 -7
  214. package/specs/zip-code/zip-codes-radius-search.json +53 -0
@@ -246,6 +246,9 @@ paths:
246
246
  rawText: "example.com.\t\t128\tIN\tNS\tb.iana-servers.net."
247
247
  rRsetType: 2
248
248
  singleName: b.iana-servers.net.
249
+ headers:
250
+ X-AF-Credits-Cost:
251
+ $ref: '#/components/headers/X-AF-Credits-Cost'
249
252
  '400':
250
253
  description: Bad Request — Invalid DNS type or malformed hostname
251
254
  content:
@@ -269,6 +272,9 @@ paths:
269
272
  error: Invalid Param Exception
270
273
  message: 'Please pass domain param correct value[For Technical Support: support@whoisfreaks.com]'
271
274
  path: /v2.0/dns/historical
275
+ headers:
276
+ X-AF-Credits-Cost:
277
+ $ref: '#/components/headers/X-AF-Credits-Cost'
272
278
  '404':
273
279
  description: Not Found — No DNS history records for the hostname
274
280
  content:
@@ -284,6 +290,9 @@ paths:
284
290
  error: Record not Found
285
291
  message: 'No Record Found across: zzsuperrandomnonexistent998877.com'
286
292
  path: /v2.0/dns/historical
293
+ headers:
294
+ X-AF-Credits-Cost:
295
+ $ref: '#/components/headers/X-AF-Credits-Cost'
287
296
  components:
288
297
  securitySchemes:
289
298
  ApiKeyAuthHeader:
@@ -446,6 +455,11 @@ components:
446
455
  description: Verification or policy strings. Present only when dnsType is TXT or SPF.
447
456
  items:
448
457
  type: string
458
+ headers:
459
+ X-AF-Credits-Cost:
460
+ description: Specifies the number of credits consumed by the current request.
461
+ schema:
462
+ type: integer
449
463
  security:
450
464
  - ApiKeyAuthHeader: []
451
465
  - ApiKeyAuthQuery: []
@@ -175,6 +175,9 @@ paths:
175
175
  rawText: "8.8.8.8.in-addr.arpa.\t16954\tIN\tPTR\tdns.google."
176
176
  rRsetType: 12
177
177
  singleName: dns.google.
178
+ headers:
179
+ X-AF-Credits-Cost:
180
+ $ref: '#/components/headers/X-AF-Credits-Cost'
178
181
  '400':
179
182
  description: Bad Request — Missing or invalid parameters
180
183
  content:
@@ -206,6 +209,9 @@ paths:
206
209
  error: Invalid Param Exception
207
210
  message: 'Please pass domain param correct value[For Technical Support: support@whoisfreaks.com]'
208
211
  path: /v2.0/dns/live
212
+ headers:
213
+ X-AF-Credits-Cost:
214
+ $ref: '#/components/headers/X-AF-Credits-Cost'
209
215
  components:
210
216
  securitySchemes:
211
217
  ApiKeyAuthHeader:
@@ -355,6 +361,11 @@ components:
355
361
  type: string
356
362
  format: date-time
357
363
  description: Timestamp when the error occurred (ISO 8601).
364
+ headers:
365
+ X-AF-Credits-Cost:
366
+ description: Specifies the number of credits consumed by the current request.
367
+ schema:
368
+ type: integer
358
369
  security:
359
370
  - ApiKeyAuthHeader: []
360
371
  - ApiKeyAuthQuery: []
@@ -124,6 +124,13 @@ paths:
124
124
  rawText: "www.hailibu.cn.\t\t1\tIN\tA\t8.8.8.8"
125
125
  rRsetType: 1
126
126
  address: 8.8.8.8
127
+ headers:
128
+ X-AF-Credits-Cost:
129
+ $ref: '#/components/headers/X-AF-Credits-Cost'
130
+ X-Concurrent-Threads:
131
+ $ref: '#/components/headers/X-Concurrent-Threads'
132
+ X-Concurrent-Threads-Active:
133
+ $ref: '#/components/headers/X-Concurrent-Threads-Active'
127
134
  '400':
128
135
  description: Invalid DNS type or missing required parameter
129
136
  content:
@@ -147,6 +154,13 @@ paths:
147
154
  path: /v1.0/domain/dns/reverse
148
155
  status: 400
149
156
  timestamp: '2026-07-23T09:51:58.951Z'
157
+ headers:
158
+ X-AF-Credits-Cost:
159
+ $ref: '#/components/headers/X-AF-Credits-Cost'
160
+ X-Concurrent-Threads:
161
+ $ref: '#/components/headers/X-Concurrent-Threads'
162
+ X-Concurrent-Threads-Active:
163
+ $ref: '#/components/headers/X-Concurrent-Threads-Active'
150
164
  '404':
151
165
  description: No reverse DNS records found for the given input
152
166
  content:
@@ -162,6 +176,13 @@ paths:
162
176
  status: 404
163
177
  error: Record not Found
164
178
  message: 'No Record Found across: zzsuperrandomnonexistentmxprovider99988.com'
179
+ headers:
180
+ X-AF-Credits-Cost:
181
+ $ref: '#/components/headers/X-AF-Credits-Cost'
182
+ X-Concurrent-Threads:
183
+ $ref: '#/components/headers/X-Concurrent-Threads'
184
+ X-Concurrent-Threads-Active:
185
+ $ref: '#/components/headers/X-Concurrent-Threads-Active'
165
186
  components:
166
187
  securitySchemes:
167
188
  ApiKeyAuthHeader:
@@ -333,6 +354,19 @@ components:
333
354
  description: Verification or policy strings. Present only when dnsType is TXT or SPF.
334
355
  items:
335
356
  type: string
357
+ headers:
358
+ X-AF-Credits-Cost:
359
+ description: Specifies the number of credits consumed by the current request.
360
+ schema:
361
+ type: integer
362
+ X-Concurrent-Threads:
363
+ description: Specifies the maximum number of concurrent requests allowed.
364
+ schema:
365
+ type: integer
366
+ X-Concurrent-Threads-Active:
367
+ description: Indicates the number of active concurrent requests being processed.
368
+ schema:
369
+ type: integer
336
370
  security:
337
371
  - ApiKeyAuthHeader: []
338
372
  - ApiKeyAuthQuery: []
@@ -71,6 +71,9 @@ paths:
71
71
  - domain: thisdomainisdefinitelyavailablexyz123abc.com
72
72
  domainAvailability: true
73
73
  status: true
74
+ headers:
75
+ X-AF-Credits-Cost:
76
+ $ref: '#/components/headers/X-AF-Credits-Cost'
74
77
  '206':
75
78
  description: Partial Success — one or more domains in the batch failed to resolve. Failed entries have status false and no domainAvailability field. Even a batch where every domain fails still returns 206, not an error status.
76
79
  content:
@@ -89,6 +92,9 @@ paths:
89
92
  status: true
90
93
  - domain: test.an
91
94
  status: false
95
+ headers:
96
+ X-AF-Credits-Cost:
97
+ $ref: '#/components/headers/X-AF-Credits-Cost'
92
98
  '400':
93
99
  description: Bad Request — Missing or malformed request body
94
100
  content:
@@ -104,6 +110,9 @@ paths:
104
110
  path: /v1.0/domain/availability
105
111
  status: 400
106
112
  timestamp: '2026-07-27T12:23:33.394Z'
113
+ headers:
114
+ X-AF-Credits-Cost:
115
+ $ref: '#/components/headers/X-AF-Credits-Cost'
107
116
  '413':
108
117
  description: Payload Too Large — Request body exceeds the size limit
109
118
  content:
@@ -119,6 +128,9 @@ paths:
119
128
  path: /v1.0/domain/availability
120
129
  status: 413
121
130
  timestamp: '2026-07-27T12:23:46.923Z'
131
+ headers:
132
+ X-AF-Credits-Cost:
133
+ $ref: '#/components/headers/X-AF-Credits-Cost'
122
134
  components:
123
135
  securitySchemes:
124
136
  ApiKeyAuthHeader:
@@ -193,6 +205,11 @@ components:
193
205
  type: string
194
206
  format: date-time
195
207
  description: Timestamp when the error occurred (ISO 8601).
208
+ headers:
209
+ X-AF-Credits-Cost:
210
+ description: Specifies the number of credits consumed by the current request.
211
+ schema:
212
+ type: integer
196
213
  security:
197
214
  - ApiKeyAuthHeader: []
198
215
  - ApiKeyAuthQuery: []
@@ -88,6 +88,9 @@ paths:
88
88
  value:
89
89
  domain: quixoticbramble77.com
90
90
  domainAvailability: true
91
+ headers:
92
+ X-AF-Credits-Cost:
93
+ $ref: '#/components/headers/X-AF-Credits-Cost'
91
94
  '400':
92
95
  description: Bad Request – Invalid domain parameter
93
96
  content:
@@ -103,6 +106,9 @@ paths:
103
106
  path: /v1.0/domain/availability/suggestions
104
107
  status: 400
105
108
  timestamp: '2026-07-27T12:19:46.594Z'
109
+ headers:
110
+ X-AF-Credits-Cost:
111
+ $ref: '#/components/headers/X-AF-Credits-Cost'
106
112
  '408':
107
113
  description: Request Timeout – Unable to fetch WHOIS data
108
114
  content:
@@ -118,6 +124,9 @@ paths:
118
124
  error: Request Timeout
119
125
  message: 'Unable to fetch whois data. Please try again. [For Technical Support email at: support@apifreaks.com]'
120
126
  path: /v1.0/domain/availability/suggestions
127
+ headers:
128
+ X-AF-Credits-Cost:
129
+ $ref: '#/components/headers/X-AF-Credits-Cost'
121
130
  operationId: suggestDomainAvailability
122
131
  components:
123
132
  securitySchemes:
@@ -191,6 +200,11 @@ components:
191
200
  type: string
192
201
  format: date-time
193
202
  description: Timestamp when the error occurred (ISO 8601).
203
+ headers:
204
+ X-AF-Credits-Cost:
205
+ description: Specifies the number of credits consumed by the current request.
206
+ schema:
207
+ type: integer
194
208
  security:
195
209
  - ApiKeyAuthHeader: []
196
210
  - ApiKeyAuthQuery: []
@@ -57,6 +57,9 @@ paths:
57
57
  value:
58
58
  domain: google.com
59
59
  domainAvailability: false
60
+ headers:
61
+ X-AF-Credits-Cost:
62
+ $ref: '#/components/headers/X-AF-Credits-Cost'
60
63
  '400':
61
64
  description: Bad Request – Missing domain, or domain has an unrecognized/unsupported TLD
62
65
  content:
@@ -80,6 +83,9 @@ paths:
80
83
  error: Invalid Param Exception
81
84
  message: 'Please pass domain param correct value [For Technical Support: support@whoisfreaks.com]'
82
85
  path: /v1.0/domain/availability
86
+ headers:
87
+ X-AF-Credits-Cost:
88
+ $ref: '#/components/headers/X-AF-Credits-Cost'
83
89
  '408':
84
90
  description: Request Timeout – Unable to fetch WHOIS data
85
91
  content:
@@ -95,6 +101,9 @@ paths:
95
101
  error: Request Timeout
96
102
  message: 'Unable to fetch whois data. Please try again. [For Technical Support email at: support@apifreaks.com]'
97
103
  path: /v1.0/domain/availability
104
+ headers:
105
+ X-AF-Credits-Cost:
106
+ $ref: '#/components/headers/X-AF-Credits-Cost'
98
107
  operationId: checkDomainAvailability
99
108
  components:
100
109
  securitySchemes:
@@ -144,6 +153,11 @@ components:
144
153
  type: string
145
154
  format: date-time
146
155
  description: Timestamp when the error occurred (ISO 8601).
156
+ headers:
157
+ X-AF-Credits-Cost:
158
+ description: Specifies the number of credits consumed by the current request.
159
+ schema:
160
+ type: integer
147
161
  security:
148
162
  - ApiKeyAuthHeader: []
149
163
  - ApiKeyAuthQuery: []
@@ -91,6 +91,9 @@ paths:
91
91
  - subdomain: www.reusablesec.sites.google.com
92
92
  first_seen: '2020-02-18'
93
93
  last_seen: '2026-06-20'
94
+ headers:
95
+ X-AF-Credits-Cost:
96
+ $ref: '#/components/headers/X-AF-Credits-Cost'
94
97
  '400':
95
98
  description: Bad Request – one or more parameters are invalid
96
99
  content:
@@ -138,6 +141,9 @@ paths:
138
141
  error: Invalid Param Exception
139
142
  message: before date cannot be greater than the current date.
140
143
  path: /v1.0/subdomains
144
+ headers:
145
+ X-AF-Credits-Cost:
146
+ $ref: '#/components/headers/X-AF-Credits-Cost'
141
147
  '408':
142
148
  description: Request Timeout – Unable to fetch WHOIS data
143
149
  content:
@@ -153,6 +159,9 @@ paths:
153
159
  error: Request Timeout
154
160
  message: 'Unable to fetch whois data. Please try again. [For Technical Support email at: support@apifreaks.com]'
155
161
  path: /v1.0/subdomains/lookup
162
+ headers:
163
+ X-AF-Credits-Cost:
164
+ $ref: '#/components/headers/X-AF-Credits-Cost'
156
165
  operationId: lookupSubdomains
157
166
  components:
158
167
  securitySchemes:
@@ -246,6 +255,11 @@ components:
246
255
  type: string
247
256
  format: date-time
248
257
  description: Timestamp when the error occurred (ISO 8601).
258
+ headers:
259
+ X-AF-Credits-Cost:
260
+ description: Specifies the number of credits consumed by the current request.
261
+ schema:
262
+ type: integer
249
263
  security:
250
264
  - ApiKeyAuthHeader: []
251
265
  - ApiKeyAuthQuery: []
@@ -2,7 +2,7 @@ openapi: 3.1.1
2
2
  info:
3
3
  title: Bulk Email Validation API - Validate and Verify Emails in Bulk
4
4
  version: 1.0.0
5
- description: Validate up to 100 email addresses in a single POST request. Each email is processed independently. Returns an array of validation results with deliverability assessment per email, plus per-item error objects for failed validations. Maximum 100 email addresses per request.
5
+ description: Validate up to 10 email addresses in a single POST request. Each email is processed independently. Returns an array of validation results with deliverability assessment per email, plus per-item error objects for failed validations. Maximum 10 email addresses per request.
6
6
  contact:
7
7
  name: APIFreaks Support
8
8
  url: https://apifreaks.com/contact
@@ -16,7 +16,7 @@ paths:
16
16
  tags:
17
17
  - Email Validation APIs
18
18
  summary: Validate multiple email addresses
19
- description: Validates a bulk of email addresses and returns result for each. Maximum `100` email addresses per request.
19
+ description: Validates a bulk of email addresses and returns result for each. Maximum `10` email addresses per request.
20
20
  parameters:
21
21
  - name: format
22
22
  in: query
@@ -45,7 +45,7 @@ paths:
45
45
  bulkEmailsValidated:
46
46
  summary: Mix of a valid and a syntactically invalid email
47
47
  value:
48
- emailValidationResponses:
48
+ emailResponse:
49
49
  - success: true
50
50
  email: abc.def@gmail.com
51
51
  validEmail: valid
@@ -61,7 +61,7 @@ paths:
61
61
  role: false
62
62
  fullMailBox: false
63
63
  dns:
64
- mxRecords:
64
+ mxRecord:
65
65
  - gmail-smtp-in.l.google.com.
66
66
  - alt1.gmail-smtp-in.l.google.com.
67
67
  - alt2.gmail-smtp-in.l.google.com.
@@ -74,6 +74,13 @@ paths:
74
74
  domain:
75
75
  name: not-an-email
76
76
  validDomain: false
77
+ headers:
78
+ X-AF-Credits-Cost:
79
+ $ref: '#/components/headers/X-AF-Credits-Cost'
80
+ X-Concurrent-Threads:
81
+ $ref: '#/components/headers/X-Concurrent-Threads'
82
+ X-Concurrent-Threads-Active:
83
+ $ref: '#/components/headers/X-Concurrent-Threads-Active'
77
84
  '400':
78
85
  description: Bad Request – Invalid request body
79
86
  content:
@@ -89,6 +96,26 @@ paths:
89
96
  status: 400
90
97
  error: Invalid request body Exception
91
98
  message: Please provide data in required format in request body
99
+ headers:
100
+ X-AF-Credits-Cost:
101
+ $ref: '#/components/headers/X-AF-Credits-Cost'
102
+ '404':
103
+ description: Not Found – The requested resource could not be found
104
+ content:
105
+ application/json:
106
+ schema:
107
+ $ref: '#/components/schemas/ErrorResponse'
108
+ examples:
109
+ Resource Not Found:
110
+ value:
111
+ timestamp: '2026-09-02T11:57:55.592Z'
112
+ path: /v1.0/email-validation/bulkx
113
+ status: 404
114
+ error: Resource Not Found
115
+ message: The requested resource could not be found. Please verify the URL and try again.
116
+ headers:
117
+ X-AF-Credits-Cost:
118
+ $ref: '#/components/headers/X-AF-Credits-Cost'
92
119
  '408':
93
120
  description: Request Timeout
94
121
  content:
@@ -103,6 +130,26 @@ paths:
103
130
  status: 408
104
131
  error: Request Timeout
105
132
  message: Timed out while connecting to the remote URL.
133
+ headers:
134
+ X-AF-Credits-Cost:
135
+ $ref: '#/components/headers/X-AF-Credits-Cost'
136
+ '413':
137
+ description: Payload Too Large – emailData exceeds the maximum of 10 entries per request
138
+ content:
139
+ application/json:
140
+ schema:
141
+ $ref: '#/components/schemas/ErrorResponse'
142
+ examples:
143
+ Payload Too Large:
144
+ value:
145
+ timestamp: '2026-09-02T11:57:34.223Z'
146
+ path: /v2/email-validation/bulk
147
+ status: 413
148
+ error: Payload too large Exception
149
+ message: Maximum request body size limit exceeded
150
+ headers:
151
+ X-AF-Credits-Cost:
152
+ $ref: '#/components/headers/X-AF-Credits-Cost'
106
153
  '429':
107
154
  description: Rate Limit Exceeded
108
155
  content:
@@ -117,6 +164,9 @@ paths:
117
164
  status: 429
118
165
  error: Too Many Requests
119
166
  message: API rate limit exceeded.
167
+ headers:
168
+ X-AF-Credits-Cost:
169
+ $ref: '#/components/headers/X-AF-Credits-Cost'
120
170
  operationId: bulkCheckEmail
121
171
  components:
122
172
  securitySchemes:
@@ -135,9 +185,9 @@ components:
135
185
  type: object
136
186
  description: Wrapper containing the per-email results array.
137
187
  required:
138
- - emailValidationResponses
188
+ - emailResponse
139
189
  properties:
140
- emailValidationResponses:
190
+ emailResponse:
141
191
  type: array
142
192
  description: Array of per-email results, one entry per requested email, in the same order as the request. Invalid emails are reflected via validEmail/validSyntax, not a separate error shape.
143
193
  items:
@@ -172,7 +222,8 @@ components:
172
222
  - INVALID_EMAIL
173
223
  - unknown
174
224
  - risky
175
- description: 'Comprehensive deliverability assessment. Casing is inconsistent in the live API: syntactically invalid addresses return INVALID_EMAIL, while semantically invalid (undeliverable) addresses return lowercase invalid. unknown/risky are documented possibilities not observed during testing.'
225
+ - app_server_blocked
226
+ description: 'Comprehensive deliverability assessment. Casing is inconsistent in the live API: syntactically invalid addresses return INVALID_EMAIL, while semantically invalid (undeliverable) addresses return lowercase invalid. risky is a documented possibility not observed during testing. app_server_blocked is returned when the recipient mail server blocked the live verification attempt (reason explains that retrying later may succeed).'
176
227
  validSyntax:
177
228
  type: boolean
178
229
  description: Validates email address format compliance with RFC 5322 standards.
@@ -229,14 +280,14 @@ components:
229
280
  DnsObject:
230
281
  type: object
231
282
  required:
232
- - mxRecords
283
+ - mxRecord
233
284
  properties:
234
- mxRecords:
285
+ mxRecord:
235
286
  type: array
236
287
  items:
237
288
  type: string
238
289
  description: Collection of MX (Mail Exchange) hostname records from DNS queries.
239
- aRecords:
290
+ aRecord:
240
291
  type: array
241
292
  items:
242
293
  type: string
@@ -355,8 +406,8 @@ components:
355
406
  properties:
356
407
  emailData:
357
408
  type: array
358
- description: Array of email objects to validate. Maximum 100 per request.
359
- maxItems: 100
409
+ description: Array of email objects to validate. Maximum 10 per request.
410
+ maxItems: 10
360
411
  items:
361
412
  $ref: '#/components/schemas/BulkEmailRequestItem'
362
413
  BulkEmailRequestItem:
@@ -398,6 +449,19 @@ components:
398
449
  type: string
399
450
  format: date-time
400
451
  description: Timestamp when the error occurred (ISO 8601).
452
+ headers:
453
+ X-AF-Credits-Cost:
454
+ description: Specifies the number of credits consumed by the current request.
455
+ schema:
456
+ type: integer
457
+ X-Concurrent-Threads:
458
+ description: Specifies the maximum number of concurrent requests allowed.
459
+ schema:
460
+ type: integer
461
+ X-Concurrent-Threads-Active:
462
+ description: Indicates the number of active concurrent requests being processed.
463
+ schema:
464
+ type: integer
401
465
  security:
402
466
  - ApiKeyAuthHeader: []
403
467
  - ApiKeyAuthQuery: []
@@ -2,7 +2,7 @@ openapi: 3.1.1
2
2
  info:
3
3
  title: Email Checker API - Real-Time Validation, Deliverability & Risk Signals
4
4
  version: 1.0.0
5
- description: Validate a single email address and receive comprehensive results including syntax validation, domain verification, account detection, DNS records (MX and A records), and optional IP-based geolocation and security enrichment. Returns deliverability assessment with valid/invalid/unknown/risky status.
5
+ description: Validate a single email address and receive comprehensive results including syntax validation, domain verification, account detection, DNS records (MX and A records), and optional IP-based geolocation and security enrichment. Returns deliverability assessment with valid/invalid/unknown/risky/app_server_blocked status.
6
6
  contact:
7
7
  name: APIFreaks Support
8
8
  url: https://apifreaks.com/contact
@@ -59,7 +59,7 @@ paths:
59
59
  role: false
60
60
  fullMailBox: false
61
61
  dns:
62
- mxRecords:
62
+ mxRecord:
63
63
  - gmail-smtp-in.l.google.com.
64
64
  - alt1.gmail-smtp-in.l.google.com.
65
65
  - alt2.gmail-smtp-in.l.google.com.
@@ -110,7 +110,7 @@ paths:
110
110
  role: false
111
111
  fullMailBox: false
112
112
  dns:
113
- mxRecords:
113
+ mxRecord:
114
114
  - gmail-smtp-in.l.google.com.
115
115
  - alt1.gmail-smtp-in.l.google.com.
116
116
  - alt2.gmail-smtp-in.l.google.com.
@@ -145,6 +145,33 @@ paths:
145
145
  is_bot: false
146
146
  is_cloud_provider: true
147
147
  cloud_provider: Google LLC
148
+ appServerBlocked:
149
+ summary: Valid syntax, but the recipient mail server blocked the verification attempt
150
+ value:
151
+ success: true
152
+ email: randomuser98765zzz@gmx.com
153
+ validEmail: app_server_blocked
154
+ validSyntax: true
155
+ reason: We are unable to determine the validity of email at the moment. Please try later.
156
+ domain:
157
+ name: gmx.com
158
+ disposable: false
159
+ spam: false
160
+ free: true
161
+ validDomain: true
162
+ catchAll: false
163
+ account:
164
+ role: false
165
+ dns:
166
+ mxRecord:
167
+ - mx00.gmx.net.
168
+ headers:
169
+ X-AF-Credits-Cost:
170
+ $ref: '#/components/headers/X-AF-Credits-Cost'
171
+ X-Concurrent-Threads:
172
+ $ref: '#/components/headers/X-Concurrent-Threads'
173
+ X-Concurrent-Threads-Active:
174
+ $ref: '#/components/headers/X-Concurrent-Threads-Active'
148
175
  '400':
149
176
  description: Bad Request – Invalid request body
150
177
  content:
@@ -155,11 +182,39 @@ paths:
155
182
  missingEmail:
156
183
  summary: email field missing from request body
157
184
  value:
158
- timestamp: '2026-07-27T12:51:23.593986185Z'
159
- path: /v2.0/email-validation/single
185
+ timestamp: '2026-09-02T11:56:23.462Z'
186
+ path: /v2/email-validation/single
160
187
  status: 400
161
- error: External API Error
188
+ error: Missing or Invalid Parameters
162
189
  message: Please pass valid value for 'email' in body.
190
+ headers:
191
+ X-AF-Credits-Cost:
192
+ $ref: '#/components/headers/X-AF-Credits-Cost'
193
+ X-Concurrent-Threads:
194
+ $ref: '#/components/headers/X-Concurrent-Threads'
195
+ X-Concurrent-Threads-Active:
196
+ $ref: '#/components/headers/X-Concurrent-Threads-Active'
197
+ '404':
198
+ description: Not Found – The requested resource could not be found
199
+ content:
200
+ application/json:
201
+ schema:
202
+ $ref: '#/components/schemas/ErrorResponse'
203
+ examples:
204
+ Resource Not Found:
205
+ value:
206
+ timestamp: '2026-09-02T11:56:23.937Z'
207
+ path: /v1.0/email-validation/singlex
208
+ status: 404
209
+ error: Resource Not Found
210
+ message: The requested resource could not be found. Please verify the URL and try again.
211
+ headers:
212
+ X-AF-Credits-Cost:
213
+ $ref: '#/components/headers/X-AF-Credits-Cost'
214
+ X-Concurrent-Threads:
215
+ $ref: '#/components/headers/X-Concurrent-Threads'
216
+ X-Concurrent-Threads-Active:
217
+ $ref: '#/components/headers/X-Concurrent-Threads-Active'
163
218
  '408':
164
219
  description: Request Timeout
165
220
  content:
@@ -174,6 +229,13 @@ paths:
174
229
  status: 408
175
230
  error: Request Timeout
176
231
  message: Timed out while connecting to the remote URL.
232
+ headers:
233
+ X-AF-Credits-Cost:
234
+ $ref: '#/components/headers/X-AF-Credits-Cost'
235
+ X-Concurrent-Threads:
236
+ $ref: '#/components/headers/X-Concurrent-Threads'
237
+ X-Concurrent-Threads-Active:
238
+ $ref: '#/components/headers/X-Concurrent-Threads-Active'
177
239
  '429':
178
240
  description: Rate Limit Exceeded
179
241
  content:
@@ -188,6 +250,13 @@ paths:
188
250
  status: 429
189
251
  error: Too Many Requests
190
252
  message: API rate limit exceeded.
253
+ headers:
254
+ X-AF-Credits-Cost:
255
+ $ref: '#/components/headers/X-AF-Credits-Cost'
256
+ X-Concurrent-Threads:
257
+ $ref: '#/components/headers/X-Concurrent-Threads'
258
+ X-Concurrent-Threads-Active:
259
+ $ref: '#/components/headers/X-Concurrent-Threads-Active'
191
260
  operationId: checkEmail
192
261
  components:
193
262
  securitySchemes:
@@ -232,7 +301,8 @@ components:
232
301
  - INVALID_EMAIL
233
302
  - unknown
234
303
  - risky
235
- description: 'Comprehensive deliverability assessment. Casing is inconsistent in the live API: syntactically invalid addresses return INVALID_EMAIL, while semantically invalid (undeliverable) addresses return lowercase invalid. unknown/risky are documented possibilities not observed during testing.'
304
+ - app_server_blocked
305
+ description: 'Comprehensive deliverability assessment. Casing is inconsistent in the live API: syntactically invalid addresses return INVALID_EMAIL, while semantically invalid (undeliverable) addresses return lowercase invalid. risky is a documented possibility not observed during testing. app_server_blocked is returned when the recipient mail server blocked the live verification attempt (reason explains that retrying later may succeed).'
236
306
  validSyntax:
237
307
  type: boolean
238
308
  description: Validates email address format compliance with RFC 5322 standards.
@@ -289,14 +359,14 @@ components:
289
359
  DnsObject:
290
360
  type: object
291
361
  required:
292
- - mxRecords
362
+ - mxRecord
293
363
  properties:
294
- mxRecords:
364
+ mxRecord:
295
365
  type: array
296
366
  items:
297
367
  type: string
298
368
  description: Collection of MX (Mail Exchange) hostname records from DNS queries.
299
- aRecords:
369
+ aRecord:
300
370
  type: array
301
371
  items:
302
372
  type: string
@@ -446,6 +516,19 @@ components:
446
516
  type: string
447
517
  format: date-time
448
518
  description: Timestamp when the error occurred (ISO 8601).
519
+ headers:
520
+ X-AF-Credits-Cost:
521
+ description: Specifies the number of credits consumed by the current request.
522
+ schema:
523
+ type: integer
524
+ X-Concurrent-Threads:
525
+ description: Specifies the maximum number of concurrent requests allowed.
526
+ schema:
527
+ type: integer
528
+ X-Concurrent-Threads-Active:
529
+ description: Indicates the number of active concurrent requests being processed.
530
+ schema:
531
+ type: integer
449
532
  security:
450
533
  - ApiKeyAuthHeader: []
451
534
  - ApiKeyAuthQuery: []