Skip to content Dark Web Informer - Cyber Threat Intelligence

API Docs

Endpoint

Method GET Content-Type application/json
Daily quota: 50 requests (reset at 00:00 UTC) Rate: 60 key/min · 30 IP/min Nonce window: 120 s

Modes

Threat Feed Intelligence

  • /api/get_stats
  • /api/get_stats/threat_actors
  • /api/get_stats/categories
  • /api/get_stats/countries
  • /api/get_threat_actors/top
  • /api/get_messages_plus
  • /api/get_recent?hours=24&limit=100
  • /api/get_latest
  • /api/get_alert?id=UUID_OR_HASH
  • /api/get_alerts_since?timestamp=2025-01-01T00:00:00Z
  • /api/get_recent_alerts_by_actor?name=akira

Search & Taxonomy

  • /api/search?field=title&value=bank
  • /api/search_titles?contains=visa
  • /api/get_titles
  • /api/get_categories
  • /api/get_industry
  • /api/get_networks
  • /api/get_countries
  • /api/get_threat_actors
  • /api/get_victim_organization

Exports

  • /api/export_feed.json
  • /api/export_recent.csv?hours=24

Ransomware Intelligence

  • /api/get_ransomware
  • /api/get_ransomware_stats
  • /api/get_ransomware_groups
  • /api/get_ransomware_by_group?group=akira
  • /api/get_ransomware_images?group=akira
  • /api/export_ransomware.json
  • /api/export_ransomware.csv

News

  • /api/cybersecurity_news

API Sandbox

Send authenticated requests, inspect rate-limit headers, and copy a curl command.

Ready

Response

No response yet.

Headers


            

curl


            

Client code

Python (requests)

import time, secrets, string, requests, json

API_BASE = "https://api.darkwebinformer.com"
API_KEY  = "YOUR_API_KEY"
ALPHABET = string.ascii_letters + string.digits + "-"

def make_nonce():
    return f"{int(time.time())}:{''.join(secrets.choice(ALPHABET) for _ in range(12))}"

def get(endpoint, params=None, accept="application/json"):
    url = f"{API_BASE}{endpoint}"
    headers = {
        "X-API-Key": API_KEY,
        "X-Nonce": make_nonce(),
        "Accept": accept,
    }
    r = requests.get(url, headers=headers, params=params, timeout=30)
    r.raise_for_status()
    if accept == "text/csv":
        print(r.text)
    else:
        print(json.dumps(r.json(), indent=2))

if __name__ == "__main__":
    get("/api/get_stats")

curl

curl -s -D - \
  'https://api.darkwebinformer.com/api/get_stats' \
  -H 'Accept: application/json' \
  -H 'X-API-Key: YOUR_API_KEY' \
  -H 'X-Nonce: $(date +%s):abcdefABCDEF'

Errors

HTTPCodeWhen
400nonce_invalid / bad_requestMissing/expired nonce or invalid params
401unauthorizedMissing/invalid API key
403cors_origin / forbiddenOrigin not allow-listed or scope denied
404not_foundUnknown endpoint
429rate_ip / rate_key / rate_dailyPer-minute or daily limit reached
502upstreamUpstream source error
© Dark Web Informer