Mixed Content Auditor avatar

Mixed Content Auditor

Pricing

Pay per usage

Go to Apify Store
Mixed Content Auditor

Mixed Content Auditor

Audit one public HTTPS page for insecure http:// mixed-content subresources (scripts, stylesheets, images, iframes, media). Returns active vs passive classification, per-resource details, score, and migration recommendations.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Sanskar Jaiswal

Sanskar Jaiswal

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

15 days ago

Last modified

Share

Fetches one public HTTPS page and parses the returned HTML for insecure http:// subresources such as scripts, stylesheets, images, media, and iframes. It separates active mixed content (which can execute code in the page) from passive mixed content (images, media) and returns a readiness score with recommendations. Built for security teams, devops engineers, site migration QA, and scheduled monitoring.

Use cases

  • Audit landing pages before and after HTTPS migrations.
  • Verify that third-party tags, widgets, and CDN resources are served over HTTPS.
  • Monitor high-value pages on a schedule to catch mixed-content regressions.
  • Feed structured results into QA dashboards or security alerts.

Input

FieldTypeDescription
startUrlstringPublic HTTP or HTTPS page URL to audit. URLs with credentials and private network targets are rejected.
timeoutSecondsintegerRequest timeout from 3 to 30 seconds. Defaults to 10.
maxHtmlBytesintegerMaximum page bytes to read before parsing. Defaults to 1 MB and is capped at 2 MB.

Output

The actor pushes one dataset item per run.

FieldTypeDescription
inputUrlstringOriginal URL from input.
normalizedInputUrlstringNormalized input URL after defaulting the scheme.
finalUrlstringFinal page URL after redirects.
okbooleanTrue when the page fetched successfully and no insecure resources were found.
checkedAtstringISO timestamp for the audit.
scoreintegerMixed-content readiness score from 0 to 100.
gradestringLetter grade from A to F.
activeCountintegerInsecure active resources found (scripts, stylesheets, iframes, object/embed, video/audio/source).
passiveCountintegerInsecure passive resources found (images).
totalInsecureintegerTotal insecure http:// resources found.
resourcesarrayPer-resource details: tag, URL, attribute, active flag, same-origin flag, speculative HTTPS upgrade URL.
issuesarrayHuman-readable issues.
recommendationsarraySuggested fixes.
errorstring or nullPage-level error, if the initial fetch failed.

Example input

{
"startUrl": "https://example.com/",
"timeoutSeconds": 10
}

Example output

{
"inputUrl": "https://example.com/",
"normalizedInputUrl": "https://example.com/",
"finalUrl": "https://example.com/",
"ok": true,
"checkedAt": "2025-01-01T00:00:00.000Z",
"score": 100,
"grade": "A",
"activeCount": 0,
"passiveCount": 0,
"totalInsecure": 0,
"resources": [],
"issues": [],
"recommendations": [
"No mixed content detected. Continue serving all subresources over HTTPS."
],
"error": null
}

Security

  • Only public HTTP and HTTPS URLs are fetched.
  • URLs with usernames or passwords are rejected.
  • Private IPv4, private IPv6, localhost, link-local, and private DNS resolutions are blocked before fetching.
  • Redirect destinations are revalidated before they are followed.
  • Page reads are capped to limit memory use.
  • The actor does not require logins, cookies, browser sessions, or credentials.

Pricing

EventSuggested price
Actor start$0.005
Page audited$0.01

Suggested launch price: about $0.015 per audited page. Agencies can schedule the actor for recurring checks on important URLs.

FAQ

Does this crawl the whole site?

No. It fetches one page and parses the HTML. This keeps runs cheap and predictable.

Does it check JavaScript-rendered resources?

No. It parses the returned HTML. Browser rendering can be added later if customer demand justifies the extra cost and maintenance.

What is the difference between active and passive mixed content?

Active mixed content includes scripts, stylesheets, iframes, and media that can execute code or navigate the page. Passive mixed content includes images that cannot execute code but still trigger browser warnings. Active content is scored more heavily.

How does the score work?

The score starts at 100 and is reduced by 12 points per active resource (up to 60) and 4 points per passive resource (up to 25). The resulting letter grade reflects overall HTTPS migration readiness.