Create a backup
package main
import ( "fmt" "strings" "net/http" "io")
func main() {
url := "https://api.wpengineapi.com/v1/installs/294deacc-d8b8-4005-82c4-0727ba8ddde0/backups"
payload := strings.NewReader("{ \"description\": \"Taking a backup of torquemag before I start developing new features for it\", \"notification_emails\": [ \"myself@torquemag.com\", \"other_person_interested_in_backup@torquemag.com\" ] }")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <credentials>") req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close() body, _ := io.ReadAll(res.Body)
fmt.Println(res) fmt.Println(string(body))
}const url = 'https://api.wpengineapi.com/v1/installs/294deacc-d8b8-4005-82c4-0727ba8ddde0/backups';const options = { method: 'POST', headers: {Authorization: 'Basic <credentials>', 'Content-Type': 'application/json'}, body: '{"description":"Taking a backup of torquemag before I start developing new features for it","notification_emails":["myself@torquemag.com","other_person_interested_in_backup@torquemag.com"]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.wpengineapi.com/v1/installs/294deacc-d8b8-4005-82c4-0727ba8ddde0/backups \ --header 'Authorization: Basic <credentials>' \ --header 'Content-Type: application/json' \ --data '{ "description": "Taking a backup of torquemag before I start developing new features for it", "notification_emails": [ "myself@torquemag.com", "other_person_interested_in_backup@torquemag.com" ] }'Requests a new backup of the install. Returns the Backup object, and you
can check its progress by retrieving it.
Limitations & Warnings
- Asynchronous: the backup isn’t complete when the response is returned.
The addresses in
notification_emailsreceive an email once it has completed.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”ID of install
Example
294deacc-d8b8-4005-82c4-0727ba8ddde0Request Bodyrequired
Section titled “Request Bodyrequired”Properties
- description - required - A description of this backup.
- notification_emails - required - The email address(es) that will receive an email once the backup has completed.
object
A description of this backup.
The email address(es) that will receive an email once the backup has completed.
Example
{ "description": "Taking a backup of torquemag before I start developing new features for it", "notification_emails": [ "myself@torquemag.com", "other_person_interested_in_backup@torquemag.com" ]}Responses
Section titled “Responses”Returns the created Backup object.
object
The unique identifier of the backup
State of the backup.
Human-readable description provided when the backup was requested
Timestamp when the backup was created
Timestamp when the backup completed. null while the backup is still in progress.
WordPress version of the install at the time the backup was taken
Example
{ "id": "e41fa98f-ea80-4654-b229-a9b765d0863a", "status": "requested", "description": "Pre-deploy snapshot", "create_time": "2024-01-15T10:00:00Z", "complete_time": "2024-01-15T10:30:00Z", "wordpress_version": "6.4.2"}Bad Request
object
A message regarding the error that occurred on the server
(Optional) A URL where documentation regarding this specific error can be found
An array of error objects describing specific errors that arose when servicing the request
object
The name of the resource that was being processed when the error occurred
(Optional) The specific field associated with the error
(Optional) A type associated with the error. invalid_value, access_error, value_unavailable
(Optional) A machine code relating to the error that occurred with the field and resource
(Optional) A human-readable message relating to the error that occurred with the field and resource
Example
{ "message": "Invalid request.", "errors": [ { "resource": "Resource", "field": "field_name", "type": "invalid_value", "code": "invalid", "message": "The value is invalid." } ]}Authentication Error
object
A message regarding the error that occurred on the server
(Optional) A URL where documentation regarding this specific error can be found
Example
{ "message": "Bad Credentials"}Not authorized
object
A message regarding the error that occurred on the server
(Optional) A URL where documentation regarding this specific error can be found
Example
{ "message": "You don't have permission to perform that action"}Not found
object
A message regarding the error that occurred on the server
(Optional) A URL where documentation regarding this specific error can be found
Example
{ "message": "Not Found"}Too many requests
Internal Server Error
object
A message regarding the error that occurred on the server
Example
{ "message": "An unexpected error occurred, please try again in a few minutes"}An invalid response was received from an upstream server
Service unavailable