Skip to content
Start here

Undelete D1 Database

d1.database.undelete(strdatabase_id, DatabaseUndeleteParams**kwargs) -> D1
POST/accounts/{account_id}/d1/database/{database_id}/undelete

Restore a deleted D1 database. The database is restored with the name it had when it was deleted, unless new_name is provided. The restored database counts against the account’s limits. Undeleting a database that is not deleted succeeds without changes, unless new_name differs from its current name which errors.

Once a database is undeleted, Time Travel (point-in-time recovery) cannot restore it to a bookmark or timestamp at or before the undeletion. Only states after the undeletion can be restored.

Security
API Token

The preferred authorization scheme for interacting with the Cloudflare API. Create a token.

Example:Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY
API Email + API Key

The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

Example:X-Auth-Email: user@example.com

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

Example:X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194
ParametersExpand Collapse
account_id: str

Account identifier tag.

maxLength32
database_id: str

D1 database identifier (UUID).

new_name: Optional[str]

Restore the database with this name instead of the name it had when it was deleted. Required if another database in the account already uses that name.

ReturnsExpand Collapse
class D1: …

The details of the D1 database.

created_at: Optional[datetime]

Specifies the timestamp the resource was created as an ISO8601 string.

formatdate-time
file_size: Optional[float]

The D1 database’s size, in bytes.

jurisdiction: Optional[Literal["eu", "fedramp", "us"]]

Specify the location to restrict the D1 database to run and store data. If this option is present, the location hint is ignored.

One of the following:
"eu"
"fedramp"
"us"
name: Optional[str]

D1 database name.

Deprecatednum_tables: Optional[float]

The number of tables in the D1 database. This count is no longer accurate and should not be relied upon.

read_replication: Optional[ReadReplication]

Configuration for D1 read replication.

mode: Literal["auto", "disabled"]

The read replication mode for the database. Mode ‘auto’ denotes that D1 creates replicas and automatically places them around the world. Mode ‘disabled’ denotes that no database replicas are used.

One of the following:
"auto"
"disabled"
uuid: Optional[str]

D1 database identifier (UUID).

version: Optional[str]

Undelete D1 Database

import os
from cloudflare import Cloudflare

client = Cloudflare(
    api_token=os.environ.get("CLOUDFLARE_API_TOKEN"),  # This is the default and can be omitted
)
d1 = client.d1.database.undelete(
    database_id="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    account_id="023e105f4ecef8ad9ca31a8372d0c353",
)
print(d1.uuid)
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "result": {
    "created_at": "2022-11-15T18:25:44.442097Z",
    "file_size": 12,
    "jurisdiction": "eu",
    "name": "my-database",
    "num_tables": 12,
    "read_replication": {
      "mode": "auto"
    },
    "uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "version": "production"
  },
  "success": true
}
Returns Examples
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "result": {
    "created_at": "2022-11-15T18:25:44.442097Z",
    "file_size": 12,
    "jurisdiction": "eu",
    "name": "my-database",
    "num_tables": 12,
    "read_replication": {
      "mode": "auto"
    },
    "uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "version": "production"
  },
  "success": true
}