IS 5568 & WCAG AA Accessibility Audit (Hebrew) avatar

IS 5568 & WCAG AA Accessibility Audit (Hebrew)

Pricing

from $40.00 / 1,000 page auditeds

Go to Apify Store
IS 5568 & WCAG AA Accessibility Audit (Hebrew)

IS 5568 & WCAG AA Accessibility Audit (Hebrew)

IS 5568 (Israeli accessibility standard, WCAG 2.0 AA) audit in a real browser with axe-core. Element screenshots, flat violation rows, and a Hebrew legal-citation PDF (Equal Rights law section 19na). Automated scan only, not legal advice. Failed or blocked pages are not charged. נגישות אתרים ת"י

Pricing

from $40.00 / 1,000 page auditeds

Rating

0.0

(0)

Developer

Barak Eliov

Barak Eliov

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a month ago

Last modified

Categories

Security

Limited permissions

Share

Israel Accessibility Compliance Audit (IS-5568 / WCAG AA)

Audits websites against IS 5568 (the Israeli accessibility standard, based on WCAG 2.0 AA) in a real Chromium browser, using the axe-core engine (MIT, Deque Systems). It outputs per-page results, element screenshots, and an optional Hebrew legal-citation PDF that cites the Equal Rights for Persons with Disabilities Law (section 19na). Automated scan only, not legal advice.

This is v1 (the scope approved in SPEC.md). See "What's not in v1 yet" below.

What this Actor does

  1. Audits every URL you supply at WCAG AA - the exact level Israel's Equal Rights for Persons with Disabilities (Service Accessibility Adjustments) Regulations, 5773-2013, require via Israeli Standard 5568 (IS-5568).
  2. Produces a Hebrew-language compliance report (PDF) that cites the regulations and section 19na of the Equal Rights for Persons with Disabilities Law (a civil tort allowing statutory damages of up to 50,000 ILS without proof of actual harm), maps every violation to its WCAG criterion in Hebrew, and includes screenshots and a batch summary. With outputMode flat or both, the dataset has every single violation row for every URL; the PDF itself embeds up to 200 findings in full detail per run (see "Report size limits" below) so a large, dense batch can't produce an unbounded file.
  3. Never charges for a failed or blocked audit - the same guarantee verified on the English sibling.

What makes this different from the global WCAG-audit Actors on Apify

None of the global competitors - including this Actor's own English sibling - target the Israeli market, cite the binding Israeli legal text, or disclose the statutory-damages exposure. Confirmed zero Hebrew/ Israel-specific competitors via search-actors on 2026-10-02 (see data/ledger.md).

The legal exposure described in the report is ongoing from the date the regulations took effect - it is not tied to any future compliance date, and does not depend on how many lawsuits have actually been filed. This Actor deliberately does not claim any approaching "compliance deadline": a "June 2026" claim found repeated across several Israeli accessibility-vendor marketing pages was checked against the regulation's actual text and has no basis there - it is not used anywhere in this Actor's code, input schema, or reports.

The legal report this Actor produces is the output of an automated scan (axe-core on a real browser). It is not a certified legal audit, not a legal opinion, and does not constitute legal advice. It does not guarantee any legal outcome or full compliance with the law. Consult a lawyer and/or a certified accessibility auditor before relying on its findings.

This disclaimer is not cosmetic: overclaiming accessibility compliance is exactly what cost accessiBe a 2025 FTC fine of $1 million for misleading consumers about their sites' compliance level. This report cites a real statutory-damages figure, so the disclaimer appears in every report the Actor produces, not just here.

