POST /api/threats
Uploads threat data from an agent or external source. Supports both single and batch submissions.object[]
required
Array of threat objects (maximum 100 per request).
string
required
IoC type:
ip, domain, hash, url, email, cve.string
required
The indicator value (e.g., IP address, domain name, file hash).
string
required
Source identifier (e.g.,
guard-agent, honeypot, manual).string
Threat category:
malware, botnet, phishing, bruteforce, scanner, exploit, c2.string
Severity:
low, medium, high, critical.number
Confidence score (0.0—1.0).
object
Additional metadata (ports, protocols, MITRE ATT&CK IDs, etc.).
- Single Threat
- Batch Upload
Batch uploads accept up to 100 threats per request. For larger volumes, split into multiple requests. Duplicate IoCs are automatically merged — their reputation score, sighting count, and metadata are updated rather than creating duplicates.
POST /api/trap-intel
Submits intelligence gathered from Panguard Trap (honeypot) deployments. This data receives a higher confidence boost due to the nature of honeypot interactions.string
required
The honeypot instance identifier.
string
required
IP address of the attacker.
string
required
Type of honeypot:
ssh, http, ftp, smtp, custom.object[]
required
Array of attacker interaction records.
object[]
Credentials attempted by the attacker.
string[]
SHA-256 hashes of any payloads dropped.
GET /api/iocs
Searches the IoC database with filters.string
Filter by IoC type:
ip, domain, hash, url, email, cve.string
Filter by source (e.g.,
guard-agent, honeypot, community).number
Minimum reputation score (0—100, where 0 is most malicious).
number
Maximum reputation score.
string
Filter by status:
active, expired, whitelisted.string
Filter by threat category.
string
Return IoCs updated after this ISO 8601 timestamp.
number
default:"1"
Page number.
number
default:"50"
Results per page (max 200).
GET /api/iocs/:value
Looks up a single IoC by its value. Supports IP addresses, domains, hashes, URLs, emails, and CVE IDs.string
required
The IoC value to look up. URL-encode if necessary.
- 200 Found
- 404 Not Found