Skip to content

Documents API

Vysion integrates multiple threat intelligence sources, accessible via the document endpoints, enabling comprehensive search capabilities across various networks and data types.

Search through the Vysion database using keyword queries with support for advanced operators.

GET/api/v2/document/search

The search supports “Google Dork” style syntax with the following operators:

  • + signifies AND operation
  • | signifies OR operation
  • - negates a single token
  • " wraps tokens to signify a phrase search
  • * at the end of a term signifies a prefix query
  • () signify precedence
  • ~N after a word signifies edit distance (fuzziness)
  • ~N after a phrase signifies slop amount
NameTypeRequiredDescription
qstringYesSearch query string
gtestringNoDate filter (≥). Formats: Unix timestamp, YYYY-MM-DD, or YYYY-MM-DDThh:mm:ss
ltestringNoDate filter (≤). Formats: Unix timestamp, YYYY-MM-DD, or YYYY-MM-DDThh:mm:ss
pageintegerNoPage number for pagination
page_sizeintegerNoResults per page (default: 10)
networkstringNoFilter by network: tor, i2p, or clearnet
languagestringNoFilter by language code
include_tagstringNoInclude documents with specific tag
exclude_tagstringNoExclude documents with specific tag
safe_searchboolNoExclude documents with pornography tag (Default: False)
Terminal window
curl "https://api.vysion.ai/api/v2/document/search?q=contileaks&page=1" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'

Retrieve a specific document by its unique identifier.

GET/api/v2/document/{id}
NameTypeRequiredDescription
idstringYesDocument ID
Terminal window
curl "https://api.vysion.ai/api/v2/document/62bdc0968e4892b70411895c" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'

Fetch documents from the Vysion database based on their URLs. Returns multiple captures if available.

GET/api/v2/document/url/{url}
NameTypeRequiredDescription
urlstringYesURL to search for (URL-encoded)
gtestringNoFormats: Unix Timestamp, YYYYY-MM-DD or YYYYY-MM-DDThh:mm:ss
ltestringNoFormats: Unix Timestamp, YYYYY-MM-DD or YYYYY-MM-DDThh:mm:ss
pageintegerNoPage number
page_sizeintegerNoResults per page (default: 10)
Terminal window
# URL must be URL-encoded
curl "https://api.vysion.ai/api/v2/document/url/example.onion%2Fpage?page=1" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'

Search for documents that contain specific tags.

GET/api/v2/document/tag/{tag}
NameTypeRequiredDescription
tagstringYesTag to search for
gtestringNoFormats: Unix Timestamp, YYYYY-MM-DD or YYYYY-MM-DDThh:mm:ss
ltestringNoFormats: Unix Timestamp, YYYYY-MM-DD or YYYYY-MM-DDThh:mm:ss
pageintegerNoPage number
page_sizeintegerNoResults per page (default: 10)
NamespacePredicateValue
dark-webtopiccredit-card
dark-webtopicdrugs-narcotics
dark-webtopicelectronics
dark-webtopicescrow
dark-webtopicfinance
dark-webtopicfinance-crypto
dark-webtopicgambling
dark-webtopichacking
dark-webtopicidentification-credentials
dark-webtopicintellectual-property-copyright-materials
dark-webtopicmixer
dark-webtopicpornography-adult
dark-webtopicpornography-child-exploitation
dark-webtopicpornography-illicit-or-illegal
dark-webtopicsearch-engine-index
dark-webtopicsoftwares
dark-webtopicweapons
dark-webtopicransomware-group
Terminal window
curl "https://api.vysion.ai/api/v2/document/tag/escrow \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'

Search for documents containing specific cryptocurrency wallet addresses. Supports BTC, BNB, DOT, DASH, ETH, XMR, XRP and ZEC.

GET/api/v2/document/wallet/{chain}/{address}
NameTypeRequiredDescription
chainstringYesBefore conducting a search, it is necessary to specify the blockchain type to search within.
addressstringYesWallet address to search for.
gtestringNoFormats: Unix Timestamp, YYYYY-MM-DD or YYYYY-MM-DDThh:mm:ss
ltestringNoFormats: Unix Timestamp, YYYYY-MM-DD or YYYYY-MM-DDThh:mm:ss
pageintegerNoPage number
page_sizeintegerNoResults per page (default: 10)
Terminal window
curl "https://api.vysion.ai/api/v2/document/wallet/BTC/1F1tAaz5x1HUXrCNLbtMDqcw6o5GNn4xqX" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'

Search for documents containing specific email addresses.

GET/api/v2/document/email/{email}
NameTypeRequiredDescription
emailstringYesEmail address to search for
gtestringNoFormats: Unix Timestamp, YYYYY-MM-DD or YYYYY-MM-DDThh:mm:ss
ltestringNoFormats: Unix Timestamp, YYYYY-MM-DD or YYYYY-MM-DDThh:mm:ss
pageintegerNoPage number
page_sizeintegerNoResults per page (default: 10)
Terminal window
curl "https://api.vysion.ai/api/v2/document/email/someone@gmail.com" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'

Search for documents containing specific phone numbers.

GET/api/v2/document/phone/{country_code}/{number}
NameTypeRequiredDescription
country_codestringYesPhone prefix to search for
numberstringYesPhone number to search for
gtestringNoFormats: Unix Timestamp, YYYYY-MM-DD or YYYYY-MM-DDThh:mm:ss
ltestringNoFormats: Unix Timestamp, YYYYY-MM-DD or YYYYY-MM-DDThh:mm:ss
pageintegerNoPage number
page_sizeintegerNoResults per page (default: 10)
Terminal window
curl "https://api.vysion.ai/api/v2/document/phone/1/123456789" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'
{
"data": {
"total": 1,
"hits": [
{
"page": {
"id": "123456789101112131415161",
"url": {
"url": "site.onion/content/darknet",
"networkProtocol": "http",
"domainName": "site.onion",
"port": 80,
"path": "/content/darknet",
"signature": "11111111-2222-3333-4444-555555555555",
"network": "tor"
},
"foundAt": "666666-7777-8888-9999-101010101010",
"pageTitle": "Сайты даркнет",
"language": "ru",
"html": "",
"text": null,
"sha1sum": "05dc1502645113cb2173ff35c86db5618b9e8b0c",
"sha256sum": "d030e1b02d71e2d056000331ec444382ca4f0f3a83a1ce8fe85726f0c0d4326b",
"ssdeep": null,
"detectionDate": "2024-12-10T09:49:40",
"screenshot": null,
"chunk": true,
"htmlOversize": false,
"docType": "text/html"
},
"tag": [],
"email": [],
"paste": [],
"skype": [],
"telegram": [
{
"value": "https://t.me/someone"
},
{
"value": "http://t.me/omebody"
}
],
"whatsapp": [],
"bitcoin_address": [],
"polkadot_address": [],
"ethereum_address": [],
"monero_address": [],
"ripple_address": [],
"zcash_address": []
}
]
}
}
StatusMeaningDescription
200OKSuccessful response
401UnauthorizedInvalid or missing API key
422Unprocessable EntityValidation error
429Too Many RequestsRate limit exceeded