How ChainPatrol flags unconfirmed suspected threats, scores their confidence from none to high, groups related campaign threats, and deduplicates findings.
A suspected threat is a potential security threat that ChainPatrol’s monitoring system has identified automatically but that has not been confirmed. When a detection source discovers suspicious content that may be impersonating your brand or attempting to defraud users, it creates a suspected threat for your security team to review. It becomes a confirmed threat only once it is reviewed and blocked, and only confirmed threats are counted as threats blocked.Suspected threats represent automated findings from ChainPatrol’s continuous monitoring across the internet. In the ChainPatrol app they appear on the Suspected Threats page. The API returns them as detection results from POST /detection/list.
Discovery - A detection source finds content matching your monitoring keywords or patterns. For example, Google Search detects a website containing your brand name plus terms like “airdrop” or “claim tokens”.
Asset Processing - The discovered asset is automatically submitted to ChainPatrol’s analysis pipeline, where it creates or retrieves the asset record, validates the asset hasn’t already been marked as legitimate (allowed), and checks for duplicate suspected threats.
Scanning & Enrichment - The asset undergoes comprehensive scanning to gather intelligence including content analysis (webpage screenshots, HTML content, metadata extraction, text and image analysis), network data (DNS records, IP addresses, hosting information, CDN and infrastructure), domain registration (WHOIS data, registration date, registrar information, historical records), platform data (social media profiles, app store information, platform metadata, account details), visual analysis (logo detection, similarity matching, brand element identification, visual fingerprinting), and blockchain data (smart contract analysis, token information, transaction patterns, wallet connections).
Rule Evaluation - The system executes dozens of detection rules against the enriched asset data. Each rule evaluates specific threat indicators like domain age (newly registered domains < 30 days old), visual similarity (logo or design mimicking your brand), text similarity (URLs or names that closely match yours), threat intelligence (known malicious infrastructure or patterns), and behavioral indicators (wallet drainer code, phishing forms).
Scoring - Based on rule results, the system calculates a threat score (0-1) representing confidence that the asset is malicious. Rules are grouped by category (Visual Similarity, Threat Intelligence, Domain Age, Text Matching, Behavioral Analysis), each rule has a confidence level (Very Low to Very High), and weighted scores are combined across all triggered rules with organization-specific adjustments applied.
Suspected Threat Creation - A suspected threat is recorded with all gathered intelligence. It stays unconfirmed until it is reviewed.
Auto-Reporting (Optional) - If your organization has auto-reporting enabled and the suspected threat’s score exceeds your medium threshold, the system can automatically create a report with the detected asset, mark the asset as blocked, submit takedown requests (if configured), and send notifications to your team.
Auto-Reporting Requirements: Score must meet or exceed your medium threshold, detection source must be enabled, asset must not already be blocked, and asset must not have been previously rejected multiple times.
Low-confidence suspected threats. May be false positives or tangentially related to your brand. Useful for monitoring trends but rarely require action. Examples include generic mention of your brand in unrelated context, weak keyword matches, and minimal similarity indicators.
Some indicators suggest a potential threat, but evidence is limited. Requires manual review to confirm. Common scenarios include domain contains your brand name but has legitimate business purpose, social media mentions your brand in neutral context, and weak visual or textual similarity.
Strong indicators of malicious intent. Multiple detection rules triggered with reasonable confidence. Common scenarios include new domain with brand name and suspicious keywords, social media account impersonating your brand with stolen logo, and token contract with similar name on blockchain. This is the typical threshold for automatic reporting and blocking.
Very strong evidence of malicious activity. Multiple high-confidence rules triggered. Common scenarios include perfect visual replica of your website, domain nearly identical to yours (typosquatting), known phishing infrastructure, and contains wallet drainer code. High-confidence suspected threats require immediate attention and rapid response.
The system automatically handles duplicate suspected threats to prevent alert fatigue:Same Asset, Same Organization - If the same asset is detected multiple times by the same source for your organization, only one suspected threat is kept to prevent alert fatigue from repeated discoveries.Same Asset, Different Sources - If multiple detection sources independently find the same threat, a separate suspected threat is recorded for each source. This helps validate threat confidence (multiple sources agree), understand which sources are most effective, and track how threats spread across platforms.Different Assets, Same Campaign - Related assets in the same attack campaign are linked via group IDs but kept as separate suspected threats. This allows you to report each asset individually, track takedown progress per asset, and understand campaign scope.
A suspected threat is the entry point, not the decision: It indicates a potential threat, but review and approval are required before blocking to prevent false positives
Group IDs reveal campaign scope: When one suspected threat links to multiple related assets, you can identify and report entire phishing campaigns instead of blocking sites one at a time
Threshold configuration balances coverage and noise: Lower thresholds catch more threats but require more review, while higher thresholds miss edge cases but reduce workload
Deduplication across sources increases confidence: When multiple independent detection sources flag the same asset, it provides stronger evidence of malicious intent
{"docsConfig":{"theme":"palm","$schema":"https://mintlify.com/docs.json","name":"ChainPatrol","colors":{"primary":"#6622DC","light":"#985EFD","dark":"#2A186B"},"logo":{"light":"https://mintcdn.com/chainpatrol/R_CITzEDbsciFTsn/logo/light.svg?fit=max\u0026auto=format\u0026n=R_CITzEDbsciFTsn\u0026q=85\u0026s=8ca4a8411113008ec8f9a57dec249989","dark":"https://mintcdn.com/chainpatrol/R_CITzEDbsciFTsn/logo/dark.svg?fit=max\u0026auto=format\u0026n=R_CITzEDbsciFTsn\u0026q=85\u0026s=3fba0f7cf94681111da5d1ce52ebf33b","href":"https://chainpatrol.com"},"favicon":"https://mintcdn.com/chainpatrol/R_CITzEDbsciFTsn/favicon.svg?fit=max\u0026auto=format\u0026n=R_CITzEDbsciFTsn\u0026q=85\u0026s=2ee94dcfc07708e2929aad42ea5ab4c5","api":{"openapi":"https://app.chainpatrol.io/api/v2/openapi.json?v=2","mdx":{"auth":{"method":"key","name":"X-API-KEY"},"server":"https://app.chainpatrol.io/api/v2"}},"appearance":{"default":"dark"},"background":{"image":"https://mintcdn.com/chainpatrol/oLEHOzLMXL0CWKrg/background.png?fit=max\u0026auto=format\u0026n=oLEHOzLMXL0CWKrg\u0026q=85\u0026s=562d8e2e01dbe50733cb041efde433a6","color":{"dark":"#060114"}},"navbar":{"links":[{"href":"https://chainpatrol.com/blog","label":"Blog"},{"href":"https://chainpatrol.com/changelog","label":"Changelog"}],"primary":{"type":"button","label":"Dashboard","href":"https://app.chainpatrol.io/"}},"footer":{"socials":{"x":"https://x.com/chainpatrol","linkedin":"https://www.linkedin.com/company/89545915","github":"https://github.com/chainpatrol"}},"fonts":{"heading":{"family":"IBM Plex Sans"},"body":{"family":"Inter"}},"integrations":{"ga4":{"measurementId":"G-QEBBHCD92K"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"chainpatrol","hasAudioNarration":false,"actualSubdomain":"chainpatrol","customDomains":["chainpatrol.com"],"gitSource":{"type":"github","owner":"chainpatrol","repo":"docs","deployBranch":"main","contentDirectory":"","mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aea5f14a3154a433bba3f98","collectionId":"4f438cdf-c586-41e6-8eb4-f10ad8227ad2","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aea5f14a3154a433bba3f98"},"feedback":{"thumbs":true,"edits":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aea5f14a3154a433bba3f98","clientVersion":"0.0.4076","searchFilterCounts":[{"language":"default","tag":"API Reference","count":103},{"language":"default","tag":"Documentation","count":29},{"language":"default","tag":"Integrations","count":22},{"language":"default","tag":"JavaScript SDK","count":21},{"language":"default","tag":"Getting Started","count":19},{"language":"default","tag":"CLI","count":16},{"language":"default","tag":"Concepts","count":14},{"language":"default","tag":"Assets","count":13},{"language":"default","tag":"Threat Detection","count":13},{"language":"default","tag":"Metrics","count":12}]},"assistantConfig":{},"basePath":"/docs","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[],"page":{"pagePath":"concepts/detections","slug":"/concepts/detections","pageMetadata":{"title":"Suspected Threats","description":"How ChainPatrol flags unconfirmed suspected threats, scores their confidence from none to high, groups related campaign threats, and deduplicates findings.","href":"/concepts/detections"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"How ChainPatrol flags unconfirmed suspected threats, scores their confidence from none to high, groups related campaign threats, and deduplicates findings.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,ol:`ol`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`overview`,children:`Overview`}),`\n`,_jsxs(_components.p,{children:[`A `,_jsx(_components.strong,{children:`suspected threat`}),` is a potential security threat that ChainPatrol’s monitoring system has identified automatically but that has `,_jsx(_components.strong,{children:`not been confirmed`}),`. When a detection source discovers suspicious content that may be impersonating your brand or attempting to defraud users, it creates a suspected threat for your security team to review. It becomes a confirmed threat only once it is reviewed and blocked, and only confirmed threats are counted as `,_jsx(_components.strong,{children:`threats blocked`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Suspected threats represent automated findings from ChainPatrol’s continuous monitoring across the internet. In the ChainPatrol app they appear on the `,_jsx(_components.strong,{children:`Suspected Threats`}),` page. The API returns them as detection results from `,_jsx(_components.a,{href:`/external-api/detection-list`,children:_jsx(_components.code,{children:`POST /detection/list`})}),`.`]}),`\n`,_jsx(Heading,{level:`3`,id:`components-of-a-suspected-threat`,children:`Components of a Suspected Threat`}),`\n`,_jsx(_components.p,{children:`Each suspected threat contains:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Asset`}),` - The specific URL, social account, or content identified`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Source`}),` - Which detection source discovered it`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Score`}),` - Confidence level (0-1) indicating likelihood of being malicious`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Reason`}),` - Why it was flagged and which rules triggered`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Organization`}),` - Your organization being targeted`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Timestamp`}),` - When the asset was first detected`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Status`}),` - Current state (reported, under review, awaiting action)`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`suspected-threat-lifecycle`,children:`Suspected Threat Lifecycle`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Discovery`}),` - A detection source finds content matching your monitoring keywords or patterns. For example, Google Search detects a website containing your brand name plus terms like “airdrop” or “claim tokens”.`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Asset Processing`}),` - The discovered asset is automatically submitted to ChainPatrol’s analysis pipeline, where it creates or retrieves the asset record, validates the asset hasn’t already been marked as legitimate (allowed), and checks for duplicate suspected threats.`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Scanning \u0026 Enrichment`}),` - The asset undergoes comprehensive scanning to gather intelligence including content analysis (webpage screenshots, HTML content, metadata extraction, text and image analysis), network data (DNS records, IP addresses, hosting information, CDN and infrastructure), domain registration (WHOIS data, registration date, registrar information, historical records), platform data (social media profiles, app store information, platform metadata, account details), visual analysis (logo detection, similarity matching, brand element identification, visual fingerprinting), and blockchain data (smart contract analysis, token information, transaction patterns, wallet connections).`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Rule Evaluation`}),` - The system executes dozens of detection rules against the enriched asset data. Each rule evaluates specific threat indicators like domain age (newly registered domains \u003c 30 days old), visual similarity (logo or design mimicking your brand), text similarity (URLs or names that closely match yours), threat intelligence (known malicious infrastructure or patterns), and behavioral indicators (wallet drainer code, phishing forms).`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Scoring`}),` - Based on rule results, the system calculates a threat score (0-1) representing confidence that the asset is malicious. Rules are grouped by category (Visual Similarity, Threat Intelligence, Domain Age, Text Matching, Behavioral Analysis), each rule has a confidence level (Very Low to Very High), and weighted scores are combined across all triggered rules with organization-specific adjustments applied.`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Suspected Threat Creation`}),` - A suspected threat is recorded with all gathered intelligence. It stays unconfirmed until it is reviewed.`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Auto-Reporting (Optional)`}),` - If your organization has auto-reporting enabled and the suspected threat’s score exceeds your medium threshold, the system can automatically create a report with the detected asset, mark the asset as blocked, submit takedown requests (if configured), and send notifications to your team.`]}),`\n`]}),`\n`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Auto-Reporting Requirements:`}),` Score must meet or exceed your medium threshold, detection source must be enabled, asset must not already be blocked, and asset must not have been previously rejected multiple times.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`confidence-levels`,children:`Confidence Levels`}),`\n`,_jsx(_components.p,{children:`Suspected threats are categorized into confidence levels based on your organization’s thresholds:`}),`\n`,_jsx(Heading,{level:`3`,id:`none-score-0-to-low-threshold`,children:`None (Score 0 to Low Threshold)`}),`\n`,_jsx(_components.p,{children:`Low-confidence suspected threats. May be false positives or tangentially related to your brand. Useful for monitoring trends but rarely require action. Examples include generic mention of your brand in unrelated context, weak keyword matches, and minimal similarity indicators.`}),`\n`,_jsx(Heading,{level:`3`,id:`low-low-threshold-to-medium-threshold`,children:`Low (Low Threshold to Medium Threshold)`}),`\n`,_jsx(_components.p,{children:`Some indicators suggest a potential threat, but evidence is limited. Requires manual review to confirm. Common scenarios include domain contains your brand name but has legitimate business purpose, social media mentions your brand in neutral context, and weak visual or textual similarity.`}),`\n`,_jsx(Heading,{level:`3`,id:`medium-medium-threshold-to-high-threshold`,children:`Medium (Medium Threshold to High Threshold)`}),`\n`,_jsx(_components.p,{children:`Strong indicators of malicious intent. Multiple detection rules triggered with reasonable confidence. Common scenarios include new domain with brand name and suspicious keywords, social media account impersonating your brand with stolen logo, and token contract with similar name on blockchain. This is the typical threshold for automatic reporting and blocking.`}),`\n`,_jsx(Heading,{level:`3`,id:`high-high-threshold-and-above`,children:`High (High Threshold and above)`}),`\n`,_jsx(_components.p,{children:`Very strong evidence of malicious activity. Multiple high-confidence rules triggered. Common scenarios include perfect visual replica of your website, domain nearly identical to yours (typosquatting), known phishing infrastructure, and contains wallet drainer code. High-confidence suspected threats require immediate attention and rapid response.`}),`\n`,_jsx(Heading,{level:`2`,id:`understanding-suspected-threat-groups`,children:`Understanding Suspected Threat Groups`}),`\n`,_jsxs(_components.p,{children:[`Suspected threats can be grouped together using a `,_jsx(_components.strong,{children:`Group ID`}),` to represent related threats discovered from a single source.`]}),`\n`,_jsx(Heading,{level:`3`,id:`relationship-extraction`,children:`Relationship Extraction`}),`\n`,_jsx(_components.p,{children:`When analyzing an asset, the system may discover additional related threats:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Linked URLs`}),` - A phishing page that links to multiple other scam domains`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Redirects`}),` - A URL that redirects through several malicious domains`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Related Accounts`}),` - Social media posts that mention multiple scam websites`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`All related suspected threats share the same group ID, making it easy to identify and report entire phishing campaigns at once.`}),`\n`,_jsx(Heading,{level:`3`,id:`campaign-tracking`,children:`Campaign Tracking`}),`\n`,_jsx(_components.p,{children:`Group IDs help you identify campaigns (recognize coordinated phishing campaigns), track infrastructure (map relationships between threats), report networks (report entire attack networks simultaneously), and understand tactics (analyze attacker tactics and patterns).`}),`\n`,_jsx(Heading,{level:`2`,id:`deduplication`,children:`Deduplication`}),`\n`,_jsx(_components.p,{children:`The system automatically handles duplicate suspected threats to prevent alert fatigue:`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Same Asset, Same Organization`}),` - If the same asset is detected multiple times by the same source for your organization, only one suspected threat is kept to prevent alert fatigue from repeated discoveries.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Same Asset, Different Sources`}),` - If multiple detection sources independently find the same threat, a separate suspected threat is recorded for each source. This helps validate threat confidence (multiple sources agree), understand which sources are most effective, and track how threats spread across platforms.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Different Assets, Same Campaign`}),` - Related assets in the same attack campaign are linked via group IDs but kept as separate suspected threats. This allows you to report each asset individually, track takedown progress per asset, and understand campaign scope.`]}),`\n`,_jsx(Heading,{level:`2`,id:`key-takeaways`,children:`Key Takeaways`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`A suspected threat is the entry point, not the decision: It indicates a potential threat, but review and approval are required before blocking to prevent false positives`}),`\n`,_jsx(_components.li,{children:`Group IDs reveal campaign scope: When one suspected threat links to multiple related assets, you can identify and report entire phishing campaigns instead of blocking sites one at a time`}),`\n`,_jsx(_components.li,{children:`Threshold configuration balances coverage and noise: Lower thresholds catch more threats but require more review, while higher thresholds miss edge cases but reduce workload`}),`\n`,_jsx(_components.li,{children:`Deduplication across sources increases confidence: When multiple independent detection sources flag the same asset, it provides stronger evidence of malicious intent`}),`\n`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Suspected Threats","description":"How ChainPatrol flags unconfirmed suspected threats, scores their confidence from none to high, groups related campaign threats, and deduplicates findings.","href":"/concepts/detections"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Overview","slug":"overview","depth":2,"children":[{"title":"Components of a Suspected Threat","slug":"components-of-a-suspected-threat","depth":3,"children":[]}]},{"title":"Suspected Threat Lifecycle","slug":"suspected-threat-lifecycle","depth":2,"children":[]},{"title":"Confidence Levels","slug":"confidence-levels","depth":2,"children":[{"title":"None (Score 0 to Low Threshold)","slug":"none-score-0-to-low-threshold","depth":3,"children":[]},{"title":"Low (Low Threshold to Medium Threshold)","slug":"low-low-threshold-to-medium-threshold","depth":3,"children":[]},{"title":"Medium (Medium Threshold to High Threshold)","slug":"medium-medium-threshold-to-high-threshold","depth":3,"children":[]},{"title":"High (High Threshold and above)","slug":"high-high-threshold-and-above","depth":3,"children":[]}]},{"title":"Understanding Suspected Threat Groups","slug":"understanding-suspected-threat-groups","depth":2,"children":[{"title":"Relationship Extraction","slug":"relationship-extraction","depth":3,"children":[]},{"title":"Campaign Tracking","slug":"campaign-tracking","depth":3,"children":[]}]},{"title":"Deduplication","slug":"deduplication","depth":2,"children":[]},{"title":"Key Takeaways","slug":"key-takeaways","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"chainpatrol","siteName":"ChainPatrol","title":"Suspected Threats - ChainPatrol","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-14T17:53:49.186Z","originalFileLocation":"concepts/detections.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"How ChainPatrol flags unconfirmed suspected threats, scores their confidence from none to high, groups related campaign threats, and deduplicates findings.\">\u003cmeta data-mint-head name=\"application-name\" content=\"ChainPatrol\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/chainpatrol/NioFQGDQy3PBOTVO/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/docs/mintlify-assets/_mintlify/favicons/chainpatrol/NioFQGDQy3PBOTVO/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/chainpatrol/NioFQGDQy3PBOTVO/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/chainpatrol/NioFQGDQy3PBOTVO/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/chainpatrol/NioFQGDQy3PBOTVO/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/chainpatrol/NioFQGDQy3PBOTVO/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/chainpatrol/NioFQGDQy3PBOTVO/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/chainpatrol/NioFQGDQy3PBOTVO/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/chainpatrol/NioFQGDQy3PBOTVO/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Suspected Threats - ChainPatrol\">\u003cmeta data-mint-head property=\"og:description\" content=\"How ChainPatrol flags unconfirmed suspected threats, scores their confidence from none to high, groups related campaign threats, and deduplicates findings.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"ChainPatrol\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://chainpatrol.com/docs/concepts/detections\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://chainpatrol.mintlify.site/docs/_mintlify/api/og/v2?division=Concepts\u0026amp;title=Suspected+Threats\u0026amp;description=How+ChainPatrol+flags+unconfirmed+suspected+threats%2C+scores+their+confidence+from+none+to+high%2C+groups+related+campaign+threats%2C+and+deduplicates+findings.\u0026amp;theme=1a8d7dd79d865cbc4c2f5879\u0026amp;signature=284586ea52f13dcb41e2967574c0bf5cdcc34df1991e89f95dce5f60bbd2be5a\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Suspected Threats - ChainPatrol\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"How ChainPatrol flags unconfirmed suspected threats, scores their confidence from none to high, groups related campaign threats, and deduplicates findings.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://chainpatrol.mintlify.site/docs/_mintlify/api/og/v2?division=Concepts\u0026amp;title=Suspected+Threats\u0026amp;description=How+ChainPatrol+flags+unconfirmed+suspected+threats%2C+scores+their+confidence+from+none+to+high%2C+groups+related+campaign+threats%2C+and+deduplicates+findings.\u0026amp;theme=1a8d7dd79d865cbc4c2f5879\u0026amp;signature=284586ea52f13dcb41e2967574c0bf5cdcc34df1991e89f95dce5f60bbd2be5a\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/docs/mintlify-assets/_mintlify/favicons/chainpatrol/NioFQGDQy3PBOTVO/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"ChainPatrol\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#6622DC\">\u003clink data-mint-head rel=\"canonical\" href=\"https://chainpatrol.com/docs/concepts/detections\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/concepts/detections.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://chainpatrol.com/#organization\",\"name\":\"ChainPatrol\",\"url\":\"https://chainpatrol.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/chainpatrol/R_CITzEDbsciFTsn/logo/light.svg?fit=max\u0026auto=format\u0026n=R_CITzEDbsciFTsn\u0026q=85\u0026s=8ca4a8411113008ec8f9a57dec249989\"}},{\"@type\":\"WebSite\",\"@id\":\"https://chainpatrol.com/docs#website\",\"name\":\"ChainPatrol\",\"url\":\"https://chainpatrol.com/docs\",\"publisher\":{\"@id\":\"https://chainpatrol.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://chainpatrol.com/docs/concepts/detections#webpage\",\"url\":\"https://chainpatrol.com/docs/concepts/detections\",\"name\":\"Suspected Threats\",\"description\":\"How ChainPatrol flags unconfirmed suspected threats, scores their confidence from none to high, groups related campaign threats, and deduplicates findings.\",\"dateModified\":\"2026-10-14T17:53:49.186Z\",\"isPartOf\":{\"@id\":\"https://chainpatrol.com/docs#website\"},\"breadcrumb\":{\"@id\":\"https://chainpatrol.com/docs/concepts/detections#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://chainpatrol.com/docs/concepts/detections#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Concepts\",\"item\":\"https://chainpatrol.com/docs/concepts/organizations\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Suspected Threats\",\"item\":\"https://chainpatrol.com/docs/concepts/detections\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://chainpatrol.com/docs/concepts/detections#article\",\"headline\":\"Suspected Threats\",\"name\":\"Suspected Threats\",\"description\":\"How ChainPatrol flags unconfirmed suspected threats, scores their confidence from none to high, groups related campaign threats, and deduplicates findings.\",\"url\":\"https://chainpatrol.com/docs/concepts/detections\",\"mainEntityOfPage\":{\"@id\":\"https://chainpatrol.com/docs/concepts/detections#webpage\"},\"dateModified\":\"2026-10-14T17:53:49.186Z\",\"publisher\":{\"@id\":\"https://chainpatrol.com/#organization\"},\"isPartOf\":{\"@id\":\"https://chainpatrol.com/docs#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"ChainPatrol\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"ChainPatrol","nav":{"global":null,"tabs":[{"tab":"Documentation","groups":[{"group":"Getting Started","pages":[{"group":"What do we do?","pages":[{"title":"How ChainPatrol Protects Your Brand","href":"/getting-started/what-we-do/introduction"},{"title":"Brand Impersonation","href":"/getting-started/what-we-do/brand-impersonation"},{"title":"General Phishing","href":"/getting-started/what-we-do/general-phishing"}]},{"group":"How it works","pages":[{"title":"How We Use AI","href":"/getting-started/how-it-works/how-we-use-ai"},{"title":"Detection Sources","href":"/getting-started/how-it-works/detection-sources"},{"title":"How Asset Scans Work","href":"/getting-started/how-it-works/asset-scans"},{"title":"Review","href":"/getting-started/how-it-works/review"},{"title":"How the Blocklist Works","href":"/getting-started/how-it-works/blocklist"},{"title":"Takedown","href":"/getting-started/how-it-works/takedown"},{"title":"How the Watchlist Works","href":"/getting-started/how-it-works/watchlist"}]},{"group":"How do I get started?","pages":[{"title":"Onboarding Requirements","href":"/protect-your-brand/onboarding-requirements"},{"title":"Who Should Be Involved in Brand Protection","href":"/protect-your-brand/who-should-be-involved"},{"title":"Services Setup","href":"/protect-your-brand/services-setup"},{"title":"Ongoing Communication","href":"/protect-your-brand/ongoing-communication"}]}]},{"group":"Concepts","pages":[{"title":"Organizations","href":"/concepts/organizations"},{"title":"Brands","href":"/concepts/brands"},{"title":"Reports","href":"/concepts/reports"},{"title":"Reviews","description":"How ChainPatrol reviewers approve, reject, skip, or escalate threat proposals using detection rules, scan evidence, and trusted reporter signals","href":"/concepts/reviews"},{"title":"Suspected Threats","href":"/concepts/detections"},{"title":"Asset Scans in ChainPatrol","description":"How ChainPatrol captures point-in-time snapshots of URLs, social profiles, and addresses with screenshots, enrichment data, risk scores, and liveness","href":"/concepts/asset-scans"},{"title":"The ChainPatrol Blocklist","href":"/concepts/blocklist"},{"title":"Allowlist","href":"/concepts/allowlist"},{"title":"The ChainPatrol Watchlist","href":"/concepts/watchlist"},{"title":"Dark Web Monitoring","href":"/concepts/dark-web-monitoring"},{"title":"Takedowns","href":"/concepts/takedowns"},{"title":"Legal Docs","href":"/concepts/legal-docs"},{"title":"Metrics","href":"/concepts/metrics"},{"title":"Security Portal","href":"/concepts/security-portal"}]},{"group":"Security \u0026 Privacy","pages":[{"title":"Security Whitepaper","href":"/security"}]}]},{"tab":"Integrations","pages":[{"title":"Integrations","href":"/integration/discord"}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/external-api/overview"}]},{"tab":"CLI","pages":[{"title":"CLI","href":"/cli/overview"}]},{"tab":"JavaScript SDK","pages":[{"title":"JavaScript SDK","href":"/sdk/overview"}]},{"tab":"Glossary","pages":[{"title":"Glossary","href":"/glossary/overview"}]}]},"basePath":"","title":"Suspected Threats - ChainPatrol","buildId":"dpl_ATnXPMW25DMPUr9VBw6kL6MfBt6T","deploymentId":"dpl_ATnXPMW25DMPUr9VBw6kL6MfBt6T","dynamics":[],"chunks":[]}