API Documentation

A powerful platform to protect your customers' data

The Backupify Developer Platform makes it easy to give your customers the data protection they need. You'll be able to integrate Backupify's leading SaaS backup solution into your software using our RESTful API. Simply provide a description of your APIs, and our platform does the rest.

  • Schedule automatic backups for your users' data at a frequency you set
  • Encrypt their data and store it securely
  • Provide users with access to their backups for easy recovery

Explore our live documentation to learn more
 

Tokens

API Endpoint - https://api.backupify.com/oauth/token All actions and visibility is limited in scope to items that are descendents of the authenticated vendor and the backup_definitions owned thereby. At this time, all Access Tokens are scoped with full write capabilities.

Allowed Requests: POST

Token Attributes

Name Type Default Value Example Writable Description
access_token String b9cwdPXIjknc7o mZQ4GdwPlH+ BNj+ZehSmQB Ywby5yAKFIvqp p+ori/Ro+8cejG cKbfleEDhGnQ 7Mybxn0Y1hA== No The Access Token string for the requested grant type
token_type String bearer No Bearer Token
expires_in Integer 900 No Expiration time in seconds

Token Parameters

Parameter Value Description Parameter Type Data Type
client_id API Client Id body string
client_secret API Client Secret body string
grant_type client_credentials String identifying the grant type to be used for token retrieval. MUST be 'client_credentials' to retrieve Access Token using client_id and client_secret. body string
scope write A space separated list of operational scopes available to the returned token. body string

Error Status Codes

HTTP Status Code Reason
200 Successful Access Token retrieval
400 Invalid Request - Likely related to the omission one or more parameters. More specific information provided by the returned error message.
400 Invalid Client - The client identifier provided is invalid, the client failed to authenticate, the client did not include its credentials, provided multiple client credentials, or used unsupported credentials type
400 Invalid Scope - The requested scope is invalid, unknown, malformed, or exceeds the previously granted scope.

Sample Code

      cURL: 
      curl https://api.backupify.com/oauth/token -d "grant_type=client_credentials&client_id={client_id}&client_secret={client_secret}&scope={scope}"

Backup Definition

API Endpoint - https://api.backupify.com/v1/backup_definitions
Abstract definition of a data model that provides a mapping of endpoints that should be backed up. Only backup_definitions you have permission to view will be returned
Allowed Requests: GET

Backup Definition Attributes

Name Type Default Value Example Writable Description
id integer auto-incremented No
name string Pipeline Deals Backup No
description string Backup of Pipeline Deals customer data No
vendor_id integer 5 No

Backup Definition Parameters

Parameter Value Description Parameter Type Data Type
access-token Access Token granted from client credentials authorizing vendor to perform operations header string
backup_definition_id ID of the backup_definition to retrieve path integer

Error Status Codes

HTTP Status Code Reason
200 Success - The backup_definition was successfully retrieved. Response body is the backup_definition.
401 Unauthorized - The Access Token provided is either invalid or does not have rights to perform the requested action.
404 Not found - The requested backup_definition could not be found.

Sample Code

      cURL: 
      curl https://api.backupify.com/v1/backup_definitions/1 -H 'Accept:application/json' -H 'Authorization: Bearer {access_token}'

Customer

API Endpoint - https://api.backupify.com/v1/customers
Requires Access Token granted from client credentials.
Allowed Requests: GET, POST, PUT

Customer Attributes

Name Type Default Value Example Writable Description
id integer auto-incremented 5 No The ID of the customer. Should be saved by the vendor to allow fast access to backup information to users of their system
name string user@pipelinedeals.com Yes Vendor provided ID uniquely identifying customer. This attribute is required and is provided to allow a vendor to map a customer instance to a user in their system.

Customer Parameters for GET

Parameter Value Description Parameter Type Data Type
access-token Access Token granted from client credentials authorizing vendor to perform operations header string
customer_id ID of the customer path string

Error Status Codes for GET

HTTP Status Code Reason
200 Success - Customer was successfully updated. Response body is the updated object.
400 Bad request - Likely the result of a validation error. Reference the response message for more information on the particular failure.
401 Unauthorized - The Access Token provided is either invalid or does not have rights to perform the requested action.
404 Not found - The requested customer could not be found.

Sample Code

      cURL: 
      curl https://api.backupify.com/v1/customers -H 'Accept:application/json' -H 'Authorization: Bearer {access_token}' -d 'customer[name]=test@example.com'

Backup Instance

API Endpoint - https://api.backupify.com/v1/backup_instances
All actions and visibility is limited in scope to items that are descendents of the authenticated vendor and the backup_definitions owned thereby. At this time, all Access Tokens are scoped with full write capabilities.
Creating a backup instance is the first step in instantiating the backup process with Backupify. With this process

  1. The important parameter to be passed is the customer api key
  2. Once this is done the backup for this Customer would start
  3. You can also check on the backup status
  4. Upon successful completion the data can be exported and browsed
