@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,360 @@
1
+ openapi: 3.1.1
2
+ info:
3
+ title: DNS Lookup API - Live DNS Records, TTLs & PTR Lookups for Any Hostname
4
+ version: 1.0.0
5
+ description: Performs a live DNS lookup for any hostname or IP address, returning real-time records from authoritative name servers. Supports A, AAAA, MX, NS, SOA, SPF, TXT, and CNAME record types, plus PTR records when querying by IP address via the ipAddress parameter. Each record object includes parsed fields such as address, target, priority, TTL, serial, or verification strings, depending on the record type. Pass a comma-separated list of record types with the type parameter, or use 'all' to retrieve every supported type. The optional format parameter allows switching between JSON and XML output.
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: DNS Lookup API Server
13
+ paths:
14
+ /domain/dns/live:
15
+ get:
16
+ tags:
17
+ - DNS APIs
18
+ summary: Perform a live DNS lookup for any hostname or IP address
19
+ description: Retrieve real-time DNS records for any hostname or IP address. Returns A, AAAA, MX, NS, SOA, SPF, TXT, CNAME, and PTR records with full parsed fields.
20
+ operationId: dnsLookup
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.
32
+ - name: host-name
33
+ in: query
34
+ required: true
35
+ schema:
36
+ type: string
37
+ description: Hostname or URL whose DNS records are required.
38
+ - name: ipAddress
39
+ in: query
40
+ required: false
41
+ schema:
42
+ type: string
43
+ description: The IP address for requested DNS's PTR record. 'type' parameter must be set to 'all'.
44
+ - name: type
45
+ in: query
46
+ required: true
47
+ schema:
48
+ type: string
49
+ enum:
50
+ - A
51
+ - AAAA
52
+ - MX
53
+ - NS
54
+ - SOA
55
+ - SPF
56
+ - TXT
57
+ - CNAME
58
+ - all
59
+ description: 'A comma-separated list of DNS record types for lookup. Possible values: A, AAAA, MX, NS, SOA, SPF, TXT, CNAME, or all. When ipAddress is provided, type must be "all".'
60
+ responses:
61
+ '200':
62
+ description: Successful DNS lookup response
63
+ content:
64
+ application/json:
65
+ schema:
66
+ $ref: '#/components/schemas/DNSLookupResponse'
67
+ examples:
68
+ default:
69
+ value:
70
+ status: true
71
+ queryTime: '2026-06-06 10:43:05'
72
+ domainName: example.com
73
+ domainRegistered: true
74
+ dnsTypes:
75
+ A: 1
76
+ NS: 2
77
+ SOA: 6
78
+ MX: 15
79
+ TXT: 16
80
+ AAAA: 28
81
+ SPF: 99
82
+ dnsRecords:
83
+ - name: example.com
84
+ type: 1
85
+ dnsType: A
86
+ ttl: 300
87
+ rawText: "example.com.\t\t300\tIN\tA\t104.20.23.154"
88
+ rRsetType: 1
89
+ address: 104.20.23.154
90
+ - name: example.com
91
+ type: 1
92
+ dnsType: A
93
+ ttl: 300
94
+ rawText: "example.com.\t\t300\tIN\tA\t172.66.147.243"
95
+ rRsetType: 1
96
+ address: 172.66.147.243
97
+ - name: example.com
98
+ type: 2
99
+ dnsType: NS
100
+ ttl: 21600
101
+ rawText: "example.com.\t\t21600\tIN\tNS\telliott.ns.cloudflare.com."
102
+ rRsetType: 2
103
+ singleName: elliott.ns.cloudflare.com.
104
+ - name: example.com
105
+ type: 2
106
+ dnsType: NS
107
+ ttl: 21600
108
+ rawText: "example.com.\t\t21600\tIN\tNS\thera.ns.cloudflare.com."
109
+ rRsetType: 2
110
+ singleName: hera.ns.cloudflare.com.
111
+ - name: example.com
112
+ type: 6
113
+ dnsType: SOA
114
+ ttl: 1800
115
+ rawText: "example.com.\t\t1800\tIN\tSOA\telliott.ns.cloudflare.com. dns.cloudflare.com. 2405749864 10000 2400 604800 1800"
116
+ rRsetType: 6
117
+ admin: dns.cloudflare.com.
118
+ host: elliott.ns.cloudflare.com.
119
+ expire: 604800
120
+ minimum: 1800
121
+ refresh: 10000
122
+ retry: 2400
123
+ serial: 2405749864
124
+ - name: example.com
125
+ type: 15
126
+ dnsType: MX
127
+ ttl: 236
128
+ rawText: "example.com.\t\t236\tIN\tMX\t0 ."
129
+ rRsetType: 15
130
+ target: .
131
+ priority: 0
132
+ - name: example.com
133
+ type: 16
134
+ dnsType: TXT
135
+ ttl: 300
136
+ rawText: "example.com.\t\t300\tIN\tTXT\t\"_k2n1y4vw3qtb4skdx9e7dxt97qrmmq9\""
137
+ rRsetType: 16
138
+ strings:
139
+ - _k2n1y4vw3qtb4skdx9e7dxt97qrmmq9
140
+ - name: example.com
141
+ type: 28
142
+ dnsType: AAAA
143
+ ttl: 300
144
+ rawText: "example.com.\t\t300\tIN\tAAAA\t2606:4700:10:0:0:0:ac42:93f3"
145
+ rRsetType: 28
146
+ address: 2606:4700:10:0:0:0:ac42:93f3
147
+ - name: example.com
148
+ type: 28
149
+ dnsType: AAAA
150
+ ttl: 300
151
+ rawText: "example.com.\t\t300\tIN\tAAAA\t2606:4700:10:0:0:0:6814:179a"
152
+ rRsetType: 28
153
+ address: 2606:4700:10:0:0:0:6814:179a
154
+ - name: example.com
155
+ type: 99
156
+ dnsType: SPF
157
+ ttl: 300
158
+ rawText: "example.com.\t\t300\tIN\tSPF\t\"v=spf1 -all\""
159
+ rRsetType: 99
160
+ strings:
161
+ - v=spf1 -all
162
+ ptrLookup:
163
+ summary: PTR lookup via ipAddress
164
+ value:
165
+ status: true
166
+ queryTime: '2026-07-23 09:51:24'
167
+ ipAddress: 8.8.8.8
168
+ dnsTypes:
169
+ PTR: 12
170
+ dnsRecords:
171
+ - name: 8.8.8.8.in-addr.arpa
172
+ type: 12
173
+ dnsType: PTR
174
+ ttl: 16954
175
+ rawText: "8.8.8.8.in-addr.arpa.\t16954\tIN\tPTR\tdns.google."
176
+ rRsetType: 12
177
+ singleName: dns.google.
178
+ '400':
179
+ description: Bad Request — Missing or invalid parameters
180
+ content:
181
+ application/json:
182
+ schema:
183
+ $ref: '#/components/schemas/ErrorResponse'
184
+ examples:
185
+ missingParams:
186
+ summary: Missing required parameter
187
+ value:
188
+ error: Invalid Param Exception
189
+ message: please pass correct parameters
190
+ path: /v1.0/domain/dns/live
191
+ status: 400
192
+ timestamp: '2026-07-23T09:50:58.722Z'
193
+ invalidType:
194
+ summary: Unsupported DNS record type
195
+ value:
196
+ timestamp: '2026-07-23T09:51:08.447Z'
197
+ status: 400
198
+ error: Invalid Param Exception
199
+ message: 'Please provide correct dns records type(s) [For Technical Support: support@whoisfreaks.com]'
200
+ path: /v2.0/dns/live
201
+ malformedHostname:
202
+ summary: Hostname missing a valid TLD
203
+ value:
204
+ timestamp: '2026-07-23T09:54:13.140Z'
205
+ status: 400
206
+ error: Invalid Param Exception
207
+ message: 'Please pass domain param correct value[For Technical Support: support@whoisfreaks.com]'
208
+ path: /v2.0/dns/live
209
+ components:
210
+ securitySchemes:
211
+ ApiKeyAuthHeader:
212
+ type: apiKey
213
+ in: header
214
+ name: X-apiKey
215
+ description: Pass your API key via the X-apiKey request header.
216
+ ApiKeyAuthQuery:
217
+ type: apiKey
218
+ in: query
219
+ name: apiKey
220
+ description: Pass your API key via the apiKey query parameter.
221
+ schemas:
222
+ DNSLookupResponse:
223
+ type: object
224
+ required:
225
+ - status
226
+ - queryTime
227
+ - dnsTypes
228
+ - dnsRecords
229
+ properties:
230
+ status:
231
+ type: boolean
232
+ description: Indicates whether the query was processed successfully.
233
+ queryTime:
234
+ type: string
235
+ format: date-time
236
+ description: Time at which the query was made (Format:YYYY-MM-DD HH:mm:ss).
237
+ domainName:
238
+ type: string
239
+ description: Queried domain name.
240
+ domainRegistered:
241
+ type: boolean
242
+ description: Indicates whether the domain is registered.
243
+ ipAddress:
244
+ type: string
245
+ description: IP address queried (present when ipAddress parameter is used instead of host-name).
246
+ dnsTypes:
247
+ $ref: '#/components/schemas/DnsTypes'
248
+ dnsRecords:
249
+ type: array
250
+ description: List of DNS records. Field presence varies by dnsType — see DnsRecord for which fields apply to which type.
251
+ items:
252
+ $ref: '#/components/schemas/DnsRecord'
253
+ DnsTypes:
254
+ type: object
255
+ description: 'Map of each DNS record type present in dnsRecords to its IANA DNS resource record type code (e.g. A: 1, AAAA: 28, MX: 15, NS: 2, SOA: 6, TXT: 16, SPF: 99, PTR: 12). Indicates which record types were found, not how many of each — count entries in dnsRecords for that.'
256
+ additionalProperties:
257
+ title: DnsTypeCode
258
+ type: integer
259
+ description: 'IANA DNS resource record type code for this DNS record type (A: 1, AAAA: 28, CNAME: 5, MX: 15, NS: 2, SOA: 6, TXT: 16, SPF: 99, PTR: 12).'
260
+ DnsRecord:
261
+ type: object
262
+ description: A single DNS resource record. name, type, dnsType, ttl, rawText, and rRsetType are always present; every other field is populated only for the dnsType(s) noted in its description.
263
+ required:
264
+ - name
265
+ - type
266
+ - dnsType
267
+ - ttl
268
+ - rawText
269
+ - rRsetType
270
+ properties:
271
+ name:
272
+ type: string
273
+ description: Name of the queried domain, or the reverse DNS name (e.g. '8.8.8.8.in-addr.arpa') for PTR records.
274
+ type:
275
+ type: integer
276
+ description: DNS type code (1=A, 28=AAAA, 5=CNAME, 15=MX, 2=NS, 6=SOA, 16=TXT, 99=SPF, 12=PTR).
277
+ dnsType:
278
+ type: string
279
+ enum:
280
+ - A
281
+ - AAAA
282
+ - CNAME
283
+ - MX
284
+ - NS
285
+ - SOA
286
+ - TXT
287
+ - SPF
288
+ - PTR
289
+ description: DNS record type as a string.
290
+ ttl:
291
+ type: integer
292
+ description: Time to live in seconds.
293
+ rawText:
294
+ type: string
295
+ description: Raw (un-parsed) DNS record text.
296
+ rRsetType:
297
+ type: integer
298
+ description: Resource record set type code.
299
+ address:
300
+ type: string
301
+ description: IPv4 or IPv6 address. Present only when dnsType is A or AAAA.
302
+ target:
303
+ type: string
304
+ description: Target hostname. Present only when dnsType is CNAME or MX.
305
+ priority:
306
+ type: integer
307
+ description: Mail server priority. Present only when dnsType is MX.
308
+ singleName:
309
+ type: string
310
+ description: Authoritative name server (NS) or reverse-resolved hostname (PTR). Present only when dnsType is NS or PTR.
311
+ admin:
312
+ type: string
313
+ description: Administrative contact email. Present only when dnsType is SOA.
314
+ host:
315
+ type: string
316
+ description: Primary name server. Present only when dnsType is SOA.
317
+ expire:
318
+ type: integer
319
+ description: Expiry time in seconds. Present only when dnsType is SOA.
320
+ minimum:
321
+ type: integer
322
+ description: Minimum TTL in seconds. Present only when dnsType is SOA.
323
+ refresh:
324
+ type: integer
325
+ description: Refresh interval in seconds. Present only when dnsType is SOA.
326
+ retry:
327
+ type: integer
328
+ description: Retry interval in seconds. Present only when dnsType is SOA.
329
+ serial:
330
+ type: integer
331
+ description: Serial number. Present only when dnsType is SOA.
332
+ strings:
333
+ type: array
334
+ description: Verification or policy strings. Present only when dnsType is TXT or SPF.
335
+ items:
336
+ type: string
337
+ ErrorResponse:
338
+ type: object
339
+ required:
340
+ - message
341
+ properties:
342
+ error:
343
+ type: string
344
+ description: Short error category or exception type.
345
+ message:
346
+ type: string
347
+ description: Human-readable error message describing the failure.
348
+ path:
349
+ type: string
350
+ description: API endpoint path that produced the error.
351
+ status:
352
+ type: integer
353
+ description: HTTP status code returned with the error.
354
+ timestamp:
355
+ type: string
356
+ format: date-time
357
+ description: Timestamp when the error occurred (ISO 8601).
358
+ security:
359
+ - ApiKeyAuthHeader: []
360
+ - ApiKeyAuthQuery: []
@@ -0,0 +1,338 @@
1
+ openapi: 3.1.1
2
+ info:
3
+ title: Reverse DNS Lookup API - Find Every Hostname Behind an IP, MX, NS, or CNAME
4
+ version: 1.0.0
5
+ description: The Reverse DNS Lookup API finds every hostname associated with a given IP address, CIDR block, nameserver, mail host, or other DNS selector. The type parameter switches between A, AAAA, MX, NS, SOA, SPF, TXT, and CNAME lookups to control how the value parameter is interpreted. Wildcard regex matching on the value parameter is supported for flexible pattern searches such as m*.google.com. An exact-match filter is available when you need only exact hits rather than all partial matches. Results are paginated with 100 records per page and include dated DNS snapshots for each matched domain.
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: Reverse DNS Lookup API Server
13
+ paths:
14
+ /domain/dns/reverse:
15
+ get:
16
+ tags:
17
+ - DNS APIs
18
+ summary: Retrieve all hostnames associated with any A, AAAA, MX, NS, SOA, SPF, TXT, or CNAME DNS record
19
+ description: Perform a reverse DNS lookup by providing an IP or CIDR for A/AAAA lookups, or a hostname selector for MX, NS, SOA, SPF, TXT, and CNAME queries. Returns paginated results with dated DNS snapshots for each matched domain.
20
+ operationId: reverseDnsLookup
21
+ parameters:
22
+ - name: format
23
+ in: query
24
+ required: false
25
+ description: Format of the response.
26
+ schema:
27
+ type: string
28
+ enum:
29
+ - json
30
+ - xml
31
+ default: json
32
+ - name: type
33
+ in: query
34
+ required: true
35
+ description: |-
36
+ The type of reverse DNS lookup to perform. Determines how the value parameter is interpreted:
37
+ - A: IPv4 CIDR block
38
+ - AAAA: IPv6 CIDR block
39
+ - MX: Mail provider domain
40
+ - NS: Name server provider hostname
41
+ - SOA: SOA record admin domain
42
+ - SPF/TXT: Target verification strings
43
+ - CNAME: Target hostname
44
+ schema:
45
+ type: string
46
+ enum:
47
+ - A
48
+ - AAAA
49
+ - MX
50
+ - NS
51
+ - SOA
52
+ - SPF
53
+ - TXT
54
+ - CNAME
55
+ - name: value
56
+ in: query
57
+ required: true
58
+ description: Provide an IP or CIDR for A/AAAA lookups, or a hostname/selector for MX, NS, SOA, SPF, TXT, and CNAME queries. Wildcard regex patterns are also supported (e.g., mail.google.com, m*.google.com, _spf.g*.com, s*.g*.com).
59
+ schema:
60
+ type: string
61
+ - name: exact
62
+ in: query
63
+ required: false
64
+ description: When true, returns only records that exactly match the input (NS, MX, CNAME, SOA, SPF, TXT). When false, returns all matches (default when omitted).
65
+ schema:
66
+ type: boolean
67
+ default: false
68
+ - name: page
69
+ in: query
70
+ required: false
71
+ description: Page number to paginate through results (defaults to 1).
72
+ schema:
73
+ type: integer
74
+ minimum: 1
75
+ default: 1
76
+ responses:
77
+ '200':
78
+ description: Successful Response
79
+ content:
80
+ application/json:
81
+ schema:
82
+ $ref: '#/components/schemas/ReverseDnsResponse'
83
+ examples:
84
+ default:
85
+ summary: Reverse DNS lookup for IP 8.8.8.8
86
+ value:
87
+ totalRecords: 89950
88
+ totalPages: 900
89
+ currentPage: 1
90
+ reverseDnsRecords:
91
+ - queryTime: '2024-05-30'
92
+ domainName: www.maguire.romamenu.cotest.avalon-invest.pro
93
+ dnsTypes:
94
+ A: 1
95
+ dnsRecords:
96
+ - name: www.maguire.romamenu.cotest.avalon-invest.pro
97
+ type: 1
98
+ dnsType: A
99
+ ttl: 300
100
+ rawText: "www.maguire.romamenu.cotest.avalon-invest.pro.\t300\tIN\tA\t8.8.8.8"
101
+ rRsetType: 1
102
+ address: 8.8.8.8
103
+ - queryTime: '2026-06-13'
104
+ domainName: qa-allure.salt-dev.ws
105
+ dnsTypes:
106
+ A: 1
107
+ dnsRecords:
108
+ - name: qa-allure.salt-dev.ws
109
+ type: 1
110
+ dnsType: A
111
+ ttl: 300
112
+ rawText: "qa-allure.salt-dev.ws.\t300\tIN\tA\t8.8.8.8"
113
+ rRsetType: 1
114
+ address: 8.8.8.8
115
+ - queryTime: '2026-03-21'
116
+ domainName: www.hailibu.cn
117
+ dnsTypes:
118
+ A: 1
119
+ dnsRecords:
120
+ - name: www.hailibu.cn
121
+ type: 1
122
+ dnsType: A
123
+ ttl: 1
124
+ rawText: "www.hailibu.cn.\t\t1\tIN\tA\t8.8.8.8"
125
+ rRsetType: 1
126
+ address: 8.8.8.8
127
+ '400':
128
+ description: Invalid DNS type or missing required parameter
129
+ content:
130
+ application/json:
131
+ schema:
132
+ $ref: '#/components/schemas/ErrorResponse'
133
+ examples:
134
+ invalidType:
135
+ summary: Invalid DNS type
136
+ value:
137
+ timestamp: '2026-07-23T09:51:58.340Z'
138
+ path: /v2.1/dns/reverse
139
+ status: 400
140
+ error: Invalid Param Exception
141
+ message: Invalid dns Record Type. Kindly use the supported record types.
142
+ missingValue:
143
+ summary: Missing required value parameter
144
+ value:
145
+ error: Invalid Param Exception
146
+ message: please pass correct parameters
147
+ path: /v1.0/domain/dns/reverse
148
+ status: 400
149
+ timestamp: '2026-07-23T09:51:58.951Z'
150
+ '404':
151
+ description: No reverse DNS records found for the given input
152
+ content:
153
+ application/json:
154
+ schema:
155
+ $ref: '#/components/schemas/ErrorResponse'
156
+ examples:
157
+ default:
158
+ summary: No records found
159
+ value:
160
+ timestamp: '2026-07-23T09:52:07.079Z'
161
+ path: /v2.1/dns/reverse
162
+ status: 404
163
+ error: Record not Found
164
+ message: 'No Record Found across: zzsuperrandomnonexistentmxprovider99988.com'
165
+ components:
166
+ securitySchemes:
167
+ ApiKeyAuthHeader:
168
+ type: apiKey
169
+ in: header
170
+ name: X-apiKey
171
+ description: Pass your API key in the X-apiKey header.
172
+ ApiKeyAuthQuery:
173
+ type: apiKey
174
+ in: query
175
+ name: apiKey
176
+ description: Pass your API key as the apiKey query parameter.
177
+ schemas:
178
+ ErrorResponse:
179
+ type: object
180
+ required:
181
+ - timestamp
182
+ - path
183
+ - status
184
+ - error
185
+ - message
186
+ description: Standard error response returned by the API when a request fails.
187
+ properties:
188
+ timestamp:
189
+ type: string
190
+ format: date-time
191
+ description: Timestamp of the error.
192
+ path:
193
+ type: string
194
+ description: Request path that triggered the error.
195
+ status:
196
+ type: integer
197
+ description: HTTP status code.
198
+ error:
199
+ type: string
200
+ description: Error type.
201
+ message:
202
+ type: string
203
+ description: Human-readable error message.
204
+ ReverseDnsResponse:
205
+ type: object
206
+ required:
207
+ - totalRecords
208
+ - totalPages
209
+ - currentPage
210
+ - reverseDnsRecords
211
+ description: Paginated response containing all domain records matching the reverse DNS query.
212
+ properties:
213
+ totalRecords:
214
+ type: integer
215
+ description: Total number of domain records matching the reverse DNS query.
216
+ totalPages:
217
+ type: integer
218
+ description: Total number of pages available.
219
+ currentPage:
220
+ type: integer
221
+ description: Current page number in the paginated result.
222
+ reverseDnsRecords:
223
+ type: array
224
+ description: Array of matching domain records, each containing dated DNS snapshots.
225
+ items:
226
+ $ref: '#/components/schemas/ReverseDnsRecord'
227
+ ReverseDnsRecord:
228
+ type: object
229
+ description: A single domain record matched by the reverse DNS query, with its DNS snapshot data.
230
+ required:
231
+ - queryTime
232
+ - domainName
233
+ - dnsTypes
234
+ - dnsRecords
235
+ properties:
236
+ queryTime:
237
+ type: string
238
+ format: date
239
+ description: Date when the DNS snapshot was taken (YYYY-MM-DD).
240
+ domainName:
241
+ type: string
242
+ description: Matched domain name.
243
+ domainRegistered:
244
+ type: boolean
245
+ description: Indicates whether the domain is registered.
246
+ dnsTypes:
247
+ $ref: '#/components/schemas/DnsTypes'
248
+ dnsRecords:
249
+ type: array
250
+ description: Array of DNS records for this domain on this date. Field presence varies by dnsType — see DnsRecord for which fields apply to which type.
251
+ items:
252
+ $ref: '#/components/schemas/DnsRecord'
253
+ DnsTypes:
254
+ type: object
255
+ description: 'Map of each DNS record type present in dnsRecords to its IANA DNS resource record type code (e.g. A: 1, AAAA: 28, CNAME: 5, MX: 15, NS: 2, SOA: 6, TXT: 16, SPF: 99). Indicates which record types were found for this domain, not how many of each — count entries in dnsRecords for that.'
256
+ additionalProperties:
257
+ title: DnsTypeCode
258
+ type: integer
259
+ description: 'IANA DNS resource record type code for this DNS record type (A: 1, AAAA: 28, CNAME: 5, MX: 15, NS: 2, SOA: 6, TXT: 16, SPF: 99).'
260
+ DnsRecord:
261
+ type: object
262
+ description: A single DNS resource record. name, type, dnsType, ttl, rawText, and rRsetType are always present; every other field is populated only for the dnsType(s) noted in its description.
263
+ required:
264
+ - name
265
+ - type
266
+ - dnsType
267
+ - ttl
268
+ - rawText
269
+ - rRsetType
270
+ properties:
271
+ name:
272
+ type: string
273
+ description: Name of the queried domain.
274
+ type:
275
+ type: integer
276
+ description: DNS type code (1=A, 28=AAAA, 5=CNAME, 15=MX, 2=NS, 6=SOA, 16=TXT, 99=SPF).
277
+ dnsType:
278
+ type: string
279
+ enum:
280
+ - A
281
+ - AAAA
282
+ - CNAME
283
+ - MX
284
+ - NS
285
+ - SOA
286
+ - TXT
287
+ - SPF
288
+ description: DNS record type as a string.
289
+ ttl:
290
+ type: integer
291
+ description: Time to live in seconds.
292
+ rawText:
293
+ type: string
294
+ description: Raw (un-parsed) DNS record text.
295
+ rRsetType:
296
+ type: integer
297
+ description: Resource record set type code.
298
+ address:
299
+ type: string
300
+ description: IPv4 or IPv6 address. Present only when dnsType is A or AAAA.
301
+ target:
302
+ type: string
303
+ description: Target hostname. Present only when dnsType is CNAME or MX.
304
+ priority:
305
+ type: integer
306
+ description: Mail server priority. Present only when dnsType is MX.
307
+ singleName:
308
+ type: string
309
+ description: Authoritative name server. Present only when dnsType is NS.
310
+ admin:
311
+ type: string
312
+ description: Administrative contact email. Present only when dnsType is SOA.
313
+ host:
314
+ type: string
315
+ description: Primary name server. Present only when dnsType is SOA.
316
+ expire:
317
+ type: integer
318
+ description: Expiry time in seconds. Present only when dnsType is SOA.
319
+ minimum:
320
+ type: integer
321
+ description: Minimum TTL in seconds. Present only when dnsType is SOA.
322
+ refresh:
323
+ type: integer
324
+ description: Refresh interval in seconds. Present only when dnsType is SOA.
325
+ retry:
326
+ type: integer
327
+ description: Retry interval in seconds. Present only when dnsType is SOA.
328
+ serial:
329
+ type: integer
330
+ description: Serial number. Present only when dnsType is SOA.
331
+ strings:
332
+ type: array
333
+ description: Verification or policy strings. Present only when dnsType is TXT or SPF.
334
+ items:
335
+ type: string
336
+ security:
337
+ - ApiKeyAuthHeader: []
338
+ - ApiKeyAuthQuery: []