Short.Link · aishort.link · Last updated: 2026-07-20
aishort.link. All data processing is handled via Cloudflare, Inc.'s global edge network.
Privacy inquiries: contact@aishort.link.A. Visitor Data (every short link redirect)
Source: logAccessAsync() in redirectUtils.js writes INSERT INTO access_logs.
| Field | Description | Purpose |
|---|---|---|
ip | Visitor IP (IPv6-mapped ::ffff: prefix removed) | Fraud prevention, rate limiting, geo analytics |
country | Country code from Cloudflare cf-ipcountry header | Geo-statistics, GEO targeting |
device | Device type: desktop/mobile/tablet | Device analytics |
browser | Browser name from User-Agent header | Browser analytics |
accessed_at | ISO 8601 timestamp | Time-series analytics |
target_url | Destination URL the short link resolved to | Per-target click counting |
link_code | Unique 6-char code | Link-level analytics for owner |
is_bot | Bot detection flag (1=yes, 0=no) | Accurate traffic filtering |
B. Account Data (registered users)
Source: registration endpoint in routes/auth.js (INSERT INTO users).
| Field | Description | Storage |
|---|---|---|
username | Username | Plain text |
email | Email (optional, for password recovery) | Plain text |
password | Password | bcrypt salted hash, never stored as plaintext |
api_key | API key | Plain text (shown once on creation) |
plan | Plan tier (free/pro) | Plain text |
C. Link Data (user-created)
| Field | Description |
|---|---|
url / rules | Destination URL list |
fb_pixel / tiktok_pixel | Third-party tracking pixel IDs |
password | Link password (bcrypt hashed) |
geo_countries | Geo-targeting whitelist |
ai_risk_level / ai_risk_reason | AI risk assessment result |
D. AI Detection Records
Source: aiDetector.js writes to ai_detection_alerts table. Daily Cron(0 3 * * *) scans.
| Field | Description |
|---|---|
detected_at | Detection timestamp |
risk_level | Risk level: low/medium/high |
source_provider | Source: Safe Browsing / content_scan / ad_compliance |
E. Health Check Records
Source: checkTargetHealthAsync() writes to target_health table. Cron every 30 min.
| Field | Description |
|---|---|
status_code | HTTP status code of the target URL |
response_time_ms | Response time in ms |
is_healthy | Health flag (200-399 = healthy) |
error_msg | Error message if request failed |
| Data Type | Retention | Mechanism |
|---|---|---|
| Visitor access logs | 12 months | Cron DELETE WHERE accessed_at < datetime(now, -12 months) |
| Health check records | 12 months | Same Cron job |
| Account data | Account lifetime, deleted on closure | Manual or via support |
| Link data | Until deleted by user or account closure | Users can delete links anytime |
| AI detection alerts | Linked to link lifetime | Cascaded delete with link |