Skip to content

Feeds API

The Feeds API provides daily batches of Cyber Threat Intelligence (CTI) information, including ransomware victims, detected Telegram channels, and cryptocurrency wallet addresses. These feeds are designed for continuous monitoring and integration with security systems.

GET/api/v2/feed/ransomware

Daily feed of ransomware victims detected by Vysion. This feed provides structured information about companies that have been targeted by ransomware groups.

NameTypeRequiredDescription
batchstringYesDate in YYYY-MM-DD format to retrieve the specific day’s feed
pageintegerNoPage number for pagination
page_sizeintegerNoNumber of results per page
Terminal window
curl "https://api.vysion.ai/api/v2/feed/ransomware?batch=2024-08-01" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'
{
"data": {
"total": 15,
"hits": [
{
"id": "ransomware_123456",
"companyName": "TechCorp Solutions",
"companyLink": "https://techcorp.example.com",
"url": "https://darkweb-site.onion/victims/techcorp",
"ransomwareGroup": "lockbit",
"detectionDate": "2024-08-01T14:30:22Z",
"text": "TechCorp Solutions - Manufacturing company based in Germany. 500GB of confidential data including customer information, financial records...",
"country": "DE",
"naics": "31-33",
"industry": "Manufacturing"
},
{
"id": "ransomware_123457",
"companyName": "MedicalCenter Plus",
"companyLink": "https://medcenter.example.com",
"url": "https://darkweb-site.onion/victims/medcenter",
"ransomwareGroup": "alphv",
"detectionDate": "2024-08-01T16:45:12Z",
"text": "MedicalCenter Plus - Healthcare provider compromised. Patient records and medical data exposed...",
"country": "US",
"naics": "62",
"industry": "Healthcare"
}
]
},
"error": null
}
GET/api/v2/feed/telegram

Daily feed of detected Telegram channels identified by Vysion. This feed helps monitor new threat actor communications and malicious channels.

NameTypeRequiredDescription
batchstringYesDate in YYYY-MM-DD format to retrieve the specific day’s feed
pageintegerNoPage number for pagination
page_sizeintegerNoNumber of results per page
Terminal window
curl "https://api.vysion.ai/api/v2/feed/telegram?batch=2024-08-01" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'
{
"data": {
"total": 8,
"hits": [
{
"id": "telegram_feed_123456",
"telegram": [
"t.me/suspicious_channel_001",
"t.me/crypto_scam_group"
],
"detectionDate": "2024-08-01T12:15:30Z",
"url": "https://suspicious-site.onion/telegram-links",
"path": "/telegram-channels",
"network": "tor"
},
{
"id": "telegram_feed_123457",
"telegram": [
"t.me/ransomware_news",
"t.me/threat_intel"
],
"detectionDate": "2024-08-01T18:22:45Z",
"url": "https://threat-forum.onion/channels",
"path": "/communication",
"network": "tor"
}
]
},
"error": null
}
GET/api/v2/feed/wallets

Daily feed of cryptocurrency wallet addresses detected by Vysion. This feed helps track wallet addresses associated with malicious activities.

NameTypeRequiredDescription
batchstringYesDate in YYYY-MM-DD format to retrieve the specific day’s feed
pageintegerNoPage number for pagination
page_sizeintegerNoNumber of results per page
Terminal window
curl "https://api.vysion.ai/api/v2/feed/wallets?batch=2024-08-01" \
--header 'Accept: application/json' \
--header 'x-api-key: YOUR_API_KEY'
{
"data": {
"total": 20,
"hits": [
{
"id": "wallet_feed_123456",
"url": "https://ransomware-site.onion/payment",
"detectionDate": "2024-08-01T22:48:08Z",
"network": "tor",
"title": "Payment Instructions - LockBit",
"tag": ["ransomware", "payment"],
"bitcoin_address": [
{
"value": "bc1q026rl6hjkdywnsrtva26mq2w0avs9k850ew2d6"
},
{
"value": "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa"
}
]
},
{
"id": "wallet_feed_123457",
"url": "https://crypto-scam.onion/invest",
"detectionDate": "2024-08-01T17:16:42Z",
"network": "tor",
"title": "Investment Opportunity",
"tag": ["scam", "investment"],
"bitcoin_address": [
{
"value": "3J98t1WpEZ73CNmQviecrnyiWrnqRhWNLy"
}
]
}
]
},
"error": null
}
FieldTypeDescription
idstringUnique identifier for the victim entry
companyNamestringName of the targeted company
companyLinkstringURL to the company’s official website
urlstringURL where the victim information was found
ransomwareGroupstringName of the ransomware group responsible
detectionDatestringWhen the victim was detected (ISO 8601)
textstringExtracted text about the victim
countrystringCountry code where the company is located
naicsstringNAICS industry classification code
industrystringHuman-readable industry classification
FieldTypeDescription
idstringUnique identifier for the feed entry
telegramarrayList of detected Telegram channel/group links
detectionDatestringWhen the channels were detected (ISO 8601)
urlstringSource URL where the Telegram links were found
pathstringPath component of the source URL
networkstringNetwork type (tor, clearnet)
FieldTypeDescription
idstringUnique identifier for the feed entry
urlstringSource URL where the wallet addresses were found
detectionDatestringWhen the wallets were detected (ISO 8601)
networkstringNetwork type (tor, clearnet)
titlestringTitle of the source page
tagarrayTags associated with the detection
bitcoin_addressarrayDetected Bitcoin addresses

Wallet addresses are returned as objects with a value field:

FieldTypeDescription
valuestringThe cryptocurrency address
import requests
from datetime import datetime, timedelta
# Get yesterday's feeds
yesterday = (datetime.now() - timedelta(days=1)).strftime('%Y-%m-%d')
# Fetch all feed types
feeds = ['ransomware', 'telegram', 'wallets']
for feed_type in feeds:
response = requests.get(f'https://api.vysion.ai/api/v2/feed/{feed_type}',
params={'batch': yesterday},
headers={'x-api-key': 'YOUR_API_KEY'})
data = response.json()
print(f"{feed_type} feed: {data['data']['total']} new entries")
import requests
def get_complete_feed(feed_type, batch_date, api_key):
all_hits = []
page = 1
page_size = 100
while True:
response = requests.get(f'https://api.vysion.ai/api/v2/feed/{feed_type}',
params={
'batch': batch_date,
'page': page,
'page_size': page_size
},
headers={'x-api-key': api_key})
data = response.json()
hits = data['data']['hits']
all_hits.extend(hits)
if len(hits) < page_size:
break
page += 1
return all_hits
  • Set up daily cron jobs to fetch new feed data
  • Use the previous day’s date as the batch parameter
  • Store feed data locally to avoid re-processing
  • Implement retry logic for failed requests
  • Check for empty feeds (some days may have no new data)
  • Monitor feed freshness and alert on missing batches
  • Deduplicate entries across feeds
  • Enrich data with additional context from other APIs
  • Correlate wallet addresses across different feed types
  • Format feed data for your SIEM system
  • Create alerts for high-priority ransomware groups
  • Track trends in victim industries and locations
NetworkDescription
torTor hidden services (.onion domains)
clearnetRegular internet domains

Feed endpoints may return these error codes:

StatusError CodeDescription
400Bad RequestInvalid batch date format
401UnauthorizedInvalid or missing API key
404Not FoundNo data available for the specified batch date
422Unprocessable EntityInvalid parameters
429Too Many RequestsRate limit exceeded
500Internal Server ErrorServer error
  • Feed data is typically available for the past 30 days
  • Historical data beyond 30 days may require special access
  • Contact support for bulk historical data requests