领航备份/领航PHP SDK

官方领航PHP SDK。

0.2.3 2024-08-24 14:31 UTC

This package is auto-updated.

Last update: 2024-09-24 14:46:32 UTC


README

Vanguard Logo

License: MIT Tests GitHub Release Packagist Downloads

领航PHP SDK

概览

领航PHP SDK 提供了与领航 API 交互的流畅接口,使您的备份操作管理更加高效。

API 文档

有关完整的 API 文档,包括请求/响应架构和示例有效负载,请参阅我们的官方 API 文档

领航 API 文档

在构造请求或处理响应时,此资源非常有价值,尤其是对于 SDK 未完全抽象的复杂操作。

入门指南

安装

使用 Composer 将领航 PHP SDK 添加到您的项目中

composer require vanguardbackup/vanguard-php-sdk

初始化 SDK

创建 VanguardBackup 客户端的新的实例

$vanguard = new VanguardBackup\Vanguard\VanguardClient('YOUR_API_KEY');

对于自定义领航安装,指定 API 基础 URL

$vanguard = new VanguardBackup\Vanguard\VanguardClient('YOUR_API_KEY', 'https://your-vanguard-instance.com');

核心功能

用户身份验证

检索已验证用户的详细信息

$user = $vanguard->user();

备份任务管理

管理您的备份任务

// List all backup tasks
$tasks = $vanguard->backupTasks();

// Get a specific backup task
$task = $vanguard->backupTask($taskId);

// Create a new backup task
$newTask = $vanguard->createBackupTask([
    'label' => 'Daily Database Backup',
    'source_type' => 'database',
    // ... other task parameters
]);

// Update an existing backup task
$updatedTask = $vanguard->updateBackupTask($taskId, [
    'frequency' => 'daily',
    // ... other parameters to update
]);

// Delete a backup task
$vanguard->deleteBackupTask($taskId);

// Get the status of a backup task
$status = $vanguard->getBackupTaskStatus($taskId);

// Retrieve the latest log for a backup task
$log = $vanguard->getLatestBackupTaskLog($taskId);

// Manually trigger a backup task
$vanguard->runBackupTask($taskId);

单个 BackupTask 实例还提供了一些常用操作的方法

$task->update(['label' => 'Weekly Full Backup']);
$task->delete();
$task->getStatus();
$task->getLatestLog();
$task->run();

备份任务日志管理

管理您的备份任务的日志

// List all backup task logs
$logs = $vanguard->backupTaskLogs();

// Get a specific backup task log
$log = $vanguard->backupTaskLog($logId);

// Delete a backup task log
$vanguard->deleteBackupTaskLog($logId);

单个 BackupTaskLog 实例还提供了一些常用操作的方法

$log->delete();
$log->isSuccessful();
$log->isFailed();

远程服务器管理

管理备份数据的来源服务器

// List all remote servers
$servers = $vanguard->remoteServers();

// Get a specific remote server
$server = $vanguard->remoteServer($serverId);

// Add a new remote server
$newServer = $vanguard->createRemoteServer([
    'label' => 'Production DB Server',
    'ip_address' => '192.168.1.100',
    // ... other server details
]);

// Update a remote server
$updatedServer = $vanguard->updateRemoteServer($serverId, [
    'label' => 'Updated Production DB Server',
]);

// Remove a remote server
$vanguard->deleteRemoteServer($serverId);

备份目标管理

控制备份存储的位置

// List all backup destinations
$destinations = $vanguard->backupDestinations();

// Get a specific backup destination
$destination = $vanguard->backupDestination($destinationId);

// Create a new backup destination
$newDestination = $vanguard->createBackupDestination([
    'type' => 's3',
    'bucket' => 'my-backups',
    // ... other destination details
]);

// Update a backup destination
$updatedDestination = $vanguard->updateBackupDestination($destinationId, [
    'bucket' => 'new-backup-bucket',
]);

// Remove a backup destination
$vanguard->deleteBackupDestination($destinationId);

标签管理

使用标签组织您的备份资源

// List all tags
$tags = $vanguard->tags();

// Get a specific tag
$tag = $vanguard->tag($tagId);

// Create a new tag
$newTag = $vanguard->createTag(['label' => 'Production']);

// Update a tag
$updatedTag = $vanguard->updateTag($tagId, ['label' => 'Staging']);

// Delete a tag
$vanguard->deleteTag($tagId);

通知流管理

配置接收备份警报的方式

// List all notification streams
$streams = $vanguard->notificationStreams();

// Get a specific notification stream
$stream = $vanguard->notificationStream($streamId);

// Create a new notification stream
$newStream = $vanguard->createNotificationStream([
    'type' => 'slack',
    'webhook_url' => 'https://hooks.slack.com/services/...',
]);

// Update a notification stream
$updatedStream = $vanguard->updateNotificationStream($streamId, [
    'events' => ['backup_failed', 'backup_successful'],
]);

// Delete a notification stream
$vanguard->deleteNotificationStream($streamId);

安全

有关报告安全漏洞,请参阅我们的 安全策略

许可

领航 PHP SDK 是开源软件,在 MIT 许可 下发布。

致谢

我们想感谢 Laravel Forge PHP SDK,它为这个 SDK 的结构和设计提供了灵感。