Privacy Policy¶
Last updated: November 3, 2026
TELECOM TOWER POWER ("we"), the trade name of DANIEL AZEVEDO NOVAIS LTDA (CNPJ 69.658.348/0001-77), processes personal data in compliance with Brazilian LGPD (Law 13.709/2018) and the Internet Civil Framework.
1. Controller¶
- Controller: DANIEL AZEVEDO NOVAIS LTDA, CNPJ 69.658.348/0001-77, in Brasília – DF, under the trade name TELECOM TOWER POWER. The company was registered on October 16, 2026 and has been the controller since then, in place of the founder, Daniel Azevedo Novais, who provided the service in a personal capacity until that date.
- Headquarters: Brasília – DF, Brazil
- Data Protection Officer (DPO): dpo@telecomtowerpower.com.br
2. What we collect¶
| Category | Data | Purpose | LGPD legal basis (art. 7) |
|---|---|---|---|
| Account | Email, name (optional) | API key provisioning, billing | Contract performance (V) |
| Payment | Tokenized by Stripe (no PAN stored) | Charging | Contract performance (V) |
| API usage | IP, User-Agent, endpoint, timestamp, status | Anti-fraud, capacity, security | Legitimate interest (IX) |
| Access records (Marco Civil) | Date and time (UTC), source IP, hash of the API key, route, method and response code of each request | 6-month retention required by the Marco Civil (Art. 15) | Compliance with a legal obligation (II) |
| Audit logs | Key issuance, SSO login, admin actions | Security and incident response | Legal obligation (II) |
| Communications | Support tickets, emails | Customer service | Contract performance (V) |
We do not collect sensitive data (race, health, biometrics, political opinion).
3. How we use data¶
- Service provisioning and billing.
- Abuse detection (rate-limit, bot signup, card fraud).
- Operational notifications (incidents, trial expiry).
- Aggregated, non-identifying analytics for roadmap.
We do not sell your data. We do not share with third parties for marketing.
4. Subprocessors¶
We share strictly required data with:
| Subprocessor | Purpose | Country | Safeguard |
|---|---|---|---|
| Railway (primary hosting) | API, workers, database, Redis, MinIO, observability, self-hosted LLM | USA (us-west2) — no Brazil region offered | Railway DPA; SOC 2 Type II; encryption in transit/at rest; LGPD Art. 33 |
| Amazon Web Services (AWS) | Account closed on October 11, 2026: only old backup copies (S3) remain, which AWS deletes by January 10, 2027 | Brazil (sa-east-1) | AWS DPA, encryption at rest/transit |
| Backblaze (B2 Cloud Storage) | Backup copy outside Railway: database dumps and the point-in-time recovery repository | USA (us-east-005) | Backblaze DPA (part of the provider's Terms), private buckets, LGPD Art. 33 |
| Stripe Payments Inc. | Card processing | USA | Stripe DPA, PCI-DSS L1 |
| Anthropic / Amazon Bedrock | Not a subprocessor: the integration has been off since 2026-06-24 and the AWS accounts are closed (the last one on October 11, 2026); inference is served by self-hosted Ollama on Railway infrastructure, no customer data sent to a third-party LLM. Re-enabling would require a new AWS account and 30 days' prior notice (DPA §6.2) | — | — |
| Cloudflare, Inc. | Bot check (Turnstile) on the signup and contact forms: the visitor's IP address and browser signals (such as the TLS fingerprint and the User-Agent). Also CDN and DNS | Global | Cloudflare DPA; Cloudflare Privacy Policy and Turnstile Privacy Addendum |
| Zoho Corporation (Zoho Mail) | Corporate email for @telecomtowerpower.com.br (sales@, support@, dpo@, security@ and catch-all) |
USA | Zoho DPA; ISO 27001; SOC 2 Type II |
| GitHub | CI/CD, build, registry | USA | GitHub DPA; SOC 2 |
Full public list: Subprocessors.
5. International transfer¶
Primary processing occurs in the United States (Railway us-west2) since the 2026-06 cutover — Railway offers no Brazil/South-America region. This is a permanent international transfer under LGPD art. 33: standard contractual clauses with each subprocessor and/or ANPD-recognised adequacy. Controllers with a strict Brazil-residency requirement must use the on-prem/self-hosted mode (see DPA-LGPD §8, available on request from dpo@telecomtowerpower.com.br).
6. Retention¶
Summary. The full retention matrix by category, with deletion mechanism and legal basis, is in DPA-LGPD §10.1, available on request from dpo@telecomtowerpower.com.br — in case of conflict, the DPA prevails.
| Data | Retention | Basis |
|---|---|---|
| API access records (date and time in UTC, source IP, hash of the API key, route, method and response code of each request) | 6 months (Marco Civil, Art. 15), since October 19, 2026; a daily purge deletes what is past the period | Legal obligation (Marco Civil, Art. 15; LGPD Art. 7 II) and legitimate interest: security and anti-fraud (LGPD Art. 7 IX) |
audit_log (action audit trail) |
365 days for security actions (API key issue, revocation and rotation, login and SSO, admin actions); 90 days for all others | LGPD Art. 16 II |
| Platform operational logs (Railway: build, deploy and runtime) | 30 days | Technical necessity |
| Account data | Term + 5 years | CDC Art. 27 |
| Customer-submitted personal data | Term; deleted within 90 days after termination | LGPD Art. 16 I |
| Repeater-planner cache (per-hop viability, keyed by rounded coordinates) | 30 days | Technical necessity |
| Database backups (Postgres dumps) | 7 days (hourly) and 14 days (daily) in Railway storage; 30 days in the mirror outside Railway (Backblaze B2) | LGPD Art. 46 |
| Billing (Stripe) | 5 years | CTN Art. 173 I |
| Session tokens | 7 d (session) / 30 d (refresh) | LGPD Art. 46 |
| ANATEL/IBGE/SRTM/OpenCellID data | Indefinite (public) | Law 9.472/1997 Art. 19 |
Brazilian Internet Civil Framework (Marco Civil). An application provider incorporated as a legal entity must keep application access records for 6 months (Law 12,965/2014, Art. 15, caput). The company was registered on October 16, 2026, and the 6-month retention has been in operation since October 19, 2026: every API request writes a record with the date and time (UTC), the source IP address, a hash of the API key used (never the key itself), the route (the path template, without query parameters), the method and the response code. The request body and the User-Agent are not kept. The source port does not reach the application (the platform's edge passes on only the IP), so it is not recorded. Accesses from October 16, 2026 until the retention started exist only in the platform's HTTP logs, kept for 30 days.
The records are kept confidential in the production database, in a
controlled environment: no API route reads them, only the operator queries
them, with their own credential, and every query is logged in audit_log. A
daily purge deletes records older than 6 months, and database backup copies
that still contain them expire within 33 days after that. An erasure request
(LGPD Art. 18 VI) does not delete these records before the 6 months, because
keeping them is a legal obligation (LGPD Art. 16 I). The records are only
handed over under a court order (Art. 15, §§1 and 3; Art. 22). A
precautionary request from the police, an administrative authority or the
Public Prosecutor (Art. 15, §2) may ask for them to be kept longer; in that
case we keep them for the period requested, and handing them over still
requires a court order.
For DSAR erasure requests (Art. 18 VI): immediate anonymization + physical removal 30 days later. Backup copies made before the request expire within 33 days: 30 in the mirror outside Railway, plus 1 day between hiding and deleting, and the provider applies each of those rules at the daily run after the period ends, which adds up to 2 days. The old copies left in the AWS account (see Subprocessors) are gone by January 10, 2027: the account was closed on October 11, 2026, and AWS deletes its content at the end of the following 90 days.
Measurements and the global model¶
If you submit field measurements through the API, they are used to serve
your own operation. For a measurement to also train the global
coverage model — which serves every customer on the platform, your
competitors included — you must say so explicitly, per row, via
consent_for_training.
Without that declaration the answer is no. The measurement is stored,
it keeps serving you, and it stays out of global training. The response to
your own request reports how many rows were admitted and how many refused
(granted_for_training / refused_for_training), and the refusal is
recorded in your audit log. You can withdraw at any time through support.
7. Your rights (LGPD art. 18)¶
You may, free of charge, request:
- Confirmation of processing;
- Access to data;
- Correction of incomplete or outdated data;
- Anonymization, blocking, or deletion of unnecessary data;
- Portability;
- Deletion of consent-based data;
- Disclosure of sharing;
- Withdrawal of consent.
How to exercise them¶
If you hold an active API key, do it yourself — no intermediary, no 15-day wait. The authenticated key is the proof of identity, and it only ever acts on your own account:
| Right | How |
|---|---|
| Access and portability (items II and V) | GET /tenant/me/data/export — returns, as JSON, everything we hold about you: account record, audit history, submitted jobs, field observations you contributed, and billing identifiers |
| Deletion and anonymization (items IV and VI) | POST /tenant/me/data/forget with body {"confirmation":"DELETE MY DATA"} |
export TTP_API_KEY="your-key-here"
curl -sS -H "X-Api-Key: $TTP_API_KEY" \
https://api.telecomtowerpower.com.br/tenant/me/data/export > my-data.json
Deletion is immediate and cannot be undone through the API. Your personal data is replaced with pseudonyms at once and the key stops working at once. Physical row removal happens 30 days later, and during that window you can still reach us if the deletion was a mistake. Backups made before the request are gone within 33 days (retention is in §6).
Audit records are retained against your pseudonymised identifier: LGPD Art. 16 II requires us to keep certain records to meet a legal obligation, but they no longer point back to you.
Other channels¶
If you no longer have access to the key, or prefer to write to us, email dpo@telecomtowerpower.com.br. Response within 15 days. We will ask you to prove your identity before acting — the same protection that stops someone else from requesting the deletion of your data.
You may also complain directly to the Brazilian DPA (ANPD, www.gov.br/anpd).
8. Security¶
- TLS 1.2+ enforced on all connections.
- At-rest encryption by the provider on the database volumes (Railway) and SSE-S3 (AES-256) on the legacy AWS backups.
- API keys are hashed (SHA-256) — never stored in cleartext.
- Per-key and per-IP rate limiting; CAPTCHA on free signup.
- Immutable audit logs with IP + UA on key issuance.
- Database dumps travel over HTTPS to Railway storage and to the mirror outside Railway; we do not encrypt them ourselves before upload. In the mirror (Backblaze B2), files uploaded since October 11, 2026 are encrypted at rest by the provider (SSE-B2, AES-256); files uploaded earlier are gone by November 13, 2026.
- We hold no SOC 2 certification. Security questionnaire on request at security@telecomtowerpower.com.br.
9. Cookies¶
The marketing site and portal use only strictly necessary cookies (session, CSRF). No advertising cookies.
10. Children¶
The service is for businesses and professionals. We do not knowingly collect data from anyone under 18.
11. Changes¶
Material changes will be announced by email 30 days in advance. Previous versions are available on request from dpo@telecomtowerpower.com.br.
12. Contact¶
- DPO: dpo@telecomtowerpower.com.br
- Support: support@telecomtowerpower.com.br
- Postal address: to be published (Brasília – DF)