Skip to main content

What is an Evidence Packet?

An Evidence Packet is a self-contained compliance audit bundle for a single instrument. It carries the determination, every screen with its calculation, the source filings and XBRL tags each number came from, a confidence breakdown, and stability metrics — everything needed to reproduce and defend a screening decision. This is what turns a screening result into a defensible compliance decision. ETF issuers, advisors, and fund managers use Evidence Packets to:

Document for Shariah boards

Show the exact filings, tags, and ratios behind each verdict.

Satisfy audits

Reproduce any determination from its filing set and methodology version.

Build client reports

Pull structured numerator/denominator data straight into reports.

Track threshold proximity

Watch how close a holding sits to flipping over time.
Evidence is available only after a stock has been analysed. While determination.status is pending, GET /instruments/{symbol}/evidence returns 404.

Fetching a packet

Structure

Field reference

methodology

The exact ruleset, as separate id (aaoifi-ss21) and version (2026.1) fields, plus a human-readable name. Combined, this is the aaoifi-ss21@2026.1 reference you’ll also see in meta.methodology. See Methodology versioning.

determination

The verdict — status, confidence, machine-readable reason_codes, and purification (required plus the percentage of dividends to purify).

screens[]

One entry per screen, keyed by name: business_activity, debt_to_market_cap, cash_to_market_cap, or prohibited_revenue. Every entry reports result: "pass" | "fail", and then carries one of two payloads:
Carries a detail object — primary_activities, prohibited_activities, activity_compliance (permissible or non-permissible), and concerns.

sources[]

The provenance for each screen — what makes a packet reproducible. Every source ties the numbers back to a filing:

confidence_detail

How the confidence score was built: the base_confidence it started from, the extraction_strategies_used, any fallbacks_used, and each penalty or boost (type, impact, reason) applied along the way.

stability

The full stability signal — quarters_compliant, quarters_total, flip_rate, the closest_threshold it’s nearest to breaching (one of the four screen names, e.g. prohibited_revenue, with its current_distance and trend), a stability_rating, and stability_drivers. See Stability metrics.

disclosures[]

Plain-language notes on the calculation basis, periods, and any assumptions behind the determination.