YOUR DATA / YOUR CONTROL
Privacy & readiness
Understand what stays local, what exports contain, and what remains unverified.
Privacy and personal-data scope
Loading operator privacy configuration…
This local tool processes entered text and rule profiles in your browser to find configured patterns. The screen sends no text to an AI provider and uses no analytics or automatic storage. Clear all removes the current page state; it cannot delete downloaded files, backups or copies held by other applications.
Receipts omit raw text but include timestamps, rule IDs and category counts. Private profiles contain literal terms and exception values in an unencrypted file. Store both according to your purpose and retention rules.
The DPDP Act covers data relating to identifiable individuals, not just IDs. Names, addresses, health, biometrics, children's data and inferred identities may be personal data even when this tool detects nothing. It cannot determine lawful basis, consent, age, identity, or complete DPDP compliance. Use synthetic data for demonstrations and enter others' data only with appropriate authority.
The separate SDK can send policy-processed text to OpenAI when live mode is explicitly configured. Review your purpose, lawful basis, provider contract, transfer restrictions and retention before enabling that integration. A profile-export acknowledgement is not the data subject's consent.
Account and billing data
DataVeil may be operated by an individual developer. A company is not required just to identify the responsible operator. A real responsible-person name and monitored privacy contact are still needed before account collection is enabled.
Account sign-in is a separate flow using Google and Firebase Authentication. It can process your user identifier, email, profile and connection information. A future Razorpay checkout processes payment and mandate information. DataVeil's billing store holds identifiers, subscription/payment references, plan choices and processing states; it does not store card details, inspection text or private rules.
Account collection and paid checkout remain paused until operator contact, rights and withdrawal procedures, retention rules, processor review and safeguards are ready. Signing out is not account erasure or subscription cancellation.
Your rights
Access, correction, erasure, grievance, withdrawal and nomination procedures must be published and operational before account collection begins. No request is submitted from this page. When configured, use the monitored privacy contact shown above; do not send identity documents or private data into inspection text as a rights request.
Children's accounts and guardian-consent verification are not supported. No age checkbox or pattern detector establishes age, identity or lawful authority.
Before real-data use
- Supply a real operator name, monitored privacy contact and incident owner.
- Define the purpose, lawful basis, export retention and rights procedure.
- Review provider contracts, applicable transfer restrictions and children's-data handling.
- Verify the host integration, accessibility and independent security review.
No scanner establishes complete DPDP compliance. Local clearing does not delete downloaded files or provider/caller copies.
LOCAL REVIEW / PROTOTYPE 0.1
See what your AI request
could share.
Inspect a text sample, apply your rules, and export a receipt.
No AI request is sent from this screen.
01 Prepare a request
Keyboard shortcut: Control + Enter or Command + Enter to inspect.
02 Review the decision
LOCAL ONLYRun an inspection to see detected categories and the proposed outgoing text.
Proposed outgoing text
Shown locally for review. Excluded from the exported receipt.
Your result will appear here.
Inspection receipt
Category counts, rules and decision only. No request text or matched values.
No receipt yet.
POLICY / LOCAL CONFIGURATION
Rule profiles
Choose what to allow, redact or block. Build reusable private rules.
Choose what happens when a match is found
Customize identification
Add up to 50 local rules. Templates match whole ASCII tokens; private terms match literal text. Matches indicate potential sensitive data, not verified identities.
Added rules block by default and can be edited. These formats do not verify identity or document validity. Other numbers may match. Names, addresses, health and biometric data require contextual or field-specific handling; no “detect all” guarantee is possible.
Template example: CUST-{digit:6}. Tokens: {digit:N}, {letter:N}, {alnum:N} (N = 1–99). Everything else is literal, including regex symbols.
One exact, case-sensitive matched value per line (up to 100). Exception values bypass all matching rules, including block rules. Partial matches are not exempted.
Built-in replacement labels
Use uppercase labels such as [EMAIL] or [CUSTOMER_ID]. Configuration stays in page memory; private terms, templates, exceptions and labels are excluded from the receipt.
Reuse a private rule profile
Profiles contain your private terms and exception values. They are unencrypted configuration files, separate from receipts. Import replaces the current rules only after validation; request text is kept.
Changes apply to your next inspection and invalidate older receipts. No automatic storage is used. Save a private profile to reuse configuration after a refresh.
Use these rules in Inspect →GET STARTED / KNOW THE LIMITS
Using DataVeil
A local workflow for checking selected potential personal-data and secret patterns.
Inspect a request
- Open Inspect and select a synthetic example or enter authorized text.
- Choose rules in Rule profiles. Defaults block selected secrets and redact email/phone matches.
- Inspect with the button or Control/Command + Enter.
- Review the proposed text and findings. Nothing is transmitted from this screen.
- Export the metadata receipt if needed.
Build a private profile
Use fixed-width templates such as CUST-{digit:6} or literal private terms. Optional flexible whitespace handles 1–32 spaces, tabs or line breaks between words.
Exact exceptions can bypass matching block rules. Use them deliberately. Profiles include private configuration; receipts omit it.
Manage profiles →Understand decisions
- Allow
- No configured blocking or redaction rule matched. This is not proof that text contains no personal data.
- Redact
- Matching text is replaced in the local preview.
- Block
- No proposed outgoing text is prepared.
Every screen receipt says not_sent.
SDK and CLI
The TypeScript SDK wraps one plain-text OpenAI integration. Live mode needs explicit credentials and operator review. The local screen never enables it.
node src/cli.ts < synthetic-input.txt
CLI exit codes: 0 allow, 2 redaction required, 3 block, 1 invalid input. CLI inspection does not sanitize files or forward requests.
Limits and troubleshooting
Input limit: 100,000 characters. Profiles: 100 KB, up to 50 rules and 100 exceptions. Unknown rule fields and malformed profiles are rejected.
Names, addresses, health information, unfamiliar secrets, inferred identities and some international or obfuscated formats may be missed. Presets do not verify documents.
Navigation keeps current state only in this tab's memory. Refreshing or closing resets it. Save a private profile before reloading.
Keyboard and privacy
Use the skip link, Tab/Shift+Tab, and Control/Command + Enter from Inspect. Clear all clears current text, rules and receipts. Delete downloaded copies separately under your retention policy.
Screen-reader, full keyboard and cross-browser/device assessment remain incomplete.
Review privacy & readiness →