app.backup / app.backups e la classe Backup sono stati rimossi. Usa app.snapshots (lo SnapshotsModule), le cui voci sono istanze di Snapshot (DatabaseSnapshot per gli snapshot dei database).
app.snapshots espone lo SnapshotsModule.
Rate limit
- I risultati di
app.snapshots.list() sono memorizzati in cache lato server per 30 minuti.
app.snapshots.create() (e l’equivalente per i database) è limitato a 1 richiesta ogni 5 secondi per utente e 1 richiesta ogni 3 minuti per risorsa (applicazione o database).
- Ogni piano ha anche una quota giornaliera di snapshot. Una volta esaurita, la creazione fallisce con un
429 e code: "DAILY_SNAPSHOTS_LIMIT_REACHED" — distinto dal generico errore di rate limit breve KEEP_CALM.
Elencare gli snapshot
app.snapshots.list() restituisce un array di istanze Snapshot.
Ogni snapshot può essere scaricato direttamente:
Creare un nuovo snapshot
app.snapshots.create() avvia un nuovo snapshot e restituisce l’URL firmato e la key.
Download in un solo passaggio
app.snapshots.download() crea uno snapshot e lo scarica come Buffer.
Ripristinare da uno snapshot
app.snapshots.restore({ snapshotId, versionId }) riporta l’applicazione a una versione precedente dello snapshot.
Elencare gli snapshot a livello di account
api.user.snapshots(scope?) restituisce ogni snapshot di tua proprietà su tutte le tue applicazioni o database. scope è predefinito su "applications".
api.user.snapshots() richiede un piano a pagamento attivo. Gli account senza un piano a pagamento ricevono un 402 con code: "UPGRADE_REQUIRED".