# Delete one or more website backups

This function deletes the named website backups, removing each archive
and its sidecar manifest.

Note:

* This is a synchronous delete. It starts no operation and nothing needs
  polling.
* The call returns one row per requested id rather than failing as a
  whole, so a partially successful batch reports each outcome
  individually.
* The call itself fails only when the whole batch is unusable, meaning
  the ids parameter carried no non-empty value at all.
 This function returns an array, so UAPI's generic api.filter_,
  api.sort_ and api.paginate_ parameters apply, and a
  caller-supplied sort replaces the default ordering of the data
  return value.
* This function requires the account's backup feature and is
  unavailable to demo (shared) accounts.

Endpoint: POST /WebsiteBackup/delete_backup
Version: 11.138.0.10
Security: BasicAuth

## Request fields (application/x-www-form-urlencoded):

  - `ids` (array, required)
    Identifier of a backup to delete, as returned by the
WebsiteBackup::list_backups function.

Note:
This parameter is repeatable and at least one non-empty
value is required.
    Example: ["example.com-2026.08.18_12-53-12","example.com-2026.08.11_09-04-55"]

## Response 200 fields (application/json):

  - `apiversion` (integer)
    The version of the API.
    Example: 3

  - `func` (string)
    The name of the method called.
    Example: "delete_backup"

  - `module` (string)
    The name of the module called.
    Example: "WebsiteBackup"

  - `result` (object)

  - `result.data` (array)
    One row per non-empty requested id.

Note:

* The function discards empty ids values before
  processing and they produce no row, so a client must
  match rows to requests by the id return value,
  never by position.
* Ordering is not guaranteed. Because data is an
  array of hashes, UAPI's api.sort_* and
  api.paginate_* parameters can reorder or truncate
  it.

  - `result.data.error` (string)
    Why this id could not be deleted. Absent when
the ok return value is 1.

Note:
The cause is a malformed id, an id with no
manifest on disk, a system-created backup, which
is not user-deletable, or the underlying
filesystem error.
    Example: "The backup does not exist."

  - `result.data.id` (string)
    The requested backup id this row reports on.
    Example: "example.com-2026.08.18_12-53-12"

  - `result.data.ok` (integer)
    Outcome for this id.

* 1 - The function deleted the archive and its
  manifest.
* 0 - The delete failed. See the error
  return value.
    Enum: 1, 0

  - `result.errors` (array,null)
    List of errors if the API failed.

  - `result.messages` (array,null)
    List of messages generated by the API.

  - `result.metadata` (object)

  - `result.metadata.transformed` (integer)
    Post-processing may have transformed the data.
    Enum: 1

  - `result.status` (integer)
    * 1 - Success.
* 0 - Failed. Check the errors field for more
  details.
    Enum: 0, 1

  - `result.warnings` (array,null)
    List of warnings generated by the API. Warnings
describe non-critical failures or other problematic
conditions noted while running an API.


