KMP PHP API Reference

TenantBackupService
in package

Table of Contents

Constants

BACKUP_TYPE  : mixed = 'json'
JOB_TYPE  : mixed = 'tenant_backup'
LEGACY_BACKUP_TYPE  : mixed = 'kmpbackup_json'

Properties

$dumper  : TenantBackupDumperInterface
$encryptor  : TenantBackupEncryptor
$platformConnection  : Connection
$secretStore  : SecretStoreInterface
$storage  : TenantBackupStorageInterface

Methods

__construct()  : mixed
backupTenant()  : TenantBackupResult
importArchiveAsBackup()  : TenantBackupResult
Record an existing logical archive (e.g. a decrypted legacy .kmpbackup) as a managed, envelope-encrypted tenant backup.
assertSafeSlug()  : void
findTenant()  : TenantMetadata
insertBackup()  : void
kekVersion()  : string
now()  : DateTime
prepareJob()  : void
runManagedBackup()  : TenantBackupResult
Shared managed-backup pipeline: job + backup rows, payload production, envelope encryption, object storage, and status bookkeeping.
scrubError()  : string

Constants

Properties

Methods

importArchiveAsBackup()

Record an existing logical archive (e.g. a decrypted legacy .kmpbackup) as a managed, envelope-encrypted tenant backup.

public importArchiveAsBackup(string $slug, string $logicalArchive, int $retentionDays[, array<string, mixed> $provenance = [] ]) : TenantBackupResult

The archive becomes a normal json backup row, so download, restore, retention, and recovery-key export all work unchanged.

Parameters
$slug : string
$logicalArchive : string
$retentionDays : int
$provenance : array<string, mixed> = []

Extra retention_policy metadata

Return values
TenantBackupResult

assertSafeSlug()

private assertSafeSlug(string $slug) : void
Parameters
$slug : string

insertBackup()

private insertBackup(string $backupId, string $jobId, TenantMetadata $tenant, string $kekName, string $kekVersion, int $retentionDays, DateTime $now[, array<string, mixed> $retentionPolicyExtra = [] ]) : void
Parameters
$backupId : string
$jobId : string
$tenant : TenantMetadata
$kekName : string
$kekVersion : string
$retentionDays : int
$now : DateTime
$retentionPolicyExtra : array<string, mixed> = []

Extra retention_policy metadata

kekVersion()

private kekVersion(string $kekName) : string
Parameters
$kekName : string
Return values
string

prepareJob()

private prepareJob(string $jobId, string $slug, DateTime $now, bool $existing) : void
Parameters
$jobId : string
$slug : string
$now : DateTime
$existing : bool

runManagedBackup()

Shared managed-backup pipeline: job + backup rows, payload production, envelope encryption, object storage, and status bookkeeping.

private runManagedBackup(string $slug, int $retentionDays, string|null $platformJobId, callable(TenantMetadata, string): void $producePayload, array<string, mixed> $retentionPolicyExtra) : TenantBackupResult
Parameters
$slug : string
$retentionDays : int
$platformJobId : string|null
$producePayload : callable(TenantMetadata, string): void

Writes the raw archive to the given path

$retentionPolicyExtra : array<string, mixed>

Extra retention_policy metadata

Return values
TenantBackupResult

scrubError()

private scrubError(string $message) : string
Parameters
$message : string
Return values
string
On this page

Search results