@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.
- package/LICENSE +21 -0
- package/README.md +156 -0
- package/dist/index.cjs +44663 -0
- package/dist/index.d.cts +30 -0
- package/dist/index.d.ts +30 -0
- package/dist/index.js +44631 -0
- package/package.json +81 -0
- package/specs/commodity/commodity-fluctuation.json +301 -0
- package/specs/commodity/commodity-prices.json +317 -0
- package/specs/commodity/commodity-symbols.json +215 -0
- package/specs/commodity/commodity-time-series.json +329 -0
- package/specs/commodity/historical-commodity-prices.json +273 -0
- package/specs/currency/currency-converter.json +261 -0
- package/specs/currency/currency-fluctuation.json +282 -0
- package/specs/currency/currency-historical-data-limit.json +158 -0
- package/specs/currency/currency-rate.json +229 -0
- package/specs/currency/currency-supported.json +234 -0
- package/specs/currency/currency-symbols.json +161 -0
- package/specs/currency/currency-time-series.json +325 -0
- package/specs/currency/geolocalized-currency-conversion.json +287 -0
- package/specs/currency/historical-currency-converter.json +269 -0
- package/specs/currency/historical-currency-rate.json +246 -0
- package/specs/dns/bulk-dns-lookup.json +624 -0
- package/specs/dns/dns-history-lookup.json +579 -0
- package/specs/dns/dns-lookup.json +466 -0
- package/specs/dns/reverse-dns-lookup.json +414 -0
- package/specs/domain/bulk-domain-checker.json +284 -0
- package/specs/domain/domain-search-with-suggestions.json +280 -0
- package/specs/domain/domain-search.json +206 -0
- package/specs/domain/subdomain-lookup.json +343 -0
- package/specs/email-validation/bulk-email-validation.json +534 -0
- package/specs/email-validation/email-checker.json +586 -0
- package/specs/financial/bulk-vat-rates-country.json +341 -0
- package/specs/financial/financial-apis-supported-countries.json +204 -0
- package/specs/financial/iban-validation.json +328 -0
- package/specs/financial/swift-code-finder.json +192 -0
- package/specs/financial/swift-code-lookup.json +220 -0
- package/specs/financial/vat-number-validation.json +283 -0
- package/specs/financial/vat-rates-by-ip.json +275 -0
- package/specs/financial/vat-rates-country.json +288 -0
- package/specs/general/usage-credits.json +218 -0
- package/specs/geocoding/forward-geocoding.json +402 -0
- package/specs/geocoding/reverse-geocoding.json +326 -0
- package/specs/geodb/administrative-units-details.json +250 -0
- package/specs/geodb/administrative-units-levels.json +198 -0
- package/specs/geodb/administrative-units.json +237 -0
- package/specs/geodb/cities.json +288 -0
- package/specs/geodb/countries-details.json +274 -0
- package/specs/geodb/countries.json +276 -0
- package/specs/geodb/flags-supported.json +166 -0
- package/specs/geodb/flags.json +227 -0
- package/specs/geodb/regions.json +109 -0
- package/specs/geodb/subregions.json +217 -0
- package/specs/ip-intelligence/bulk-ip-lookup.json +1162 -0
- package/specs/ip-intelligence/bulk-ip-threat-intelligence.json +417 -0
- package/specs/ip-intelligence/ip-locator.json +941 -0
- package/specs/ip-intelligence/ip-threat-intelligence.json +316 -0
- package/specs/other/astronomy-data.json +803 -0
- package/specs/pdf/delete-pdf-page.json +286 -0
- package/specs/pdf/linearize-pdf.json +277 -0
- package/specs/pdf/merge-pdf.json +285 -0
- package/specs/pdf/pdf-compress.json +304 -0
- package/specs/pdf/pdf-decrypt.json +297 -0
- package/specs/pdf/pdf-encrypt.json +314 -0
- package/specs/pdf/pdf-extract-pages.json +295 -0
- package/specs/pdf/pdf-file-status.json +208 -0
- package/specs/pdf/pdf-file.json +190 -0
- package/specs/pdf/pdf-files.json +126 -0
- package/specs/pdf/pdf-resource-download.json +168 -0
- package/specs/pdf/pdf-resource-upload-binary.json +218 -0
- package/specs/pdf/pdf-resource-upload.json +248 -0
- package/specs/pdf/pdf-restrict.json +343 -0
- package/specs/pdf/pdf-split-pages.json +281 -0
- package/specs/pdf/pdf-task-status.json +252 -0
- package/specs/pdf/pdf-to-image.json +1219 -0
- package/specs/pdf/pdf-unrestrict.json +324 -0
- package/specs/pdf/rotate-pdf-pages.json +305 -0
- package/specs/phone-validation/bulk-phone-number-validation.json +518 -0
- package/specs/phone-validation/phone-number-validation.json +456 -0
- package/specs/scraper/web-scraper.json +674 -0
- package/specs/screenshot/bulk-screenshot.json +949 -0
- package/specs/screenshot/website-screenshot.json +1147 -0
- package/specs/ssl/ssl-certificate-chain-lookup.json +756 -0
- package/specs/ssl/ssl-certificate-lookup.json +634 -0
- package/specs/timezone/timezone-converter.json +362 -0
- package/specs/timezone/timezone-lookup.json +910 -0
- package/specs/user-agent/bulk-user-agent-parser.json +441 -0
- package/specs/user-agent/user-agent-parser.json +346 -0
- package/specs/weather/air-quality.json +779 -0
- package/specs/weather/bulk-live-weather.json +834 -0
- package/specs/weather/flood-forecast.json +693 -0
- package/specs/weather/historical-weather.json +1019 -0
- package/specs/weather/live-weather.json +789 -0
- package/specs/weather/marine-weather.json +940 -0
- package/specs/weather/time-series-weather.json +1056 -0
- package/specs/weather/weather-forecast.json +1202 -0
- package/specs/whois/asn-lookup.json +729 -0
- package/specs/whois/bulk-whois-lookup.json +698 -0
- package/specs/whois/domain-whois-history-lookup.json +500 -0
- package/specs/whois/reverse-whois.json +625 -0
- package/specs/whois/whois-domain-lookup.json +533 -0
- package/specs/whois/whois-ip-lookup.json +1110 -0
- package/specs/zip-code/bulk-zip-code-lookup.json +318 -0
- package/specs/zip-code/zip-code-api.json +299 -0
- package/specs/zip-code/zip-code-distance-match.json +311 -0
- package/specs/zip-code/zip-code-distance.json +307 -0
- package/specs/zip-code/zip-codes-by-city.json +279 -0
- package/specs/zip-code/zip-codes-by-region.json +278 -0
- package/specs/zip-code/zip-codes-radius-search.json +349 -0
|
@@ -0,0 +1,625 @@
|
|
|
1
|
+
{
|
|
2
|
+
"openapi": "3.1.1",
|
|
3
|
+
"info": {
|
|
4
|
+
"title": "Reverse WHOIS API - Search Domains by Owner Name, Email, Company, or Keyword",
|
|
5
|
+
"version": "1.0.0",
|
|
6
|
+
"description": "Search all domain names registered under a particular owner, email, company name, or keyword using reverse WHOIS lookup. Returns matching domains with full registration details (default mode) or a condensed summary (mini mode). Supports exact-match filtering and paginated results (50 per page in default mode, 100 in mini mode). At least one search parameter (keyword, email, owner, or company) is required. A 404 is returned when no domains match the search criteria.",
|
|
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": "Reverse WHOIS API Server"
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"paths": {
|
|
20
|
+
"/domain/whois/reverse": {
|
|
21
|
+
"get": {
|
|
22
|
+
"tags": ["WHOIS APIs"],
|
|
23
|
+
"summary": "Search domains by owner name, email, company, or keyword",
|
|
24
|
+
"description": "Performs a reverse WHOIS search returning matching domains with registration details. Use mode=default for full WHOIS data or mode=mini for a condensed summary. When mode=default, each item in whois_domains_historical matches the ReverseWhoisDomainDefault schema (full registrar, contacts, name servers, status, and registry data). When mode=mini, each item matches the ReverseWhoisDomainMini schema (domain name, create/update/expiry dates, owner name, email, and company only).",
|
|
25
|
+
"operationId": "reverseWhoisLookup",
|
|
26
|
+
"parameters": [
|
|
27
|
+
{
|
|
28
|
+
"name": "format",
|
|
29
|
+
"in": "query",
|
|
30
|
+
"required": false,
|
|
31
|
+
"description": "Format of the response.",
|
|
32
|
+
"schema": {
|
|
33
|
+
"type": "string",
|
|
34
|
+
"enum": ["json", "xml"],
|
|
35
|
+
"default": "json"
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"name": "keyword",
|
|
40
|
+
"in": "query",
|
|
41
|
+
"required": false,
|
|
42
|
+
"description": "Keyword to search for in domain names (case-insensitive pattern matching).",
|
|
43
|
+
"schema": {
|
|
44
|
+
"type": "string"
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"name": "email",
|
|
49
|
+
"in": "query",
|
|
50
|
+
"required": false,
|
|
51
|
+
"description": "Email address to search for in registrant records (case-insensitive exact or regex match; * wildcard supported).",
|
|
52
|
+
"schema": {
|
|
53
|
+
"type": "string"
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"name": "owner",
|
|
58
|
+
"in": "query",
|
|
59
|
+
"required": false,
|
|
60
|
+
"description": "Registrant or owner name to search for (full-text phrase matching).",
|
|
61
|
+
"schema": {
|
|
62
|
+
"type": "string"
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"name": "company",
|
|
67
|
+
"in": "query",
|
|
68
|
+
"required": false,
|
|
69
|
+
"description": "Organization or company name to search for (full-text phrase matching).",
|
|
70
|
+
"schema": {
|
|
71
|
+
"type": "string"
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"name": "exact",
|
|
76
|
+
"in": "query",
|
|
77
|
+
"required": false,
|
|
78
|
+
"description": "Set to true to return only exact matches for keyword, owner, or company. Default is false.",
|
|
79
|
+
"schema": {
|
|
80
|
+
"type": "boolean",
|
|
81
|
+
"default": false
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"name": "mode",
|
|
86
|
+
"in": "query",
|
|
87
|
+
"required": false,
|
|
88
|
+
"description": "Response detail level. 'default' returns full WHOIS data per domain; 'mini' returns only key fields.",
|
|
89
|
+
"schema": {
|
|
90
|
+
"type": "string",
|
|
91
|
+
"enum": ["default", "mini"],
|
|
92
|
+
"default": "default"
|
|
93
|
+
}
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"name": "page",
|
|
97
|
+
"in": "query",
|
|
98
|
+
"required": false,
|
|
99
|
+
"description": "Page number for paginated results.",
|
|
100
|
+
"schema": {
|
|
101
|
+
"type": "integer",
|
|
102
|
+
"default": 1
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
],
|
|
106
|
+
"responses": {
|
|
107
|
+
"200": {
|
|
108
|
+
"description": "Successful reverse WHOIS search response",
|
|
109
|
+
"content": {
|
|
110
|
+
"application/json": {
|
|
111
|
+
"schema": {
|
|
112
|
+
"$ref": "#/components/schemas/ReverseWhoisResponse"
|
|
113
|
+
},
|
|
114
|
+
"examples": {
|
|
115
|
+
"defaultMode": {
|
|
116
|
+
"summary": "Default mode (full WHOIS data)",
|
|
117
|
+
"value": {
|
|
118
|
+
"total_Result": 8,
|
|
119
|
+
"total_Pages": 1,
|
|
120
|
+
"current_Page": 1,
|
|
121
|
+
"whois_domains_historical": [
|
|
122
|
+
{
|
|
123
|
+
"num": 1,
|
|
124
|
+
"status": true,
|
|
125
|
+
"domain_name": "ipgeolocationdatabase.com",
|
|
126
|
+
"query_time": "2026-05-21 04:00:28",
|
|
127
|
+
"create_date": "2010-04-14",
|
|
128
|
+
"update_date": "2026-05-19",
|
|
129
|
+
"expiry_date": "2027-04-14",
|
|
130
|
+
"domain_registrar": {
|
|
131
|
+
"iana_id": "269",
|
|
132
|
+
"registrar_name": "Key-Systems GmbH",
|
|
133
|
+
"whois_server": "whois.rrpproxy.net",
|
|
134
|
+
"website_url": "http://www.key-systems.net",
|
|
135
|
+
"email_address": "abuse@key-systems.net",
|
|
136
|
+
"phone_number": "+4968949396850"
|
|
137
|
+
},
|
|
138
|
+
"registrant_contact": {
|
|
139
|
+
"id": "Not Available From Registry",
|
|
140
|
+
"name": "On behalf of ipgeolocationdatabase.com OWNER",
|
|
141
|
+
"company": "c/o whoisproxy.com",
|
|
142
|
+
"city": "Alexandria",
|
|
143
|
+
"state": "VA",
|
|
144
|
+
"zip_code": "22314",
|
|
145
|
+
"country_name": "United States",
|
|
146
|
+
"country_code": "US",
|
|
147
|
+
"email_address": "720ed14de67db24c4eb07295ecae369f9f1bfe8a4dd5cd0c51f0e4754ee24895@ipgeolocationdatabase.com.whoisproxy.org",
|
|
148
|
+
"phone": "+6448319528"
|
|
149
|
+
},
|
|
150
|
+
"name_servers": [
|
|
151
|
+
"dale.ns.cloudflare.com",
|
|
152
|
+
"olga.ns.cloudflare.com"
|
|
153
|
+
],
|
|
154
|
+
"domain_status": ["clienttransferprohibited"],
|
|
155
|
+
"whois_raw_domain": "Domain Name: ipgeolocationdatabase.com\nRegistry Domain ID: ...\nRegistrar WHOIS Server: whois.rrpproxy.net\n...",
|
|
156
|
+
"registry_data": {
|
|
157
|
+
"domain_name": "ipgeolocationdatabase.com",
|
|
158
|
+
"domain_registrar": {
|
|
159
|
+
"registrar_name": "Key-Systems GmbH"
|
|
160
|
+
},
|
|
161
|
+
"name_servers": [
|
|
162
|
+
"dale.ns.cloudflare.com",
|
|
163
|
+
"olga.ns.cloudflare.com"
|
|
164
|
+
]
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
]
|
|
168
|
+
}
|
|
169
|
+
},
|
|
170
|
+
"miniMode": {
|
|
171
|
+
"summary": "Mini mode (condensed fields)",
|
|
172
|
+
"value": {
|
|
173
|
+
"total_Result": 8,
|
|
174
|
+
"total_Pages": 1,
|
|
175
|
+
"current_Page": 1,
|
|
176
|
+
"whois_domains_historical": [
|
|
177
|
+
{
|
|
178
|
+
"num": 1,
|
|
179
|
+
"domain_name": "ipgeolocationdatabase.com",
|
|
180
|
+
"create_date": "2010-04-14",
|
|
181
|
+
"update_date": "2026-05-19",
|
|
182
|
+
"expiry_date": "2027-04-14",
|
|
183
|
+
"name": "On behalf of ipgeolocationdatabase.com OWNER",
|
|
184
|
+
"email": "720ed14de67db24c4eb07295ecae369f9f1bfe8a4dd5cd0c51f0e4754ee24895@ipgeolocationdatabase.com.whoisproxy.org",
|
|
185
|
+
"company_name": "c/o whoisproxy.com"
|
|
186
|
+
}
|
|
187
|
+
]
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
},
|
|
194
|
+
"400": {
|
|
195
|
+
"description": "Bad Request -- Missing or invalid search parameters",
|
|
196
|
+
"content": {
|
|
197
|
+
"application/json": {
|
|
198
|
+
"schema": {
|
|
199
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
200
|
+
},
|
|
201
|
+
"examples": {
|
|
202
|
+
"missingParam": {
|
|
203
|
+
"summary": "Missing required search parameter",
|
|
204
|
+
"value": {
|
|
205
|
+
"timestamp": "2025-08-14T10:01:46.601Z",
|
|
206
|
+
"status": 400,
|
|
207
|
+
"error": "Invalid Param Exception",
|
|
208
|
+
"message": "Please pass param value.",
|
|
209
|
+
"path": "/v1.0/domain/whois/reverse"
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
},
|
|
216
|
+
"404": {
|
|
217
|
+
"description": "Not Found -- No domains match the search criteria",
|
|
218
|
+
"content": {
|
|
219
|
+
"application/json": {
|
|
220
|
+
"schema": {
|
|
221
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
222
|
+
},
|
|
223
|
+
"examples": {
|
|
224
|
+
"recordNotFound": {
|
|
225
|
+
"summary": "No matching domains found",
|
|
226
|
+
"value": {
|
|
227
|
+
"timestamp": "2025-08-14T10:01:54.778Z",
|
|
228
|
+
"status": 404,
|
|
229
|
+
"error": "Record not found",
|
|
230
|
+
"message": "Record not found.",
|
|
231
|
+
"path": "/v1.0/domain/whois/reverse"
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
},
|
|
242
|
+
"components": {
|
|
243
|
+
"securitySchemes": {
|
|
244
|
+
"ApiKeyAuthHeader": {
|
|
245
|
+
"type": "apiKey",
|
|
246
|
+
"in": "header",
|
|
247
|
+
"name": "X-apiKey",
|
|
248
|
+
"description": "Pass your API key via the X-apiKey request header."
|
|
249
|
+
},
|
|
250
|
+
"ApiKeyAuthQuery": {
|
|
251
|
+
"type": "apiKey",
|
|
252
|
+
"in": "query",
|
|
253
|
+
"name": "apiKey",
|
|
254
|
+
"description": "Pass your API key via the apiKey query parameter."
|
|
255
|
+
}
|
|
256
|
+
},
|
|
257
|
+
"schemas": {
|
|
258
|
+
"ErrorResponse": {
|
|
259
|
+
"type": "object",
|
|
260
|
+
"required": ["message"],
|
|
261
|
+
"properties": {
|
|
262
|
+
"error": {
|
|
263
|
+
"type": "string",
|
|
264
|
+
"description": "Short error category or exception type."
|
|
265
|
+
},
|
|
266
|
+
"message": {
|
|
267
|
+
"type": "string",
|
|
268
|
+
"description": "Human-readable error message describing the failure."
|
|
269
|
+
},
|
|
270
|
+
"path": {
|
|
271
|
+
"type": "string",
|
|
272
|
+
"description": "API endpoint path that produced the error."
|
|
273
|
+
},
|
|
274
|
+
"status": {
|
|
275
|
+
"type": "integer",
|
|
276
|
+
"description": "HTTP status code returned with the error."
|
|
277
|
+
},
|
|
278
|
+
"timestamp": {
|
|
279
|
+
"type": "string",
|
|
280
|
+
"format": "date-time",
|
|
281
|
+
"description": "Timestamp when the error occurred (ISO 8601)."
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
},
|
|
285
|
+
"ReverseWhoisResponse": {
|
|
286
|
+
"type": "object",
|
|
287
|
+
"description": "Paginated reverse WHOIS search result containing total matches, page info, and an array of matching domain records.",
|
|
288
|
+
"required": [
|
|
289
|
+
"total_Result",
|
|
290
|
+
"total_Pages",
|
|
291
|
+
"current_Page",
|
|
292
|
+
"whois_domains_historical"
|
|
293
|
+
],
|
|
294
|
+
"properties": {
|
|
295
|
+
"total_Result": {
|
|
296
|
+
"type": "integer",
|
|
297
|
+
"description": "Total number of domain records matching the search criteria."
|
|
298
|
+
},
|
|
299
|
+
"total_Pages": {
|
|
300
|
+
"type": "integer",
|
|
301
|
+
"description": "Total number of pages available (50 records per page in default mode, 100 in mini mode)."
|
|
302
|
+
},
|
|
303
|
+
"current_Page": {
|
|
304
|
+
"type": "integer",
|
|
305
|
+
"description": "Current page number in the paginated result."
|
|
306
|
+
},
|
|
307
|
+
"whois_domains_historical": {
|
|
308
|
+
"type": "array",
|
|
309
|
+
"description": "Array of matching domain records. In default mode each entry contains full WHOIS data; in mini mode each entry contains only key fields.",
|
|
310
|
+
"items": {
|
|
311
|
+
"oneOf": [
|
|
312
|
+
{
|
|
313
|
+
"$ref": "#/components/schemas/ReverseWhoisDomainDefault"
|
|
314
|
+
},
|
|
315
|
+
{
|
|
316
|
+
"$ref": "#/components/schemas/ReverseWhoisDomainMini"
|
|
317
|
+
}
|
|
318
|
+
]
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
},
|
|
323
|
+
"ReverseWhoisDomainDefault": {
|
|
324
|
+
"type": "object",
|
|
325
|
+
"description": "Full WHOIS record for a matching domain in default mode, including registrar, contacts, name servers, status, and registry data.",
|
|
326
|
+
"required": ["num", "status", "domain_name"],
|
|
327
|
+
"properties": {
|
|
328
|
+
"num": {
|
|
329
|
+
"type": "integer",
|
|
330
|
+
"description": "Sequential result number."
|
|
331
|
+
},
|
|
332
|
+
"status": {
|
|
333
|
+
"type": "boolean",
|
|
334
|
+
"description": "Indicates whether the WHOIS request was successfully processed."
|
|
335
|
+
},
|
|
336
|
+
"domain_name": {
|
|
337
|
+
"type": "string",
|
|
338
|
+
"description": "The matched domain name."
|
|
339
|
+
},
|
|
340
|
+
"query_time": {
|
|
341
|
+
"type": ["string", "null"],
|
|
342
|
+
"description": "Timestamp of the WHOIS query (YYYY-MM-DD HH:mm:ss)."
|
|
343
|
+
},
|
|
344
|
+
"whois_server": {
|
|
345
|
+
"type": ["string", "null"],
|
|
346
|
+
"description": "WHOIS server that provided the domain information."
|
|
347
|
+
},
|
|
348
|
+
"domain_registered": {
|
|
349
|
+
"type": ["string", "null"],
|
|
350
|
+
"enum": ["yes", "no", "restricted"],
|
|
351
|
+
"description": "Registration status: 'yes' if registered, 'no' if available, 'restricted' if locked by the registry."
|
|
352
|
+
},
|
|
353
|
+
"create_date": {
|
|
354
|
+
"type": ["string", "null"],
|
|
355
|
+
"format": "date",
|
|
356
|
+
"description": "Date when the domain was initially registered (YYYY-MM-DD)."
|
|
357
|
+
},
|
|
358
|
+
"update_date": {
|
|
359
|
+
"type": ["string", "null"],
|
|
360
|
+
"format": "date",
|
|
361
|
+
"description": "Date of the most recent update to the domain registration (YYYY-MM-DD)."
|
|
362
|
+
},
|
|
363
|
+
"expiry_date": {
|
|
364
|
+
"type": ["string", "null"],
|
|
365
|
+
"format": "date",
|
|
366
|
+
"description": "Date when the domain registration expires if not renewed (YYYY-MM-DD)."
|
|
367
|
+
},
|
|
368
|
+
"domain_registrar": {
|
|
369
|
+
"$ref": "#/components/schemas/DomainRegistrar"
|
|
370
|
+
},
|
|
371
|
+
"reseller_contact": {
|
|
372
|
+
"$ref": "#/components/schemas/WhoisContact"
|
|
373
|
+
},
|
|
374
|
+
"registrant_contact": {
|
|
375
|
+
"$ref": "#/components/schemas/WhoisContact"
|
|
376
|
+
},
|
|
377
|
+
"administrative_contact": {
|
|
378
|
+
"$ref": "#/components/schemas/WhoisContact"
|
|
379
|
+
},
|
|
380
|
+
"technical_contact": {
|
|
381
|
+
"$ref": "#/components/schemas/WhoisContact"
|
|
382
|
+
},
|
|
383
|
+
"billing_contact": {
|
|
384
|
+
"$ref": "#/components/schemas/WhoisContact"
|
|
385
|
+
},
|
|
386
|
+
"name_servers": {
|
|
387
|
+
"type": ["array", "null"],
|
|
388
|
+
"description": "List of authoritative name servers for the domain.",
|
|
389
|
+
"items": {
|
|
390
|
+
"type": "string"
|
|
391
|
+
}
|
|
392
|
+
},
|
|
393
|
+
"domain_status": {
|
|
394
|
+
"type": ["array", "null"],
|
|
395
|
+
"description": "List of domain status codes (EPP status codes).",
|
|
396
|
+
"items": {
|
|
397
|
+
"type": "string"
|
|
398
|
+
}
|
|
399
|
+
},
|
|
400
|
+
"whois_raw_domain": {
|
|
401
|
+
"type": ["string", "null"],
|
|
402
|
+
"description": "Raw WHOIS output returned by the registrar's WHOIS server."
|
|
403
|
+
},
|
|
404
|
+
"registry_data": {
|
|
405
|
+
"$ref": "#/components/schemas/RegistryData"
|
|
406
|
+
}
|
|
407
|
+
}
|
|
408
|
+
},
|
|
409
|
+
"ReverseWhoisDomainMini": {
|
|
410
|
+
"type": "object",
|
|
411
|
+
"description": "Condensed WHOIS record for a matching domain in mini mode, containing only key registration fields.",
|
|
412
|
+
"required": ["num", "domain_name"],
|
|
413
|
+
"properties": {
|
|
414
|
+
"num": {
|
|
415
|
+
"type": "integer",
|
|
416
|
+
"description": "Sequential result number."
|
|
417
|
+
},
|
|
418
|
+
"domain_name": {
|
|
419
|
+
"type": "string",
|
|
420
|
+
"description": "The matched domain name."
|
|
421
|
+
},
|
|
422
|
+
"create_date": {
|
|
423
|
+
"type": ["string", "null"],
|
|
424
|
+
"format": "date",
|
|
425
|
+
"description": "Date when the domain was initially registered (YYYY-MM-DD)."
|
|
426
|
+
},
|
|
427
|
+
"update_date": {
|
|
428
|
+
"type": ["string", "null"],
|
|
429
|
+
"format": "date",
|
|
430
|
+
"description": "Date of the most recent update to the domain registration (YYYY-MM-DD)."
|
|
431
|
+
},
|
|
432
|
+
"expiry_date": {
|
|
433
|
+
"type": ["string", "null"],
|
|
434
|
+
"format": "date",
|
|
435
|
+
"description": "Date when the domain registration expires if not renewed (YYYY-MM-DD)."
|
|
436
|
+
},
|
|
437
|
+
"name": {
|
|
438
|
+
"type": ["string", "null"],
|
|
439
|
+
"description": "Registrant or owner name."
|
|
440
|
+
},
|
|
441
|
+
"email": {
|
|
442
|
+
"type": ["string", "null"],
|
|
443
|
+
"description": "Registrant email address."
|
|
444
|
+
},
|
|
445
|
+
"company_name": {
|
|
446
|
+
"type": ["string", "null"],
|
|
447
|
+
"description": "Registrant company or organization name."
|
|
448
|
+
}
|
|
449
|
+
}
|
|
450
|
+
},
|
|
451
|
+
"DomainRegistrar": {
|
|
452
|
+
"type": "object",
|
|
453
|
+
"description": "Registrar information for the domain, including IANA ID, name, WHOIS/RDAP servers, website, and contact details.",
|
|
454
|
+
"required": [],
|
|
455
|
+
"properties": {
|
|
456
|
+
"iana_id": {
|
|
457
|
+
"type": ["string", "null"],
|
|
458
|
+
"description": "IANA (Internet Assigned Numbers Authority) ID of the registrar."
|
|
459
|
+
},
|
|
460
|
+
"status": {
|
|
461
|
+
"type": ["string", "null"],
|
|
462
|
+
"description": "Accreditation status of the registrar (e.g., 'accredited')."
|
|
463
|
+
},
|
|
464
|
+
"registrar_name": {
|
|
465
|
+
"type": ["string", "null"],
|
|
466
|
+
"description": "Name of the registrar managing the domain."
|
|
467
|
+
},
|
|
468
|
+
"normalized_name": {
|
|
469
|
+
"type": ["string", "null"],
|
|
470
|
+
"description": "Normalized (lowercase, stripped) registrar name."
|
|
471
|
+
},
|
|
472
|
+
"whois_server": {
|
|
473
|
+
"type": ["string", "null"],
|
|
474
|
+
"description": "WHOIS server of the registrar."
|
|
475
|
+
},
|
|
476
|
+
"rdap_server": {
|
|
477
|
+
"type": ["string", "null"],
|
|
478
|
+
"format": "uri",
|
|
479
|
+
"description": "RDAP (Registration Data Access Protocol) server URL of the registrar."
|
|
480
|
+
},
|
|
481
|
+
"website_url": {
|
|
482
|
+
"type": ["string", "null"],
|
|
483
|
+
"format": "uri",
|
|
484
|
+
"description": "Website URL of the registrar."
|
|
485
|
+
},
|
|
486
|
+
"email_address": {
|
|
487
|
+
"type": ["string", "null"],
|
|
488
|
+
"description": "Contact or abuse email address of the registrar."
|
|
489
|
+
},
|
|
490
|
+
"phone_number": {
|
|
491
|
+
"type": ["string", "null"],
|
|
492
|
+
"description": "Contact phone number of the registrar."
|
|
493
|
+
}
|
|
494
|
+
}
|
|
495
|
+
},
|
|
496
|
+
"WhoisContact": {
|
|
497
|
+
"type": "object",
|
|
498
|
+
"description": "Contact information for a domain stakeholder (registrant, administrative, technical, billing, or reseller). All fields are optional and depend on the contact type and privacy settings.",
|
|
499
|
+
"required": [],
|
|
500
|
+
"properties": {
|
|
501
|
+
"id": {
|
|
502
|
+
"type": ["string", "null"],
|
|
503
|
+
"description": "Contact identifier."
|
|
504
|
+
},
|
|
505
|
+
"name": {
|
|
506
|
+
"type": ["string", "null"],
|
|
507
|
+
"description": "Name of the contact person."
|
|
508
|
+
},
|
|
509
|
+
"company": {
|
|
510
|
+
"type": ["string", "null"],
|
|
511
|
+
"description": "Company or organization name."
|
|
512
|
+
},
|
|
513
|
+
"street": {
|
|
514
|
+
"type": ["string", "null"],
|
|
515
|
+
"description": "Street address."
|
|
516
|
+
},
|
|
517
|
+
"city": {
|
|
518
|
+
"type": ["string", "null"],
|
|
519
|
+
"description": "City."
|
|
520
|
+
},
|
|
521
|
+
"state": {
|
|
522
|
+
"type": ["string", "null"],
|
|
523
|
+
"description": "State or province."
|
|
524
|
+
},
|
|
525
|
+
"zip_code": {
|
|
526
|
+
"type": ["string", "null"],
|
|
527
|
+
"description": "ZIP or postal code."
|
|
528
|
+
},
|
|
529
|
+
"country_name": {
|
|
530
|
+
"type": ["string", "null"],
|
|
531
|
+
"description": "Country name."
|
|
532
|
+
},
|
|
533
|
+
"country_code": {
|
|
534
|
+
"type": ["string", "null"],
|
|
535
|
+
"description": "ISO 3166-1 alpha-2 country code."
|
|
536
|
+
},
|
|
537
|
+
"email_address": {
|
|
538
|
+
"type": ["string", "null"],
|
|
539
|
+
"description": "Email address of the contact."
|
|
540
|
+
},
|
|
541
|
+
"phone": {
|
|
542
|
+
"type": ["string", "null"],
|
|
543
|
+
"description": "Phone number of the contact."
|
|
544
|
+
},
|
|
545
|
+
"fax": {
|
|
546
|
+
"type": ["string", "null"],
|
|
547
|
+
"description": "Fax number of the contact."
|
|
548
|
+
},
|
|
549
|
+
"mailing_address": {
|
|
550
|
+
"type": ["string", "null"],
|
|
551
|
+
"description": "Full mailing address as a single string."
|
|
552
|
+
}
|
|
553
|
+
}
|
|
554
|
+
},
|
|
555
|
+
"RegistryData": {
|
|
556
|
+
"type": "object",
|
|
557
|
+
"description": "Normalized registry-level WHOIS data. Contains the same structure as the top-level response but reflects data from the registry's own WHOIS server rather than the registrar's.",
|
|
558
|
+
"required": [],
|
|
559
|
+
"properties": {
|
|
560
|
+
"domain_name": {
|
|
561
|
+
"type": ["string", "null"],
|
|
562
|
+
"description": "Domain name as recorded by the registry."
|
|
563
|
+
},
|
|
564
|
+
"query_time": {
|
|
565
|
+
"type": ["string", "null"],
|
|
566
|
+
"description": "Timestamp of the registry WHOIS query (YYYY-MM-DD HH:mm:ss)."
|
|
567
|
+
},
|
|
568
|
+
"whois_server": {
|
|
569
|
+
"type": ["string", "null"],
|
|
570
|
+
"description": "Registry WHOIS server that provided this data."
|
|
571
|
+
},
|
|
572
|
+
"domain_registered": {
|
|
573
|
+
"type": ["string", "null"],
|
|
574
|
+
"enum": ["yes", "no", "restricted"],
|
|
575
|
+
"description": "Registration status from the registry."
|
|
576
|
+
},
|
|
577
|
+
"create_date": {
|
|
578
|
+
"type": ["string", "null"],
|
|
579
|
+
"format": "date",
|
|
580
|
+
"description": "Domain creation date as recorded by the registry (YYYY-MM-DD)."
|
|
581
|
+
},
|
|
582
|
+
"update_date": {
|
|
583
|
+
"type": ["string", "null"],
|
|
584
|
+
"format": "date",
|
|
585
|
+
"description": "Last update date as recorded by the registry (YYYY-MM-DD)."
|
|
586
|
+
},
|
|
587
|
+
"expiry_date": {
|
|
588
|
+
"type": ["string", "null"],
|
|
589
|
+
"format": "date",
|
|
590
|
+
"description": "Domain expiry date as recorded by the registry (YYYY-MM-DD)."
|
|
591
|
+
},
|
|
592
|
+
"domain_registrar": {
|
|
593
|
+
"$ref": "#/components/schemas/DomainRegistrar"
|
|
594
|
+
},
|
|
595
|
+
"name_servers": {
|
|
596
|
+
"type": ["array", "null"],
|
|
597
|
+
"description": "List of name servers as recorded by the registry.",
|
|
598
|
+
"items": {
|
|
599
|
+
"type": "string"
|
|
600
|
+
}
|
|
601
|
+
},
|
|
602
|
+
"domain_status": {
|
|
603
|
+
"type": ["array", "null"],
|
|
604
|
+
"description": "List of domain status codes from the registry.",
|
|
605
|
+
"items": {
|
|
606
|
+
"type": "string"
|
|
607
|
+
}
|
|
608
|
+
},
|
|
609
|
+
"whois_raw_registery": {
|
|
610
|
+
"type": ["string", "null"],
|
|
611
|
+
"description": "Raw WHOIS output from the registry server."
|
|
612
|
+
}
|
|
613
|
+
}
|
|
614
|
+
}
|
|
615
|
+
}
|
|
616
|
+
},
|
|
617
|
+
"security": [
|
|
618
|
+
{
|
|
619
|
+
"ApiKeyAuthHeader": []
|
|
620
|
+
},
|
|
621
|
+
{
|
|
622
|
+
"ApiKeyAuthQuery": []
|
|
623
|
+
}
|
|
624
|
+
]
|
|
625
|
+
}
|