Along with the API Backups as the MainWP Dashboard Core feature, the MainWP plugin integrates with a couple of the most popular backup solutions and allows you to choose your favorite backup system.
API Backups
API Backups enables you to make backups directly on your hosting provider, a Cloud Manager, or through a VPS.
The feature currently supports
cPanel (Native and WP Toolkit) backups
Plesk (WP Toolkit) backups
Kinsta
Cloudways
GridPane (Must be the GridPane Owners Account & and have a Developer Plan or above)
Vultr
Akamai (Linode)
DigitalOcean.
How to connect the API Backups to a Cloud Manager or a VPS
The links and detailed steps for each Cloud Manager and VPS provider are directly in the API Backups itself.
However, the steps required for all providers are very similar and require you to grab the API key from their website, and simply enter it in the settings.
Assign VPS provider to Child Sites
This step is necessary for all providers except for Cloudways and GridPane.
Go to the Child Site Overview > Edit page
Locate the Backup API Provider Settings section of the Edit page
Select a VPS provider from the Dropdown and enter the Instance ID
4. Click the Save Settings button at the bottom of the page
How to connect and configure API Backups for individual child sites
Go to the Child Site Overview > Edit page
Locate the Backup API Provider Settings section of the Edit page
For all providers except for Cloudways and Gridpane, you will be able enter hosting information for that specific site.
Allowing you to configure multiple accounts of the same hosting provider for your child sites.
Note for cPanel Backups
New cPanel installations have Backups disabled by default, so we’d recommend contacting your hosting support and have them enable the Backups.
If you are comfortable enabling them yourself and also have access to WHM, please follow these instructions:
Force a Backup ( Terminal Command )
https://support.cpanel.net/hc/en-us/articles/360050631974-How-can-I-change-the-backup-time this cronjob will of WHM >> Backup Configuration.Backup Meta Data Script ( Terminal command )
https://docs.cpanel.net/whm/scripts/the-backups_create_metadata-script/
cPanel Automatic Backups run on a CRON & may need to be manually run via $Terminal the first time if there are no current Automatic Backups available.
How do you know if you need to run the commands?
The system disables cPanel’s File and Directory Restoration interface (cPanel » Home » Files » File and Directory Restoration) and WHM’s File and Directory Restoration interface (WHM » Home » Backups » File and Directory Restoration). The interfaces display a RED NOTIFICATION that explains why the feature is unavailable on these pages.
Technical Resources Meta Data Script is talked about in more detail here.
Important Notes
Due to the way cPanel restores files, for cPanel Accounts with more than one WordPress site installed, it’s recommended that all sites be installed in their own folder.
Site Paths ARE CASE SENSITIVE
Example Multi-site environment:
URL: https://{your-site-url.com}/Child-1/
Site Path..: /public_html/Child-1/
URL: https://child-2.{your-site-url.com}/
Site Path..: /public_html/child-2/
Example Single-site environment:
URL: https://{your-site-url.com}
Site Path..: /public_html/
How to connect Kinsta
Finding Kinsta Credentials
Account Email
The email address used to log into Kinsta ( usually the main account )
Kinsta API Key
Click Company Settings
Click API Keys
Click Create API Key
Environment ID / Company ID
Click The Site you are managing
Click Info
The Environment ID & Company ID are located within the Address Bar.
Global Kinsta Credentials
Once you have these credentials you will need to navigate to Sites > Backups > API Backups > Manage API Settings > Kinsta (tab) once there you will need to Enable the API feature by turning ON Enable Kinsta API & entering your API Key in the provided field then clicking Save.
Individual Kinsta Credentials
Lastly, you will need to navigate to each Child Site Edit page that is using this backup service & scroll to the bottom of the page. Once there you will want to use the drop down to select Kinsta from the list. You will then need to enter in your Account Email, Company ID & Environment ID that you recorded in the previous steps & click Save. If this Child Site uses a different Kinsta Account you will OPT-in by turning ON the Overwrite Global Settings option & entering in its API Key along with the correct Data above.
Using Kinsta API Backups
Once this has been done you may navigate to the API Backups tab & you should see the currently available backups for the selected account. If you don’t you either need to click “Refresh Available Backups” button and or the “Backup Now” button & then the “Refresh Available Backups” button.
How to create Backups
For individual sites
Go to your MainWP Dashboard
Navigate to MainWP > Sites > API Backups page
Locate the desired site in the table
Click the Backup action from the ellipsis menu
NOTE: The process can take some time to complete, depending on the size of the site and the speed of the host.
For multiple sites
Go to your MainWP Dashboard
Navigate to MainWP > Sites > API Backups page
Locate the desired sites in the table and mark the checkbox next to them
Click the Backup Selected Sites button
NOTE: The process can take some time to complete, depending on the size of the site and the speed of the host.
How to restore backups
Go to your MainWP Dashboard
Navigate to MainWP > Sites > API Backups page
Locate the desired site in the table
Click the Manage Backups action from the ellipsis menu
Locate the desired backup in the table
Click the Restore Backup action from the ellipsis menu
NOTE: The process can take some time to complete, depending on the size of the site and the speed of the host.
Location of Backups
The MainWP API Backups feature does not control backup storage settings. The API Backups uses API requests provided by supported companies to trigger the backup process. Once the process is triggered, your hosting handles the rest. That includes backup storage.
Backups created from our feature will be stored in the location that your host/cloud manager has set and uses for storing backups.
MainWP API Backups feature does not use any custom location!
Note for cPanel DB Backups – Manual cPanel DB Backups are created via the MySQLdump command on the Child Site Server & then placed inside the /wp-content/uploads/mainwp/api_db_backups/ folder.
For more information about the location of backups, please visit the respective help documentation:
DigitalOcean: https://docs.digitalocean.com/products/images/backups/
Akamai (Linode): https://www.linode.com/docs/products/storage/backups/
cPanel Location: https://docs.cpanel.net/knowledge-base/backup/system-backups/
Important Notes
MainWP is actively moving away from further development of the native backups feature, as noted in this blog post, so that the best long-term solution would be one of the Backup Extensions.