@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,586 @@
|
|
|
1
|
+
{
|
|
2
|
+
"openapi": "3.1.1",
|
|
3
|
+
"info": {
|
|
4
|
+
"title": "Email Checker API - Real-Time Validation, Deliverability & Risk Signals",
|
|
5
|
+
"version": "1.0.0",
|
|
6
|
+
"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.",
|
|
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": "Email Checker API Server"
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"paths": {
|
|
20
|
+
"/email-validation/single": {
|
|
21
|
+
"post": {
|
|
22
|
+
"tags": ["Email Validation APIs"],
|
|
23
|
+
"summary": "Validate a single email",
|
|
24
|
+
"description": "Validates a single email address and returns result.",
|
|
25
|
+
"parameters": [
|
|
26
|
+
{
|
|
27
|
+
"name": "format",
|
|
28
|
+
"in": "query",
|
|
29
|
+
"required": false,
|
|
30
|
+
"schema": {
|
|
31
|
+
"type": "string",
|
|
32
|
+
"enum": ["json", "xml"]
|
|
33
|
+
},
|
|
34
|
+
"description": "Format of the response"
|
|
35
|
+
}
|
|
36
|
+
],
|
|
37
|
+
"requestBody": {
|
|
38
|
+
"required": true,
|
|
39
|
+
"content": {
|
|
40
|
+
"application/json": {
|
|
41
|
+
"schema": {
|
|
42
|
+
"$ref": "#/components/schemas/EmailCheckRequest"
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
"responses": {
|
|
48
|
+
"200": {
|
|
49
|
+
"description": "Successful response with Email Validation",
|
|
50
|
+
"content": {
|
|
51
|
+
"application/json": {
|
|
52
|
+
"schema": {
|
|
53
|
+
"$ref": "#/components/schemas/SingleEmailValidationResponse"
|
|
54
|
+
},
|
|
55
|
+
"examples": {
|
|
56
|
+
"validEmail": {
|
|
57
|
+
"summary": "Valid, deliverable email",
|
|
58
|
+
"value": {
|
|
59
|
+
"success": true,
|
|
60
|
+
"email": "abc.def@gmail.com",
|
|
61
|
+
"validEmail": "valid",
|
|
62
|
+
"validSyntax": true,
|
|
63
|
+
"domain": {
|
|
64
|
+
"name": "gmail.com",
|
|
65
|
+
"disposable": false,
|
|
66
|
+
"spam": false,
|
|
67
|
+
"free": true,
|
|
68
|
+
"validDomain": true,
|
|
69
|
+
"catchAll": false
|
|
70
|
+
},
|
|
71
|
+
"account": {
|
|
72
|
+
"role": false,
|
|
73
|
+
"fullMailBox": false
|
|
74
|
+
},
|
|
75
|
+
"dns": {
|
|
76
|
+
"mxRecords": [
|
|
77
|
+
"gmail-smtp-in.l.google.com.",
|
|
78
|
+
"alt1.gmail-smtp-in.l.google.com.",
|
|
79
|
+
"alt2.gmail-smtp-in.l.google.com.",
|
|
80
|
+
"alt3.gmail-smtp-in.l.google.com.",
|
|
81
|
+
"alt4.gmail-smtp-in.l.google.com."
|
|
82
|
+
]
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
"invalidSyntax": {
|
|
87
|
+
"summary": "Syntactically invalid email — domain/account/dns are minimal or absent",
|
|
88
|
+
"value": {
|
|
89
|
+
"success": true,
|
|
90
|
+
"email": "not-an-email",
|
|
91
|
+
"validEmail": "INVALID_EMAIL",
|
|
92
|
+
"validSyntax": false,
|
|
93
|
+
"domain": {
|
|
94
|
+
"name": "not-an-email",
|
|
95
|
+
"validDomain": false
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
"noMxRecord": {
|
|
100
|
+
"summary": "Valid syntax, domain has no MX record",
|
|
101
|
+
"value": {
|
|
102
|
+
"success": true,
|
|
103
|
+
"email": "test@nonexistentdomainxyz123abc.com",
|
|
104
|
+
"validEmail": "invalid",
|
|
105
|
+
"validSyntax": true,
|
|
106
|
+
"reason": "mx record does not exist.",
|
|
107
|
+
"domain": {
|
|
108
|
+
"name": "nonexistentdomainxyz123abc.com",
|
|
109
|
+
"disposable": false,
|
|
110
|
+
"spam": false,
|
|
111
|
+
"free": false,
|
|
112
|
+
"validDomain": false,
|
|
113
|
+
"catchAll": false
|
|
114
|
+
},
|
|
115
|
+
"account": {
|
|
116
|
+
"role": false
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
},
|
|
120
|
+
"withIp": {
|
|
121
|
+
"summary": "With ip — adds geolocation/security enrichment under address",
|
|
122
|
+
"value": {
|
|
123
|
+
"success": true,
|
|
124
|
+
"email": "abc.def@gmail.com",
|
|
125
|
+
"validEmail": "valid",
|
|
126
|
+
"validSyntax": true,
|
|
127
|
+
"domain": {
|
|
128
|
+
"name": "gmail.com",
|
|
129
|
+
"disposable": false,
|
|
130
|
+
"spam": false,
|
|
131
|
+
"free": true,
|
|
132
|
+
"validDomain": true,
|
|
133
|
+
"catchAll": false
|
|
134
|
+
},
|
|
135
|
+
"account": {
|
|
136
|
+
"role": false,
|
|
137
|
+
"fullMailBox": false
|
|
138
|
+
},
|
|
139
|
+
"dns": {
|
|
140
|
+
"mxRecords": [
|
|
141
|
+
"gmail-smtp-in.l.google.com.",
|
|
142
|
+
"alt1.gmail-smtp-in.l.google.com.",
|
|
143
|
+
"alt2.gmail-smtp-in.l.google.com.",
|
|
144
|
+
"alt3.gmail-smtp-in.l.google.com.",
|
|
145
|
+
"alt4.gmail-smtp-in.l.google.com."
|
|
146
|
+
]
|
|
147
|
+
},
|
|
148
|
+
"ip": "8.8.8.8",
|
|
149
|
+
"address": {
|
|
150
|
+
"validIpAddress": true,
|
|
151
|
+
"location": {
|
|
152
|
+
"city": "Mountain View",
|
|
153
|
+
"district": "Santa Clara",
|
|
154
|
+
"confidence": "low",
|
|
155
|
+
"zipcode": "94043-1351",
|
|
156
|
+
"state_prov": "California",
|
|
157
|
+
"country_name": "United States",
|
|
158
|
+
"continent_name": "North America",
|
|
159
|
+
"continent_code": "NA",
|
|
160
|
+
"country_code2": "US",
|
|
161
|
+
"country_code3": "USA",
|
|
162
|
+
"country_name_official": "United States of America",
|
|
163
|
+
"accuracy_radius": "27.42",
|
|
164
|
+
"is_eu": false
|
|
165
|
+
},
|
|
166
|
+
"security": {
|
|
167
|
+
"threat_score": 5,
|
|
168
|
+
"is_tor": false,
|
|
169
|
+
"is_proxy": false,
|
|
170
|
+
"proxy_type": "",
|
|
171
|
+
"proxy_provider": "",
|
|
172
|
+
"is_anonymous": false,
|
|
173
|
+
"is_known_attacker": false,
|
|
174
|
+
"is_spam": false,
|
|
175
|
+
"is_bot": false,
|
|
176
|
+
"is_cloud_provider": true,
|
|
177
|
+
"cloud_provider": "Google LLC"
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
},
|
|
186
|
+
"400": {
|
|
187
|
+
"description": "Bad Request – Invalid request body",
|
|
188
|
+
"content": {
|
|
189
|
+
"application/json": {
|
|
190
|
+
"schema": {
|
|
191
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
192
|
+
},
|
|
193
|
+
"examples": {
|
|
194
|
+
"missingEmail": {
|
|
195
|
+
"summary": "email field missing from request body",
|
|
196
|
+
"value": {
|
|
197
|
+
"timestamp": "2026-07-27T12:51:23.593986185Z",
|
|
198
|
+
"path": "/v2.0/email-validation/single",
|
|
199
|
+
"status": 400,
|
|
200
|
+
"error": "External API Error",
|
|
201
|
+
"message": "Please pass valid value for 'email' in body."
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
},
|
|
208
|
+
"408": {
|
|
209
|
+
"description": "Request Timeout",
|
|
210
|
+
"content": {
|
|
211
|
+
"application/json": {
|
|
212
|
+
"schema": {
|
|
213
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
214
|
+
},
|
|
215
|
+
"examples": {
|
|
216
|
+
"Request Timeout": {
|
|
217
|
+
"value": {
|
|
218
|
+
"timestamp": "2026-06-06T13:00:00.000Z",
|
|
219
|
+
"path": "/v1.0/email-validation/single",
|
|
220
|
+
"status": 408,
|
|
221
|
+
"error": "Request Timeout",
|
|
222
|
+
"message": "Timed out while connecting to the remote URL."
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
},
|
|
229
|
+
"429": {
|
|
230
|
+
"description": "Rate Limit Exceeded",
|
|
231
|
+
"content": {
|
|
232
|
+
"application/json": {
|
|
233
|
+
"schema": {
|
|
234
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
235
|
+
},
|
|
236
|
+
"examples": {
|
|
237
|
+
"Rate Limit Exceeded": {
|
|
238
|
+
"value": {
|
|
239
|
+
"timestamp": "2026-06-06T13:00:00.000Z",
|
|
240
|
+
"path": "/v1.0/email-validation/single",
|
|
241
|
+
"status": 429,
|
|
242
|
+
"error": "Too Many Requests",
|
|
243
|
+
"message": "API rate limit exceeded."
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
},
|
|
251
|
+
"operationId": "checkEmail"
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
},
|
|
255
|
+
"components": {
|
|
256
|
+
"securitySchemes": {
|
|
257
|
+
"ApiKeyAuthHeader": {
|
|
258
|
+
"type": "apiKey",
|
|
259
|
+
"in": "header",
|
|
260
|
+
"name": "X-apiKey",
|
|
261
|
+
"description": "Pass your API key via the X-apiKey request header."
|
|
262
|
+
},
|
|
263
|
+
"ApiKeyAuthQuery": {
|
|
264
|
+
"type": "apiKey",
|
|
265
|
+
"in": "query",
|
|
266
|
+
"name": "apiKey",
|
|
267
|
+
"description": "Pass your API key via the apiKey query parameter."
|
|
268
|
+
}
|
|
269
|
+
},
|
|
270
|
+
"schemas": {
|
|
271
|
+
"SingleEmailValidationResponse": {
|
|
272
|
+
"type": "object",
|
|
273
|
+
"required": ["success", "email", "validEmail", "validSyntax", "domain"],
|
|
274
|
+
"properties": {
|
|
275
|
+
"success": {
|
|
276
|
+
"type": "boolean",
|
|
277
|
+
"description": "Indicates the processing status of the validation request. true: completed successfully."
|
|
278
|
+
},
|
|
279
|
+
"email": {
|
|
280
|
+
"type": "string",
|
|
281
|
+
"format": "email",
|
|
282
|
+
"description": "The email address submitted for validation."
|
|
283
|
+
},
|
|
284
|
+
"name": {
|
|
285
|
+
"type": "string",
|
|
286
|
+
"description": "Optional identifier or label provided in the request for record tracking."
|
|
287
|
+
},
|
|
288
|
+
"reason": {
|
|
289
|
+
"type": "string",
|
|
290
|
+
"description": "Detailed explanation returned when validEmail is not valid."
|
|
291
|
+
},
|
|
292
|
+
"validEmail": {
|
|
293
|
+
"type": "string",
|
|
294
|
+
"enum": ["valid", "invalid", "INVALID_EMAIL", "unknown", "risky"],
|
|
295
|
+
"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."
|
|
296
|
+
},
|
|
297
|
+
"validSyntax": {
|
|
298
|
+
"type": "boolean",
|
|
299
|
+
"description": "Validates email address format compliance with RFC 5322 standards."
|
|
300
|
+
},
|
|
301
|
+
"domain": {
|
|
302
|
+
"$ref": "#/components/schemas/DomainObject"
|
|
303
|
+
},
|
|
304
|
+
"account": {
|
|
305
|
+
"$ref": "#/components/schemas/AccountObject"
|
|
306
|
+
},
|
|
307
|
+
"dns": {
|
|
308
|
+
"$ref": "#/components/schemas/DnsObject"
|
|
309
|
+
},
|
|
310
|
+
"address": {
|
|
311
|
+
"$ref": "#/components/schemas/AddressObject"
|
|
312
|
+
},
|
|
313
|
+
"ip": {
|
|
314
|
+
"type": "string",
|
|
315
|
+
"format": "ip",
|
|
316
|
+
"description": "IP address provided for geolocation and security enrichment."
|
|
317
|
+
}
|
|
318
|
+
},
|
|
319
|
+
"description": "Email validation response containing deliverability assessment and metadata."
|
|
320
|
+
},
|
|
321
|
+
"DomainObject": {
|
|
322
|
+
"type": "object",
|
|
323
|
+
"required": ["name", "validDomain"],
|
|
324
|
+
"properties": {
|
|
325
|
+
"name": {
|
|
326
|
+
"type": "string",
|
|
327
|
+
"description": "Extracted domain component from the email address."
|
|
328
|
+
},
|
|
329
|
+
"validDomain": {
|
|
330
|
+
"type": "boolean",
|
|
331
|
+
"description": "Domain validation status confirming DNS resolution capability."
|
|
332
|
+
},
|
|
333
|
+
"disposable": {
|
|
334
|
+
"type": "boolean",
|
|
335
|
+
"description": "Classification flag identifying domains from temporary email service providers."
|
|
336
|
+
},
|
|
337
|
+
"spam": {
|
|
338
|
+
"type": "boolean",
|
|
339
|
+
"description": "Reputation indicator flagging domains on spam databases."
|
|
340
|
+
},
|
|
341
|
+
"free": {
|
|
342
|
+
"type": "boolean",
|
|
343
|
+
"description": "Classification indicating free or consumer-grade email service providers."
|
|
344
|
+
},
|
|
345
|
+
"catchAll": {
|
|
346
|
+
"type": "boolean",
|
|
347
|
+
"description": "Detection flag for domains configured to accept mail for any recipient address."
|
|
348
|
+
}
|
|
349
|
+
},
|
|
350
|
+
"description": "Domain validation details for the email address."
|
|
351
|
+
},
|
|
352
|
+
"AccountObject": {
|
|
353
|
+
"type": "object",
|
|
354
|
+
"required": ["role"],
|
|
355
|
+
"properties": {
|
|
356
|
+
"role": {
|
|
357
|
+
"type": "boolean",
|
|
358
|
+
"description": "Detection flag identifying role-based email addresses (e.g., admin@, support@)."
|
|
359
|
+
},
|
|
360
|
+
"fullMailBox": {
|
|
361
|
+
"type": "boolean",
|
|
362
|
+
"description": "Storage capacity status indicator for the recipient mailbox."
|
|
363
|
+
}
|
|
364
|
+
},
|
|
365
|
+
"description": "Account-level validation details."
|
|
366
|
+
},
|
|
367
|
+
"DnsObject": {
|
|
368
|
+
"type": "object",
|
|
369
|
+
"required": ["mxRecords"],
|
|
370
|
+
"properties": {
|
|
371
|
+
"mxRecords": {
|
|
372
|
+
"type": "array",
|
|
373
|
+
"items": {
|
|
374
|
+
"type": "string"
|
|
375
|
+
},
|
|
376
|
+
"description": "Collection of MX (Mail Exchange) hostname records from DNS queries."
|
|
377
|
+
},
|
|
378
|
+
"aRecords": {
|
|
379
|
+
"type": "array",
|
|
380
|
+
"items": {
|
|
381
|
+
"type": "string"
|
|
382
|
+
},
|
|
383
|
+
"description": "Collection of A (Address) records for the domain. Not observed in testing — may be rarely or never populated."
|
|
384
|
+
}
|
|
385
|
+
},
|
|
386
|
+
"description": "DNS records for the email domain."
|
|
387
|
+
},
|
|
388
|
+
"AddressObject": {
|
|
389
|
+
"type": "object",
|
|
390
|
+
"properties": {
|
|
391
|
+
"validIpAddress": {
|
|
392
|
+
"type": "boolean",
|
|
393
|
+
"description": "IP recognized/reachable by the geolocation provider."
|
|
394
|
+
},
|
|
395
|
+
"location": {
|
|
396
|
+
"$ref": "#/components/schemas/EmailLocation"
|
|
397
|
+
},
|
|
398
|
+
"security": {
|
|
399
|
+
"$ref": "#/components/schemas/EmailSecurity"
|
|
400
|
+
}
|
|
401
|
+
},
|
|
402
|
+
"description": "Geolocation and security enrichment data for the IP address.",
|
|
403
|
+
"required": []
|
|
404
|
+
},
|
|
405
|
+
"EmailLocation": {
|
|
406
|
+
"type": "object",
|
|
407
|
+
"description": "Geolocation data derived from the IP address.",
|
|
408
|
+
"properties": {
|
|
409
|
+
"city": {
|
|
410
|
+
"type": "string",
|
|
411
|
+
"description": "Municipal or city name."
|
|
412
|
+
},
|
|
413
|
+
"district": {
|
|
414
|
+
"type": "string",
|
|
415
|
+
"description": "District or neighborhood."
|
|
416
|
+
},
|
|
417
|
+
"zipcode": {
|
|
418
|
+
"type": "string",
|
|
419
|
+
"description": "Postal or ZIP code."
|
|
420
|
+
},
|
|
421
|
+
"state_prov": {
|
|
422
|
+
"type": "string",
|
|
423
|
+
"description": "State or province."
|
|
424
|
+
},
|
|
425
|
+
"country_name": {
|
|
426
|
+
"type": "string",
|
|
427
|
+
"description": "Common country name."
|
|
428
|
+
},
|
|
429
|
+
"country_name_official": {
|
|
430
|
+
"type": "string",
|
|
431
|
+
"description": "Official country name."
|
|
432
|
+
},
|
|
433
|
+
"country_code2": {
|
|
434
|
+
"type": "string",
|
|
435
|
+
"description": "Two-character ISO country code."
|
|
436
|
+
},
|
|
437
|
+
"country_code3": {
|
|
438
|
+
"type": "string",
|
|
439
|
+
"description": "Three-character ISO country code."
|
|
440
|
+
},
|
|
441
|
+
"continent_name": {
|
|
442
|
+
"type": "string",
|
|
443
|
+
"description": "Continental region name."
|
|
444
|
+
},
|
|
445
|
+
"continent_code": {
|
|
446
|
+
"type": "string",
|
|
447
|
+
"description": "Continental region identifier."
|
|
448
|
+
},
|
|
449
|
+
"accuracy_radius": {
|
|
450
|
+
"type": "string",
|
|
451
|
+
"description": "Geolocation precision radius."
|
|
452
|
+
},
|
|
453
|
+
"confidence": {
|
|
454
|
+
"type": "string",
|
|
455
|
+
"description": "Confidence score for geolocation accuracy."
|
|
456
|
+
},
|
|
457
|
+
"is_eu": {
|
|
458
|
+
"type": "boolean",
|
|
459
|
+
"description": "European Union membership status."
|
|
460
|
+
}
|
|
461
|
+
},
|
|
462
|
+
"required": []
|
|
463
|
+
},
|
|
464
|
+
"EmailSecurity": {
|
|
465
|
+
"type": "object",
|
|
466
|
+
"description": "Threat and anonymity profile for the IP address.",
|
|
467
|
+
"required": [
|
|
468
|
+
"threat_score",
|
|
469
|
+
"is_tor",
|
|
470
|
+
"is_proxy",
|
|
471
|
+
"proxy_type",
|
|
472
|
+
"proxy_provider",
|
|
473
|
+
"is_anonymous",
|
|
474
|
+
"is_known_attacker",
|
|
475
|
+
"is_spam",
|
|
476
|
+
"is_bot",
|
|
477
|
+
"is_cloud_provider",
|
|
478
|
+
"cloud_provider"
|
|
479
|
+
],
|
|
480
|
+
"properties": {
|
|
481
|
+
"threat_score": {
|
|
482
|
+
"type": "integer",
|
|
483
|
+
"description": "Quantitative risk assessment score. Higher values indicate elevated security risk."
|
|
484
|
+
},
|
|
485
|
+
"is_tor": {
|
|
486
|
+
"type": "boolean",
|
|
487
|
+
"description": "Detection flag for IP addresses routed through the Tor anonymity network."
|
|
488
|
+
},
|
|
489
|
+
"is_proxy": {
|
|
490
|
+
"type": "boolean",
|
|
491
|
+
"description": "Detection flag identifying IP addresses operating as proxy servers."
|
|
492
|
+
},
|
|
493
|
+
"proxy_type": {
|
|
494
|
+
"type": "string",
|
|
495
|
+
"description": "Classification of detected proxy infrastructure type (e.g. VPN, HTTP, SOCKS)."
|
|
496
|
+
},
|
|
497
|
+
"proxy_provider": {
|
|
498
|
+
"type": "string",
|
|
499
|
+
"description": "Identified service provider operating the proxy infrastructure."
|
|
500
|
+
},
|
|
501
|
+
"is_anonymous": {
|
|
502
|
+
"type": "boolean",
|
|
503
|
+
"description": "Anonymization detection flag for IP addresses using identity obfuscation techniques."
|
|
504
|
+
},
|
|
505
|
+
"is_known_attacker": {
|
|
506
|
+
"type": "boolean",
|
|
507
|
+
"description": "Threat intelligence flag for IP addresses documented as confirmed malicious sources."
|
|
508
|
+
},
|
|
509
|
+
"is_spam": {
|
|
510
|
+
"type": "boolean",
|
|
511
|
+
"description": "Reputation flag for IP addresses associated with spam transmission."
|
|
512
|
+
},
|
|
513
|
+
"is_bot": {
|
|
514
|
+
"type": "boolean",
|
|
515
|
+
"description": "Automated traffic detection flag for IP addresses from bot networks."
|
|
516
|
+
},
|
|
517
|
+
"is_cloud_provider": {
|
|
518
|
+
"type": "boolean",
|
|
519
|
+
"description": "Infrastructure classification flag for IP addresses from cloud computing providers."
|
|
520
|
+
},
|
|
521
|
+
"cloud_provider": {
|
|
522
|
+
"type": "string",
|
|
523
|
+
"description": "Identified cloud infrastructure or hosting service provider name."
|
|
524
|
+
}
|
|
525
|
+
}
|
|
526
|
+
},
|
|
527
|
+
"EmailCheckRequest": {
|
|
528
|
+
"type": "object",
|
|
529
|
+
"description": "Request body for email validation.",
|
|
530
|
+
"required": ["email"],
|
|
531
|
+
"properties": {
|
|
532
|
+
"email": {
|
|
533
|
+
"type": "string",
|
|
534
|
+
"format": "email",
|
|
535
|
+
"description": "Email address to validate."
|
|
536
|
+
},
|
|
537
|
+
"name": {
|
|
538
|
+
"type": "string",
|
|
539
|
+
"description": "Optional name or label for record tracking."
|
|
540
|
+
},
|
|
541
|
+
"ip": {
|
|
542
|
+
"type": "string",
|
|
543
|
+
"format": "ip",
|
|
544
|
+
"description": "Optional IP address for geolocation and security enrichment."
|
|
545
|
+
}
|
|
546
|
+
}
|
|
547
|
+
},
|
|
548
|
+
"ErrorResponse": {
|
|
549
|
+
"type": "object",
|
|
550
|
+
"description": "Standard error envelope returned by the API on failed requests.",
|
|
551
|
+
"required": ["message"],
|
|
552
|
+
"properties": {
|
|
553
|
+
"error": {
|
|
554
|
+
"type": "string",
|
|
555
|
+
"description": "Short error category or exception type."
|
|
556
|
+
},
|
|
557
|
+
"message": {
|
|
558
|
+
"type": "string",
|
|
559
|
+
"description": "Human-readable error message describing the failure."
|
|
560
|
+
},
|
|
561
|
+
"path": {
|
|
562
|
+
"type": "string",
|
|
563
|
+
"description": "API endpoint path that produced the error."
|
|
564
|
+
},
|
|
565
|
+
"status": {
|
|
566
|
+
"type": "integer",
|
|
567
|
+
"description": "HTTP status code returned with the error."
|
|
568
|
+
},
|
|
569
|
+
"timestamp": {
|
|
570
|
+
"type": "string",
|
|
571
|
+
"format": "date-time",
|
|
572
|
+
"description": "Timestamp when the error occurred (ISO 8601)."
|
|
573
|
+
}
|
|
574
|
+
}
|
|
575
|
+
}
|
|
576
|
+
}
|
|
577
|
+
},
|
|
578
|
+
"security": [
|
|
579
|
+
{
|
|
580
|
+
"ApiKeyAuthHeader": []
|
|
581
|
+
},
|
|
582
|
+
{
|
|
583
|
+
"ApiKeyAuthQuery": []
|
|
584
|
+
}
|
|
585
|
+
]
|
|
586
|
+
}
|