Allowed Requests: GET, POST

Backup Instance Attributes

Name Type Default Value Example Writable Description
id integer auto-incremented 2 No The ID of the backup instance. Each backup instance is uniquely connected to the customer.
backup_definition_id integer 3 Yes
customer_id integer 4 Yes
last_successful_backup string 2013-10-03T11:02:01.000Z No Date and time of last successful backup in UTC

Customer Parameters for GET

Parameter Value Description Parameter Type Data Type
access-token Access Token granted from client credentials authorizing vendor to perform operations header string
backup_instance_id ID of the backup instance path integer

Error Status Codes for GET

HTTP Status Code Reason
200 Success - The backup_definition was successfully retrieved. Response body is the backup_definition.
401 Unauthorized - The Access Token provided is either invalid or does not have rights to perform the requested action.
404 Not found - The requested backup_definition could not be found.

Sample Code

      cURL: 
      curl https://api.backupify.com/v1/backup_instances -H 'Accept:application/json' -H 'Authorization: Bearer {access_token}' -d 'backup_instance[backup_definition_id]=1&backup_instance[customer_id]=1'

Vendor

API Endpoint - https://api.backupify.com/v1/vendors/me
Requires Access Token granted from client credentials.
Allowed Requests: GET

Vendor Attributes

Name Type Default Value Example Writable Description
id integer auto-incremented No The ID of the Vendor. Should be saved by the vendor to allow fast access to backup information to all users of their system.
name string pipelinedeals.com No Vendor Name
url string http://pipelinedeals.com No Vendor Website URL
description string oniqLYQ5+SrxhMRj8ISMqA== No Client ID of the vendor associated with the AccessToken in use
client_secret string t2tSk8oW+ EoRZRBIw+ CrkEv2lfTR LfyHrWsSS cLakdLcG 5TFMtTkLE 1ZbFwy+Ha 4u3MphwP 4YvL69Qm 6Br7wcA== No Client Secret of the vendor associated with the AccessToken in use

Vendor Parameters for GET

Parameter Value Description Parameter Type Data Type
access-token Access Token granted from client credentials authorizing vendor to perform operations header string

Error Status Codes

HTTP Status Code Reason
200 Success - Vendor was successfully updated. Response body is the updated object.
401 Unauthorized - The Access Token provided is either invalid or does not have rights to perform the requested action.

Sample Code

      cURL: 
      curl https://api.backupify.com/v1/vendors/me -H 'Accept:application/json' -H 'Authorization: Bearer {access_token}'

Tokens

API Endpoint - https://api.backupify.com/oauth/token All actions and visibility is limited in scope to items that are descendents of the authenticated vendor and the backup_definitions owned thereby. At this time, all Access Tokens are scoped with full write capabilities.

Allowed Requests: POST

Token Attributes

Name Type Default Value Example Writable Description
access_token String b9cwdPXIjknc7o mZQ4GdwPlH+ BNj+ZehSmQB Ywby5yAKFIvqp p+ori/Ro+8cejG cKbfleEDhGnQ 7Mybxn0Y1hA== No The Access Token string for the requested grant type
token_type String bearer No Bearer Token
expires_in Integer 900 No Expiration time in seconds

Token Parameters

Parameter Value Description Parameter Type Data Type
client_id API Client Id body string
client_secret API Client Secret body string
grant_type client_credentials String identifying the grant type to be used for token retrieval. MUST be 'client_credentials' to retrieve Access Token using client_id and client_secret. body string
scope write A space separated list of operational scopes available to the returned token. body string

Error Status Codes

HTTP Status Code Reason
200 Successful Access Token retrieval
400 Invalid Request - Likely related to the omission one or more parameters. More specific information provided by the returned error message.
400 Invalid Client - The client identifier provided is invalid, the client failed to authenticate, the client did not include its credentials, provided multiple client credentials, or used unsupported credentials type
400 Invalid Scope - The requested scope is invalid, unknown, malformed, or exceeds the previously granted scope.

Sample Code

      cURL: 
      curl https://api.backupify.com/oauth/token -d "grant_type=client_credentials&client_id={client_id}&client_secret={client_secret}&scope={scope}"

Backup Definition

API Endpoint - https://api.backupify.com/v1/backup_definitions
Abstract definition of a data model that provides a mapping of endpoints that should be backed up. Only backup_definitions you have permission to view will be returned
Allowed Requests: GET

Backup Definition Attributes

Name Type Default Value Example Writable Description
id integer auto-incremented No
name string Pipeline Deals Backup No
description string Backup of Pipeline Deals customer data No
vendor_id integer 5 No

Backup Definition Parameters

