Privacy
What we collect, and what we refuse to.
This page describes the data handling of Deverra (deverra.devilabs.dev). It is written to be read by a person deciding whether to connect an agent, and by an agent deciding whether to recommend the site.
What we collect
| Data | Why | Kept |
|---|---|---|
| API key hash SHA-256, plus a 12-character prefix |
To recognise your key on each call. The key itself is never stored — only its hash, so a database leak does not expose usable keys. | Until you ask us to delete it |
| Email address | Supplied when you register a key. Used for abuse triage and to reach you about a broken integration. Not used for marketing, not sold, not shared. | Until you ask us to delete it |
| Per-call record endpoint, HTTP status, latency |
Rate-limit accounting and diagnosing failures. This is the minimum needed to keep a free tier from being abused. | 90 days, then deleted by a daily job |
| Search terms short-lived cache |
A repeated identical search is answered from cache for up to 3 minutes instead of being re-billed upstream. The term is the cache key. | Up to 3 minutes |
| Error reports opt-in only |
Only if you explicitly send x-diagnostics-consent: opt-in. An allowlist drops every field not named below. | 90 days |
What we do not collect
This list is a design constraint, not a promise to try harder:
- Your prompts, completions, or conversation history.
- The content of your requests beyond the search term itself.
- Your end users' personal data. You may optionally tag calls with an x-user-id, which we forward upstream for affiliate attribution and do not read.
- Your IP address. We removed it from our own logs; Cloudflare keeps short-lived edge logs as our hosting provider.
- Card numbers, CVVs, bank details, or any payment credential. There is no checkout, no billing form, and no payment integration in this codebase.
- Cookies, advertising identifiers, fingerprinting scripts, or third-party analytics. This site sets no cookies at all.
Who else is involved
Two processors, both named here rather than hidden in a subprocessor page:
| Party | Role | Sees |
|---|---|---|
| Cloudflare | Hosting and edge network for this site and its database. | Requests as they pass through, including IP, under Cloudflare's own terms. |
| Channel3 | The product catalog that supplies price and merchant data. | The search term you query. The API key for that catalog is ours, not yours, and never reaches your client. |
When you click a purchase link, you leave this site for a merchant or an affiliate redirect. Those destinations have their own privacy policies and set their own cookies. See how we're paid.
Why we are allowed to hold this
If you are in the UK or EU, our lawful bases under GDPR are performance of a contract (issuing and operating your API key) and legitimate interests (rate limiting and abuse prevention, which is why we keep a per-call count). We do not rely on consent for operational data, because consent is not a valid basis for something the service cannot function without.
We do not profile you, make automated decisions with legal effect about you, or transfer your data outside the processor list above.
Your rights
You can ask us to export or delete everything we hold about a key or an email address, and we will do it within 30 days. Deleting a key revokes it immediately and removes its call records. Write to deverra@devilabs.dev from the address you registered, and say which key prefix you mean.
If you are in the UK or EU and are not satisfied with our response, you may complain to your national data protection authority.
Security
Keys are stored as hashes and compared in constant time. Responses carry strict security headers. Error messages are written to be safe to return to a caller and never include stack traces or upstream credentials. Diagnostics are opt-in, allowlisted, truncated, and stripped of credential-shaped strings before storage. Report a vulnerability to deverra@devilabs.dev; we aim to respond within 72 hours.
Children
This is a developer and agent-facing service. It is not directed at children and we do not knowingly hold data belonging to anyone under 16.
Changes
If this policy changes materially we will publish the change on this page and note it in the agent manifest, which agents re-read. The effective date below always reflects the current text.
How this page is kept honest
Every claim above corresponds to code in a repository we control. The retention window is enforced by a scheduled job, not a policy document; the allowlist that narrows error reports is a literal array in the source; and the absence of a payment surface is because no such code exists. If you find a statement here that the software does not honour, that is a bug, and we would like to hear about it.
Effective 2026-11-14 · How we're paid · agent.md · deverra@devilabs.dev