code: def backup(self, backup_name, folder_key=None, folder_name=None):
          
  
          folder = self._find_or_create_folder(folder_key, folder_name)
          drive_service = self.drive_service
          try:
              source_rsrc = drive_service.files().get(fileId=self.document_key).execute()
          except Exception, e:
              logger.exception("Google API error. %s", e)
              raise e
  
          backup = self._create_new_or_copy(source_doc=source_rsrc, 
                                          target_name=backup_name, 
                                          folder=folder,
                                          sheet_description="backup")
  
          backup_key = backup['id']
          return backup_key
docs: Copies the google spreadsheet to the backup_name and folder specified. 
          
          Args:
            backup_name (str): The name of the backup document to create.
  
            folder_key (Optional) (str): The key of a folder that the new copy will
              be moved to.
           
            folder_name (Optional) (str): Like folder_key, references the folder to move a
              backup to. If the folder can't be found, sheetsync will create it.