{"$schema":"https://abundera.ai/schemas/qr-safety-policy-v1.json","schema_version":"1.0","service":{"id":"qrcheck","name":"Abundera Check","base_url":"https://check.qr.abundera.ai/api","scan_endpoint":"https://check.qr.abundera.ai/api/scan","docs_url":"https://check.qr.abundera.ai/docs/"},"patents":["QR-17","QR-18","QR-19","QR-21","QR-22","QR-23"],"verdict_fields":[{"name":"schema_version","type":"string","required":true},{"name":"verdict","type":"string","required":true,"enum":["safe","caution","danger","unknown","blocked"]},{"name":"payload_type","type":"string","required":true,"description":"QR Type Catalog id; canonical list at /.well-known/qr-type-catalog.json (planned) or /api/coverage."},{"name":"decoder_format","type":"string","required":false},{"name":"tier","type":"string","required":false,"enum":["free","pro"]},{"name":"chain","type":"array","required":false,"description":"QR-17 redirect chain walk: ordered hops with mutability score per hop."},{"name":"mutability","type":"string","required":false,"enum":["immutable","operator_mutable_audited","operator_mutable_unaudited","client_mutable"]},{"name":"reputation","type":"object","required":false,"description":"Aggregated reputation lookups (Google Safe Browsing, URLhaus, ChainAbuse)."},{"name":"disclosure","type":"string","required":false,"description":"Human-readable advisory the client should surface."}],"supported_formats":["qr_code","data_matrix","aztec","pdf417","code_128","code_39","code_93","codabar","ean_13","ean_8","itf","upc_a","upc_e","maxicode","gs1_databar","gs1_databar_expanded"],"supported_payload_categories":["url","wifi","vcard","emv_payment","crypto","calendar","mail","tel","geo","wireguard","walletconnect","nostr","fido_passkey","shc","mdl","esim","bcbp","dpp","matter","bluetooth","content_addressed","inline_data","intent","plain_text","aamva_driver_license","otpauth","hard_blocked"],"reputation_feeds":[{"id":"google_safe_browsing","label":"Google Safe Browsing","required":false},{"id":"urlhaus","label":"URLhaus","required":false},{"id":"chainabuse","label":"ChainAbuse","required":false}],"provenance_ledger_enabled":true,"consumes_qr_redirect_policy_from":["qr.abundera.ai","qr-redirect-worker.abundera.ai"],"privacy":{"payload_persisted":false,"cache_key":"SHA-256(payload_type || discriminator || server_salt)","cache_key_reconstructable":false,"logs_scans":false,"transmits_payload_to_reputation":true,"transmits_payload_to_reputation_note":"Only the URL or address, never the full payload. Disclosed in UI."},"rate_limits_url":"https://check.qr.abundera.ai/.well-known/abundera-capabilities.json","abuse_contact":"abuse@abundera.ai","last_updated":"2026-05-16"}