API Reference
WebStaticScanAnalysis
Performs a static (non-browser) scan of a web page to collect resource metadata and host TLS summaries.
Inheritance
- Object
- WebStaticScanAnalysis
Usage
This type appears in these public API surfaces even when no hand-authored example is attached directly to the page.
Returned or exposed by
Accepted by parameters
- Method Converters.Convert
Constructors
public WebStaticScanAnalysis() #Methods
public async Task Analyze(String url, InternalLogger logger, CancellationToken cancellationToken = null) #TaskExecutes the analyze operation.
Parameters
- url System.String
- logger DomainDetective.InternalLogger
- cancellationToken System.Threading.CancellationToken = null
ApplyDnsTechDetections(System.String arg1, System.Threading.CancellationToken arg2) #Performs minimal DNS TXT detection for well-known verification records to add technology evidence.
Parameters
- arg1 System.String
- arg2 System.Threading.CancellationToken
ApplyHeaderCookieMetaRules(System.Net.Http.HttpResponseMessage arg1, System.String arg2) #Applies optional JSON header/cookie/meta rules (when loaded) to infer technologies.
Parameters
- arg1 System.Net.Http.HttpResponseMessage
- arg2 System.String
ApplyPathAndDomainRules() #Applies optional JSON path/domain/body rules (when loaded) to infer technologies.
DetectTechFromHeadersAndBody(DomainDetective.HttpAnalysis arg1, System.String arg2) #Applies heuristic detections from headers/body beyond the rules (e.g., server/cookie hints and generator meta).
Parameters
- arg1 DomainDetective.HttpAnalysis
- arg2 System.String
Inherited Methods
public override Boolean Equals(Object obj) #BooleanParameters
- obj Object
Properties
public String Subject { get; set; } #Gets or sets the subject value.
public TimeSpan Timeout { get; set; } #Gets or sets the timeout value.
public Int32 MaxResources { get; set; } #Gets or sets the max resources value.
public Int32 Concurrency { get; set; } #Gets or sets the concurrency value.
public Int32 DiscoveryConcurrency { get; set; } #Maximum parallel header fetches for discovered resources; 0 defers to Concurrency.
public Int32 CssConcurrency { get; set; } #Maximum parallel CSS fetches/processing; 0 defers to Concurrency.
public Int32 TlsConcurrency { get; set; } #Maximum parallel TLS probes; 0 defers to Concurrency.
public Int32 DnsConcurrency { get; set; } #Maximum parallel DNS/RDAP enrichments; 0 defers to Concurrency.
public Boolean RespectRobots { get; set; } #Gets or sets the respect robots value.
public Boolean EnableThreatIntel { get; set; } #Gets or sets the enable threat intel value.
public Boolean SkipThirdParty { get; set; } #When true, skip third-party resources; only first-party (same registrable domain) are fetched.
public Int32 MaxResourcesPerHost { get; set; } #Maximum number of resources to fetch per host. Applies to initial and CSS-discovered resources.
public DnsConfiguration DnsConfiguration { get; set; } #DNS configuration used for host/IP enrichment when needed.
public Func<String, String> GetRegistrableDomain { get; set; } #Optional function to obtain the registrable domain (PSL).
public String TechRulesPath { get; set; } #Optional path to a JSON rules file defining additional tech detection patterns.
public Boolean FollowLinks { get; set; } #Gets or sets the follow links value.
public Int32 LinkMaxDepth { get; set; } #Gets or sets the link max depth value.
public Int32 LinkMaxPages { get; set; } #Gets or sets the link max pages value.
public Boolean LinkFirstPartyOnly { get; set; } #Gets or sets the link first party only value.
public Int32 LinkConcurrency { get; set; } #Gets or sets the link concurrency value.
public Boolean LinkOnly { get; set; } #When true, skips static resource discovery and performs link checks only.
public HttpAnalysis MainHttpAnalysis { get; set; } #Gets or sets the main http analysis value.
public Uri MainFinalUri { get; set; } #Final URI of the main document after redirects.
public String PrimaryRegistrableDomain { get; set; } #Registrable domain derived from the scanned URL host.
public String PageTitle { get; set; } #Extracted HTML page title when available.
public List<StaticRequest> Requests { get; } #Gets the requests value.
public Dictionary<String, StaticHost> Hosts { get; } #Gets the hosts value.
public Dictionary<String, Int64> BytesByType { get; } #Gets the bytes by type value.
public HashSet<String> TechDetections { get; } #Technologies detected via compiled rules and optional JSON extensions.
public HashSet<String> TrackersUsed { get; } #Tracker domains used during the scan (suffix-based, curated list).
public Int32 CookiesSet { get; set; } #Total number of Set-Cookie headers observed across resource requests.
public Dictionary<Int32, List<Int32>> RequestAdjacency { get; } #Adjacency list of request graph: parent RequestId -> list of child RequestIds.
public virtual List<Assessment> Assessments { get; } #Gets the assessments value.
public IReadOnlyList<RecommendationAdvice> Recommendations { get; } #Represents the recommendations value.
public List<TechDetectionDetail> TechDetails { get; } #Detailed records for each technology detection.
public CookieAttributeSummary CookieSummary { get; } #Aggregated cookie attribute posture for first-party cookies observed.
public CorsSummary Cors { get; } #Aggregated CORS headers posture for first-party responses.
public ServerTimingSummary ServerTiming { get; } #Aggregated Server-Timing metrics observed on first-party responses.
public List<LinkHint> LinkHints { get; } #Link hints discovered in the main document (preconnect/dns-prefetch/preload/prefetch).
public List<String> RobotsSitemaps { get; } #Sitemaps referenced by robots.txt for the primary host (no crawling).
public Dictionary<String, Int32> StructuredDataTypes { get; } #Counts of structured data schema types found in application/ld+json blocks.
public List<TrackerDetection> TrackerDetails { get; } #Structured tracker detections with evidence instead of plain strings.
public List<BrokenResource> BrokenResources { get; } #List of broken resources (HTTP status >= 400 or failed) discovered during the scan.
public List<LinkFanOutNode> TopLinkFanOut { get; } #Top nodes with the highest number of link-derived children.
public Dictionary<String, RedirectPairStat> RedirectPairs { get; } #Redirect pair matrix keyed as "fromHost->toHost".
public List<RedirectPairStat> TopRedirectPairs { get; } #Top redirect pairs ordered by count.