Backups as a Gift
BaaG es una micro-utilidad de respaldos en la nube, gratis, sin tarjeta y con caducidad automática.
Pensada para guardar .sql, .dump, .gz y .tar.gz desde tus
scripts o cronjobs, sin levantar un servidor de backups propio.
Casi todos los proyectos pequeños (un blog, un bot, una app de universidad) generan bases de datos
que de verdad necesitan respaldos periódicos, pero pagar un servicio o mantener un servidor
S3 solo para unos dump.sql semanales es excesivo.
BaaG te da 2 GB por usuario con una API key que puedes guardar
en tu crontab y olvidarte. El sistema se encarga de:
POST (multipart).No es un Dropbox ni un Google Drive: es un buzón temporal para backups críticos.
Cuota fija por usuario. Sin planes, sin upgrades, sin truco.
Genera, revoca y rota tus tokens cuando quieras desde el dashboard.
Cada archivo expira automáticamente. Tú decides qué respaldar y cuándo.
Si te quedas sin cuota, BaaG borra lo más viejo para hacer espacio al nuevo.
Endpoints simples con curl, wget, Python, Node, Bash, lo que sea.
Visualiza tu cuota usada, lista tus backups y descárgalos con un click.
1. Crea una cuenta gratuita desde /baag/register.
2. Inicia sesión y genera una API Key en el botón ✦ Generar Nueva Key.
3. Usa esa key para subir tu primer backup:
curl -X POST /baag/api/upload \ -H "X-API-Key: baag_TU_API_KEY_AQUI" \ -F "file=@/ruta/a/tu_backup.sql"
curl -X POST ... -H "X-API-Key: $BAAG_KEY" -F "[email protected]"
Sube un nuevo backup. Rate limit: 1 request cada 15 minutos (para evitar abuso).
Headers:
X-API-Key: <tu_key> oAuthorization: Bearer <tu_key>Body (multipart/form-data):
file: el archivo a subir.Extensiones permitidas: .sql, .dump, .backup, .gz, .tar.gz
Respuesta 200 OK:
{
"success": true,
"backup_id": 42,
"filename": "mi_db.sql",
"size": 1048576,
"expires_at": "2026-06-29T12:34:56"
}
Errores comunes:
| Código | Causa |
|---|---|
400 | Sin archivo / extensión no permitida / cuota agotada. |
401 | No se envió API key. |
403 | API key inválida o revocada. |
429 | Rate limit: máximo 1 upload cada 15 min. |
Lista todos tus backups, con tamaño total y porcentaje de cuota usado.
curl /baag/api/list \ -H "X-API-Key: baag_TU_API_KEY_AQUI"
Respuesta 200 OK:
{
"success": true,
"total_backups": 5,
"total_size_bytes": 524288000,
"quota_max_bytes": 2147483648,
"quota_used_percent": 24.41,
"backups": [
{
"id": 42,
"filename": "mi_db.sql",
"size_bytes": 1048576,
"uploaded_at": "2026-06-01T10:00:00",
"expires_at": "2026-06-29T10:00:00"
}
]
}
Cada usuario tiene 2 GB de cuota dura. Cuando intentas subir un archivo que no entra, BaaG no falla de inmediato: hace limpieza automática.
Algoritmo de limpieza:
file_size + 500 KB (buffer de seguridad).uploaded_at ASC).
Cada archivo subido se guarda con expires_at = uploaded_at + 28 días.
El sistema elimina automáticamente (físico + base de datos) cualquier archivo vencido:
¿Por qué 28 días? Es el sweet-spot típico entre un ciclo de backup mensual y un periodo razonable de retención para recuperación ante desastres.
werkzeug.security.generate_password_hash (hash + salt, nunca en texto plano).baag_. Puedes revocarlas en cualquier momento.SECRET_KEY. Si marcas Recordarme, se emite un token persistente guardado como cookie HttpOnly con expiración de 30 días.webroot en una ruta absoluta (/home/sdd/sedda-utils/archivos_subidos/baag/<usuario>/).Sección corta y honesta, sin letra chiquita:
gpg -c, openssl enc, age, lo que sea)..sql. Literalmente tengo mejores cosas que hacer, no tengo tiempo, ni quiero hacerlo. El sistema es automático de punta a punta.¿Puedo tener más de 2 GB?
No. La cuota es fija y compartida entre todos tus backups.
¿Qué pasa si revoco una API key?
Deja de funcionar de inmediato. Los archivos ya subidos con esa key siguen ahí (son tuyos);
solo no podrás subir más hasta generar una nueva.
¿Puedo restaurar un backup expirado?
No. Una vez borrado por el sistema (a los 28 días), no hay backup del backup. Por eso la
fuente de verdad debe ser tu servidor, no BaaG.
¿Por qué el upload falla con 429?
Hay un rate limit de 1 subida cada 15 minutos. Espera el tiempo indicado y reintenta.
¿Cómo elimino un archivo manualmente?
Desde el dashboard, en la columna Admin de la tabla de backups, pulsa Borrar.
¿BaaG cifra mis archivos en reposo?
No. Se guardan tal cual en disco. Si el archivo de origen es sensible, cífralo antes de subirlo
(gpg -c, openssl enc, etc.).
¿Alguien lee o revisa mis archivos?
No. El sistema es 100% automático, no hay un operador humano mirando lo que subes. Literalmente
no me da la vida. Mira la sección 🔒 Privacidad
para más detalle honesto.
¿Puedo confiar mis secretos comerciales, datos médicos o lo que sea?
No. BaaG no es un servicio con SLA, sin compliance, sin cifrado en reposo y sin soporte formal.
Para ese tipo de cosas, paga un servicio serio (Backblaze B2, AWS S3 con cifrado, etc.).
¿Encontraste un bug o tienes una idea? Reportalo manda mensaje a dariomsi.com .