Parameter Value Description Parameter Type Data Type
access-token Access Token granted from client credentials authorizing vendor to perform operations header string
backup_definition_id ID of the backup_definition to retrieve path integer

Error Status Codes

HTTP Status Code Reason
200 Success - The backup_definition was successfully retrieved. Response body is the backup_definition.
401 Unauthorized - The Access Token provided is either invalid or does not have rights to perform the requested action.
404 Not found - The requested backup_definition could not be found.

Sample Code

      cURL: 
      curl https://api.backupify.com/v1/backup_definitions/1 -H 'Accept:application/json' -H 'Authorization: Bearer {access_token}'

Customer

API Endpoint - https://api.backupify.com/v1/customers
Requires Access Token granted from client credentials.
Allowed Requests: GET, POST, PUT

Customer Attributes

Name Type Default Value Example Writable Description
id integer auto-incremented 5 No The ID of the customer. Should be saved by the vendor to allow fast access to backup information to users of their system
name string user@pipelinedeals.com Yes Vendor provided ID uniquely identifying customer. This attribute is required and is provided to allow a vendor to map a customer instance to a user in their system.

Customer Parameters for GET

Parameter Value Description Parameter Type Data Type
access-token Access Token granted from client credentials authorizing vendor to perform operations header string
customer_id ID of the customer path string

Error Status Codes for GET

HTTP Status Code Reason
200 Success - Customer was successfully updated. Response body is the updated object.
400 Bad request - Likely the result of a validation error. Reference the response message for more information on the particular failure.
401 Unauthorized - The Access Token provided is either invalid or does not have rights to perform the requested action.
404 Not found - The requested customer could not be found.

Sample Code

      cURL: 
      curl https://api.backupify.com/v1/customers -H 'Accept:application/json' -H 'Authorization: Bearer {access_token}' -d 'customer[name]=test@example.com'

Backup Instance

API Endpoint - https://api.backupify.com/v1/backup_instances
All actions and visibility is limited in scope to items that are descendents of the authenticated vendor and the backup_definitions owned thereby. At this time, all Access Tokens are scoped with full write capabilities.
Creating a backup instance is the first step in instantiating the backup process with Backupify. With this process

  1. The important parameter to be passed is the customer api key
  2. Once this is done the backup for this Customer would start
  3. You can also check on the backup status
  4. Upon successful completion the data can be exported and browsed
Allowed Requests: GET, POST

Backup Instance Attributes

Name Type Default Value Example Writable Description
id integer auto-incremented 2 No The ID of the backup instance. Each backup instance is uniquely connected to the customer.
backup_definition_id integer 3 Yes
customer_id integer 4 Yes
last_successful_backup string 2013-10-03T11:02:01.000Z No Date and time of last successful backup in UTC

Customer Parameters for GET

Parameter Value Description Parameter Type Data Type
access-token Access Token granted from client credentials authorizing vendor to perform operations header string
backup_instance_id ID of the backup instance path integer

Error Status Codes for GET

HTTP Status Code Reason
200 Success - The backup_definition was successfully retrieved. Response body is the backup_definition.
401 Unauthorized - The Access Token provided is either invalid or does not have rights to perform the requested action.
404 Not found - The requested backup_definition could not be found.

Sample Code

      cURL: 
      curl https://api.backupify.com/v1/backup_instances -H 'Accept:application/json' -H 'Authorization: Bearer {access_token}' -d 'backup_instance[backup_definition_id]=1&backup_instance[customer_id]=1'

Vendor

API Endpoint - https://api.backupify.com/v1/vendors/me
Requires Access Token granted from client credentials.
Allowed Requests: GET

Vendor Attributes

Name Type Default Value Example Writable Description
id integer auto-incremented No The ID of the Vendor. Should be saved by the vendor to allow fast access to backup information to all users of their system.
name string pipelinedeals.com No Vendor Name
url string http://pipelinedeals.com No Vendor Website URL
description string oniqLYQ5+SrxhMRj8ISMqA== No Client ID of the vendor associated with the AccessToken in use
client_secret string t2tSk8oW+ EoRZRBIw+ CrkEv2lfTR LfyHrWsSS cLakdLcG 5TFMtTkLE 1ZbFwy+Ha 4u3MphwP 4YvL69Qm 6Br7wcA== No Client Secret of the vendor associated with the AccessToken in use

Vendor Parameters for GET

Parameter Value Description Parameter Type Data Type
access-token Access Token granted from client credentials authorizing vendor to perform operations header string

Error Status Codes

HTTP Status Code Reason
200 Success - Vendor was successfully updated. Response body is the updated object.
401 Unauthorized - The Access Token provided is either invalid or does not have rights to perform the requested action.

Sample Code

      cURL: 
      curl https://api.backupify.com/v1/vendors/me -H 'Accept:application/json' -H 'Authorization: Bearer {access_token}'