Suspicious Domain Export
https://api.deepinfo.com/v1/brp/suspicious-domains/search:exportExports every record matching filters (no pagination). format=csv returns CSV text; format=json returns a JSON array. Large exports can time out: narrow them with filters.
Authentication
Send your API key in the apikey request header.
Query Parameters
| Parameter | Required | Description |
|---|---|---|
format | Optional | One of: json, csv.Example csv |
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
filters | object | Optional | See Filtering below |
sort | array | Optional | List of {field, order} |
{}
Filtering
Example body:
{
"filters": {
"must": [
{
"name": "state",
"type": "eq",
"value": "<value>"
}
]
},
"sort": [
{
"field": "fraudulent",
"order": "desc"
}
]
}
See Getting Started → Search & Filters for the operators.
The Request Template example holds this body with every filter of this endpoint, one entry per field, each with an operator the field accepts and a placeholder value. Copy it, keep the filters you need and set their values.
Searchable Fields
Grouped by the operators they accept (measured against the API; sending another operator returns 400).
Operators eq in exists
| Field | Description |
|---|---|
fraudulent_ | Whether the name is a domain or a subdomain (Domain and Subdomain in the TYPE filter); each detection rule looks at one or the other. |
state | The review state: in_review (on the SUSPICIOUS DOMAINS list, waiting for your decision), approved (marked as fraudulent and moved to the fraudulent list) or ignored (dismissed, on Ignored Domains); the API also lists initial, which was not seen in the data. Without a state filter the search is not limited to one state: it returned both in_review and approved domains. |
monitoring_ | DNS indicator: true when the domain's DNS lookup at its last check returned records (such as A, NS or SOA; an address record is not required); false when the name did not exist (NXDOMAIN); null when there is no DNS result. The INDICATORS filter's DNS option finds the domains where it is true. |
monitoring_ | DNS MX indicator: true when the domain had an MX (mail exchanger) record at its last check; false when it had none; null when there is no DNS result. The INDICATORS filter's DNS MX option finds the domains where it is true. |
monitoring_ | SSL indicator: true when a TLS connection to the domain on port 443 succeeded and returned a certificate at its last check; false when it failed (for example refused or not resolved); null when there is no result for that check. The INDICATORS filter's SSL option finds the domains where it is true. |
monitoring_ | HTTP indicator: true when the domain answered an HTTP request at its last check, after following redirects (in the samples a final 525 error status also counted); false when it did not (for example because the name did not resolve); null when there is no result for that check. The INDICATORS filter's HTTP option finds the domains where it is true. |
seems_ | true when the domain seems inactive; in the samples, inactive domains had no DNS records and no parsed WHOIS data at their last check. The lists show a SEEMS INACTIVE banner on it. |
Operators eq in gte lte exists
| Field | Description |
|---|---|
first_ | When a detection rule first found the domain (UTC date-time), shown as DETECTION DATE; in the samples it always equals the earliest detection_date in detection_history. |
risk_ | The domain's risk score, an integer from 0 to 100 (can be null). The platform labels 1 to 20 INFORMATION, over 20 up to 40 LOW, over 40 up to 60 MEDIUM, over 60 up to 80 HIGH and over 80 CRITICAL; 0 has no label. |
ignore_ | When the domain was ignored (UTC date-time), shown as IGNORED DATE; empty if it was never ignored. A domain restored from Ignored Domains keeps this date, so a filter on it can also match domains that are back in review. |
approve_ | When the domain was marked as fraudulent (UTC date-time), shown as APPROVE DATE; empty on domains that are still waiting for review. |
Operators eq in startswith endswith wildcard fuzzy contains_ contains_ exists
| Field | Description |
|---|---|
fraudulent | The suspicious domain or subdomain name in ASCII form, with internationalized names in punycode (starting with xn--); fraudulent_unicode in the response holds the Unicode form. The DOMAIN filter and the SEARCH box match on it. |
tags | Tags on the domain, as a list of strings; in the samples they are always the tags of the detection rules that found it (the rule's TAGS setting). The TAGS filter matches them. |
detection_ | The ID of a detection rule that found the domain, a 24-character hexadecimal string; it is the rule's id in Fraudulent Rule Search. Filter on it to list the domains one rule detected. |
Sortable Fields
| Field | Description |
|---|---|
fraudulent | The suspicious domain or subdomain name in ASCII form, with internationalized names in punycode (starting with xn--); fraudulent_unicode in the response holds the Unicode form. The DOMAIN filter and the SEARCH box match on it. |
tags | Tags on the domain, as a list of strings; in the samples they are always the tags of the detection rules that found it (the rule's TAGS setting). The TAGS filter matches them. |
detection_ | The detection rules that found the domain, one entry per rule with the rule's id, its name (rule), the detection_date and the enabled and deleted flags; the lists show it as RULES. It can be sorted on but not filtered: filter on detection_history.id instead. |
first_ | When a detection rule first found the domain (UTC date-time), shown as DETECTION DATE; in the samples it always equals the earliest detection_date in detection_history. |
monitoring_ | The four indicator flags dns, dns_mx, ssl and http as one object (null when there is no check result); the lists show them as the INDICATORS icons. It can be sorted on but not filtered: filter on monitoring_indicator.dns, monitoring_indicator.dns_mx, monitoring_indicator.ssl or monitoring_indicator.http instead. |
risk_ | The domain's risk score, an integer from 0 to 100 (can be null). The platform labels 1 to 20 INFORMATION, over 20 up to 40 LOW, over 40 up to 60 MEDIUM, over 60 up to 80 HIGH and over 80 CRITICAL; 0 has no label. |
ignore_ | When the domain was ignored (UTC date-time), shown as IGNORED DATE; empty if it was never ignored. A domain restored from Ignored Domains keeps this date, so a filter on it can also match domains that are back in review. |
approve_ | When the domain was marked as fraudulent (UTC date-time), shown as APPROVE DATE; empty on domains that are still waiting for review. |
seems_ | true when the domain seems inactive; in the samples, inactive domains had no DNS records and no parsed WHOIS data at their last check. The lists show a SEEMS INACTIVE banner on it. |
Response Fields
| Field | Type | Description |
|---|---|---|
page | integer | |
page_ | integer | |
result_ | integer | |
results | array of object | |
results[]. | string | |
results[]. | string | |
results[]. | string | |
results[]. | string | One of domain, subdomain |
results[]. | string | One of initial, in_review, approved, ignored |
results[]. | array of string | |
results[]. | array of object | |
results[]. | string | date-time |
results[]. | object | |
results[]. | integer | |
results[]. | boolean | |
results[]. | string | date-time |
results[]. | string | date-time |
Examples
Selecting one loads it into the request and response panels.