When to use the Offline iFrame viewer
Use the Offline iFrame viewer if you need:- Embedding into an internal portal (claims, underwriting, fraud ops tools)
- Restricted / air-gapped environments
- A portable viewer that renders from pre-fetched API outputs
- A fully hosted analyst UI with minimal integration effort
- The simplest deep-link workflow into a managed UI
What the Offline iFrame viewer needs
The Offline iFrame viewer does not fetch data for you. Your application must provide:Required inputs
- Original file bytes as an
ArrayBuffer - Fraud analysis result from:
GET /v2/submission/{submission_id}/fraud- Recommended for visualization:
GET /v2/submission/{submission_id}/fraud?with_metadata=true
Optional inputs
- Adaptive Decision result:
GET /v2/submission/{submission_id}/decision - Classification result:
GET /v2/submission/{submission_id}/classification - submissionId (for display/debugging)
- Locale and styling configuration (for white-labeling)
The Offline iFrame viewer expects result payloads as stringified JSON (e.g.,
JSON.stringify(fraudResult)), and the file as an ArrayBuffer passed via postMessage() (ideally using transferable objects).How it works (high level)
- Your app renders an
<iframe>pointing to the Offline iFrame bundle. - Your app fetches:
- the original file bytes, and
- API results JSON (fraud / optional decision / optional classification).
- Your app sends a
postMessage()to the iframe containing:- the file
ArrayBuffer - stringified JSON result payloads
- the file
- The iframe renders the UI based on that payload.