Content backups for Free, Starter and Small plans

I'm trying to understand how content backups work for Free, Starter and Small plans with Prismic.

Custom Types and Slice schema is saved within our GIT repo so thats fine, it's more on the content side thats in Prismic i'm interested in. I've read your terms here and pricing options, but it isn't very clear. Higher tier plans at $150+ per month have the import/export option to allow manual backups via zip which is great and really should be available to all paid plans in my opinion to make Prismic as a product more accessible to a wider commercial pool of customers.

We are currently building a productised offering which included Prismc as our CMS provider for all clients, but after realising that backups of customer content isn't very straight forward / potentially non existent it's causing us to rethink our plans. We cannot in good faith offer a service to our clients where theres a potential that all their web content could be lost and not re-uploaded – unless i'm misunderstanding how things work for the lower tier plans..?

Please can you confirm in simple terms how content backups work for Free, Starter and Small plans? Really i'm not interested in situations where a client has deleted content on a page and would like to use a backup to retrieved it. What I need to know is if Prismic went down or something happened to the data saved on your severs, will the data for Free, Starter and Small plans be restored? Or is this only for higher tier plans and lower tier plans are left to fend for themselves :sweat_smile:

1 Like

Hey @luke1,

The benefit of a hosted CMS is stability and security. We're not going anywhere :laughing: Nonetheless, we understand that some clients want the added security of automated backups, which is why we offer it as a premium feature.

We have restoration processes for the whole platform as per our Disaster Recovery and Business Continuity plans. However, we only contractually guarantee backups and recovery for Platinum and Enterprise customers. In the unlikely event of a major disruption resulting in a data loss, we are able to recover data from snapshots in priority for Enterprise clients (Recovery Point Objective of 1 day) and Platinum (Recovery Point Objective 7 days).

That being said, backups are actually quite straightforward on free plans. All of your data (except for some metadata, like version history and display titles) is available on the API. That means that you can simply fetch all of your data from the API and save it as JSON, and you have a backup. You can use client.dangerouslyGetAll() to fetch everything. (It's only marked as "dangerous" because it might be a large payload.)

If you wanted to re-import that content using our Import/Export tool, you would need to do some light scripting to reformat it for import. However, we're currently developing a Migration API which will accept content directly from the Document API, meaning that you could send a single POST request with your JSON backup and your site would be restored. The Migration API is already in beta and you can expect in wide rollout soon (though I can't give a timeline).

Let me know if that leaves anything unanswered for you!

Sam

Hi @samlittlefair

Do you have an update on the timeline for the migration api for the free plan?
This would be something we're interested in as well.

Thanks!

Hey @thomas3,

A demo version of the Migration API is available to all repositories now. You can find instructions for how to use it in the Migrations tab of your repository.

Sam

Hi sorry to jump in on this thread, but what would be the procedure if say an ex-employee with login details decided to delete lots of pages or documents/ images. Would there be any way for starter plan clients to restore that content?

Why is there no documentation on how to backup manually, if this is possible?

Hi @thenurseryrathbone. Hopefully, no ex-employee of yours does anything like this at any point. To guard against something like this, you can change the login credentials at any point. You could also have each employee create their own account rather than sharing a single account (if that's the current case for you). Then, you can remove them from the repo when they are no longer with your company. And on the Medium plan and above, you'll have user roles. A user with a Writer role would be unable to delete your content.

As for manual backups, you can query all your documents from your API and store them as JSON files. Then in the case that anything happens, you could use the Migration API to restore your content.