API & development

Backup policy, snapshot and recovery data fields

Exact JSON field names and types, with public-request versus protected-state boundaries.

Platform
Go
Technology
Go

How to use these fields

This release-matched technical reference indexes the JSON-visible fields in the reviewed typed models. Start with the operational guide and API conventions. A model is not a public mutation schema: request structs, response records, protected plans and internal receipts serve different purposes. Submit only the fields supported by the exact endpoint/client; unknown fields are rejected. Internal sequence, signature, receipt, owner and generation values cannot be edited to grant authority. Optional means a Go JSON field can be omitted when empty; it does not waive an endpoint prerequisite. Values containing credentials/secrets must use the protected write-only form, never logs, query strings or support screenshots. Current account ownership, grants, feature/licence state and capability still apply.

RecoveryKey

JSON field Type Presence
id string Encoded by this model
label string Encoded by this model
provider string Encoded by this model
fingerprint string Encoded by this model
status string Encoded by this model
access_control json.RawMessage Encoded by this model
escrow_verified_at time.Time Encoded by this model
created_at time.Time Encoded by this model
updated_at time.Time Encoded by this model

Destination

JSON field Type Presence
id string Encoded by this model
name string Encoded by this model
kind string Encoded by this model
scope string Encoded by this model
account_id string Optional when empty
status string Encoded by this model
revision int64 Encoded by this model
configuration json.RawMessage Encoded by this model
recovery_key_id string Encoded by this model
minimum_free_bytes int64 Encoded by this model
bandwidth_bytes_per_second int64 Encoded by this model
last_verified_at *time.Time Optional when empty
last_failure_code string Optional when empty
created_at time.Time Encoded by this model
updated_at time.Time Encoded by this model

Retention

JSON field Type Presence
keep_last int Encoded by this model
keep_daily int Encoded by this model
keep_weekly int Encoded by this model
keep_monthly int Encoded by this model
max_age_days int Encoded by this model

Policy

JSON field Type Presence
id string Encoded by this model
destination_id string Encoded by this model
scope string Encoded by this model
account_id string Optional when empty
display_name string Encoded by this model
status string Encoded by this model
revision int64 Encoded by this model
cron_expression string Encoded by this model
timezone string Encoded by this model
components []string Encoded by this model
retention Retention Encoded by this model
notification_policy string Encoded by this model
maximum_bytes int64 Encoded by this model
next_run_at *time.Time Optional when empty
last_started_at *time.Time Optional when empty
last_finished_at *time.Time Optional when empty
last_result string Encoded by this model
created_at time.Time Encoded by this model
updated_at time.Time Encoded by this model

PolicyRequest

JSON field Type Presence
id string Optional when empty
destination_id string Encoded by this model
scope string Encoded by this model
account_id string Optional when empty
display_name string Encoded by this model
status string Encoded by this model
revision int64 Optional when empty
cron_expression string Encoded by this model
timezone string Encoded by this model
components []string Encoded by this model
retention Retention Encoded by this model
notification_policy string Encoded by this model
maximum_bytes int64 Encoded by this model

Snapshot

JSON field Type Presence
id string Encoded by this model
destination_id string Encoded by this model
policy_id string Optional when empty
scope string Encoded by this model
account_id string Optional when empty
format string Encoded by this model
status string Encoded by this model
revision int64 Encoded by this model
operation_id string Encoded by this model
components []string Encoded by this model
recovery_key_id string Encoded by this model
encrypted bool Encoded by this model
repository_snapshot_id string Optional when empty
manifest_digest string Optional when empty
bytes_written int64 Encoded by this model
item_count int Encoded by this model
consistency json.RawMessage Encoded by this model
integrity_verified_at *time.Time Optional when empty
completed_at *time.Time Optional when empty
failure_code string Optional when empty
notification_status string Encoded by this model
created_at time.Time Encoded by this model
updated_at time.Time Encoded by this model

SnapshotItem

JSON field Type Presence
id string Encoded by this model
snapshot_id string Encoded by this model
component string Encoded by this model
logical_name string Encoded by this model
source_resource_id string Optional when empty
bytes int64 Encoded by this model
sha256 string Encoded by this model
consistency string Encoded by this model
database_method string Optional when empty
credentials_included bool Encoded by this model
metadata json.RawMessage Encoded by this model
created_at time.Time Encoded by this model

RestoreSelection

JSON field Type Presence
item_id string Encoded by this model
action string Encoded by this model
target_account_id string Optional when empty
target_resource_id string Optional when empty
target_name string Optional when empty
conflict_action string Encoded by this model

RestoreConflict

JSON field Type Presence
item_id string Encoded by this model
kind string Encoded by this model
current_fingerprint string Optional when empty
message_code string Encoded by this model

RestorePreviewRequest

JSON field Type Presence
target_account_id string Optional when empty
selections []RestoreSelection Encoded by this model

RestorePreview

JSON field Type Presence
plan_id string Encoded by this model
snapshot_id string Encoded by this model
scope string Encoded by this model
source_account_id string Optional when empty
target_account_id string Optional when empty
revision int64 Encoded by this model
manifest_digest string Encoded by this model
selections []RestoreSelection Encoded by this model
conflicts []RestoreConflict Encoded by this model
conflict_digest string Encoded by this model
overwrite_confirmation_required bool Encoded by this model
created_at time.Time Encoded by this model

RestoreSubmitRequest

JSON field Type Presence
plan_id string Encoded by this model
revision int64 Encoded by this model
conflict_digest string Encoded by this model
overwrite_confirmation string Optional when empty

Submission

JSON field Type Presence
snapshot *Snapshot Optional when empty
restore_plan *RestorePreview Optional when empty
operation operations.Operation Encoded by this model
replayed bool Encoded by this model

NotificationDelivery

JSON field Type Presence
id string Encoded by this model
operation_id string Encoded by this model
snapshot_id string Encoded by this model
account_id string Optional when empty
event_kind string Encoded by this model
status string Encoded by this model
payload json.RawMessage Encoded by this model
attempt_count int Encoded by this model
failure_code string Optional when empty
created_at time.Time Encoded by this model
finished_at *time.Time Optional when empty

Verify the actual endpoint

Read a harmless authorized resource and validate the returned API/model version before automation. For a write, use current revision or ETag, the endpoint-specific secret/preview contract and a stable reviewed idempotency key. Follow the durable task to its final state and inspect service evidence. Missing/unqualified native behavior remains a release limitation; a field name does not prove a live service or complete recovery.

← All EmailaPanel guidesGet help →

Need help with EmailaPanel?

Tell us the product version and what you are trying to do. Keep passwords and private keys out of your message.

Contact Emaila