What is cited here - and what is not

  • Cited: the free regulation/law text (Nevo, nevo.co.il) and the official WCAG success-criterion numbers (free, W3C/MIT, via axe-core).
  • Not cited: Israeli Standard 5568's own internal clause numbering. The standard document itself is sold by Israel's national standards institute (SII) and may be copyrighted - v1 cites the standard's name only ("Israeli Standard 5568"), never its internal numbering. The wcagCriterionHebrewName field is this Actor's own working translation of W3C's free "Understanding WCAG" titles, not a translation of IS-5568's own text.
  • Transparency note on "verbatim": this Actor's legal report presents a verified summary of the regulation's/law's substance, with a direct link to the authoritative source - not a character-for- character quote. An attempt to upgrade this to an actual verbatim quote (via WebFetch, post-build) surfaced a real finding worth knowing: re-fetching the same statutory section twice produced two different Hebrew wordings, because AI-summarizing fetch tools don't return raw page text (see docs/lessons.md #5). A true verbatim quote would need a raw HTML fetch or manual verification against the Nevo links in the report before any legal reliance.

Input example

{
"urls": ["https://example.com"],
"wcagLevel": "wcag2aa",
"generateLegalReport": true,
"reportLanguage": "he"
}

Input defaults

Every input field has a default. .actor/input_schema.json is the authoritative source; this table is generated from it and the defaults below match that file exactly.

FieldTypeDefaultMeaning
urlsarray["https://example.com"]Public page URLs to audit, one audit per URL (up to 100 per run). No crawling.
wcagLevelstring"wcag2aa"WCAG level to check. wcag2aa is the level IS 5568 adopts.
viewportstring"desktop"Screen preset: desktop, tablet, mobile, or custom.
viewportWidthinteger1280Custom viewport width in px (used only when viewport is custom).
viewportHeightinteger800Custom viewport height in px (used only when viewport is custom).
includeScreenshotsbooleantrueElement screenshot per violation plus one full-page screenshot per URL.
includeIncompletebooleantrueAlso return axe-core checks that need human review (status = incomplete).
includePassesbooleanfalseAlso return the count of rules that passed.
outputModestring"both"Row shapes: perPage (page rows), flat (one page row per URL plus one row per violation; one page-audited charge per successful page, issued after its rows are saved), or both (page row plus violation rows, charged per successful page).
generateLegalReportbooleantrueGenerate the Hebrew legal-citation PDF report for the run (charged only on success).
reportLanguagestring"he"Legal report language: he, en, or both. Legal references stay in Hebrew.
generatePdfReportbooleanfalseAlso generate a plain English WCAG-only PDF report (charged only on success).
waitForSelectorstring""Optional CSS selector to wait for before auditing. Empty means no wait.
waitUntilstring"load"Navigation readiness: load, domcontentloaded, or networkidle.
timeoutSecsinteger30Per-URL time budget in seconds for navigation, audit and screenshots.
proxyConfigurationobject{"useApifyProxy":true}Apify Proxy settings used for the audit requests.
maxConcurrencyinteger5Maximum number of pages audited in parallel within one run.

Output example

The dataset has three row shapes, distinguished by rowType.

Page row (one per audited URL):

{
"rowType": "page",
"url": "https://example.com",
"finalUrl": "https://example.com/",
"status": "success",
"wcagLevel": "wcag2aa",
"viewport": "desktop",
"score": 92,
"violationCount": 1,
"incompleteCount": 0,
"passCount": 0,
"violationsByImpact": { "critical": 0, "serious": 0, "moderate": 1, "minor": 0 },
"fullPageScreenshotUrl": "https://api.apify.com/v2/key-value-stores/.../records/fullpage-....png",
"waitForSelectorTimedOut": false,
"errorCategory": null,
"errorMessage": null,
"auditedAt": "2026-10-02T12:00:00.000Z",
"engineVersion": "4.13.0"
}

Violation row (one per individual finding, when outputMode is flat/both):

{
"rowType": "violation",
"pageUrl": "https://example.com",
"ruleId": "image-alt",
"impact": "critical",
"status": "violation",
"description": "Images must have alternate text",
"helpText": "Add an alt attribute",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.13/image-alt",
"wcagCriteria": ["1.1.1"],
"wcagCriterionHebrewName": "1.1.1 – תוכן שאינו טקסטואלי",
"selector": "#logo",
"htmlSnippet": "<img id=\"logo\">",
"screenshotUrl": "https://api.apify.com/v2/key-value-stores/.../records/violation-....png",
"nodeCount": 1
}

wcagCriterionHebrewName is null when wcagCriteria is null (axe-core best-practice rules with no numbered WCAG mapping) or when the criterion is not yet in this Actor's translation table - never guessed.

Summary row (exactly one per run, also saved to the key-value store as batchSummary):

{
"rowType": "summary",
"totalPagesAudited": 1,
"totalPagesFailed": 0,
"totalViolations": 1,
"violationsByImpact": { "critical": 0, "serious": 0, "moderate": 1, "minor": 0 },
"topFailingRules": [{ "ruleId": "image-alt", "pageCount": 1 }],
"pdfReportUrl": null,
"legalReportUrl": "https://api.apify.com/v2/key-value-stores/.../records/legal-report-....pdf",
"regulationCitation": {
"source": "נבו (nevo.co.il)",
"regulationUrl": "https://www.nevo.co.il/law_html/law01/500_865.htm",
"lawUrl": "https://www.nevo.co.il/law_html/law01/p214m2_001.htm",
"disclaimer": "דוח זה הוא תוצר של סקירה אוטומטית... / This report is an automated scan..."
}
}

Errors (never silent, never charged)

CategoryWhen
invalid_urlMalformed URL, non-http(s) URL, or the URL resolves to a private/link-local/reserved IP address (SSRF protection, always on)
not_foundDNS failure, connection refused, 404/410
blocked401/403/429 response, or a Chromium block error (e.g. ERR_BLOCKED_BY_RESPONSE). Never retried
timeoutNavigation, the axe-core audit, or screenshot capture exceeded timeoutSecs combined
render_errorBrowser crash or an unclassified render failure
upstream_changed5xx upstream server error

A failed page is never charged. A legal report that cannot be produced (zero pages succeeded in the batch) is not charged either - page-audited charges for pages that did succeed in the same batch are unaffected.

Report size limits (dataset vs. PDF)

With outputMode flat or both, the dataset is complete: every violation/incomplete finding for every URL is a full row, regardless of batch size. With perPage, the dataset holds only page rows (with the violationsByImpact summary) and the summary row. The limits below apply only to what's embedded in full detail (HTML snippet + screenshot image) inside the PDF report body (generatePdfReport and/or generateLegalReport):

  • Per page: at most 20 findings embedded in full, confirmed violations before "needs manual review" items, most severe first. A single dense real page (e.g. a news homepage with 150+ findings) cannot alone blow up the PDF.
  • Per batch: a shared ceiling of 200 findings embedded in full across the whole run (up to the 100-URL-per-run maximum), so many individually-small pages still can't sum to an unbounded file.
  • Per screenshot: capped at 2000x1200 CSS pixels (width x height). Several common rules (landmark-one-main, page-has-heading-one, region, etc.) resolve to a whole-page-length element (html/body itself) - confirmed live on real sites (gov.il, calcalist.co.il, amazon.com) during this Actor's stress test, where this alone was a major driver of PDF size; the cap keeps the embedded screenshots bounded without changing the findings or the page count. Oversized elements get a top-left crop instead of a silently-giant full-length screenshot.
  • Whatever is held back is never silently dropped - the report prints exactly how many additional findings exist on that page and how many of them are confirmed violations vs. items needing manual review, with a pointer to the full dataset.
  • PDF rendering (both report types) has an internal 3-minute outer deadline for the whole batch. If exceeded, generation is aborted, logged, and not charged - page-level page-audited charges already applied in the same run are unaffected, and pdfReportUrl/legalReportUrl in the summary row stay null for that run.

Pay-per-event pricing

Event keyWhen
page-auditedOne page successfully audited, including screenshots
legal-report-generatedThe Hebrew compliance report was produced successfully (default: on)
report-generatedThe plain WCAG-only PDF report (English) was produced successfully (default: off)

Every event name is checked against Apify Console's event-key charset (^[a-zA-Z0-9_-]{1,256}$, no spaces) in tests/events.test.ts before a build is considered done.

Local development / Apify run

npm install
npx playwright install chromium # one-time
npm run typecheck
npm test
npm run build
apify run --input-file smoke-input.json --purge

Use with AI agents / MCP

Call with urls as an array (never comma-separated). Check rowType first, then status/errorCategory on page rows. wcagCriterionHebrewName and summary.legalReportUrl/regulationCitation are this Actor's Israel-specific fields on top of the English sibling's schema - everything else is identical.

FAQ

Am I charged for a failed or blocked audit? No. This is this Actor's central guarantee.

Is the legal report legal advice? No. See "Important legal disclaimer" above.

Is wcagCriterionHebrewName a quote of Israeli Standard 5568? No - it's this Actor's own working translation of W3C's free criterion titles, not an official translation and not IS-5568's own text.

What's not in v1 yet

Site-crawl/auto-discovery, CI/CD webhooks, scheduled audits, custom rule-set authoring - the same explicit deferral list as the English sibling.