Skip to content
Start here

Undelete D1 Database

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
Path ParametersExpand Collapse
account_id: string

Account identifier tag.

maxLength32
database_id: string

D1 database identifier (UUID).

Body ParametersJSONExpand Collapse
new_name: optional string

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
errors: array of ResponseInfo { code, message, documentation_url, source }
code: number
minimum1000
message: string
documentation_url: optional string
source: optional object { pointer }
pointer: optional string
messages: array of ResponseInfo { code, message, documentation_url, source }
code: number
minimum1000
message: string
documentation_url: optional string
source: optional object { pointer }
pointer: optional string
result: D1 { created_at, file_size, jurisdiction, 5 more }

The details of the D1 database.

created_at: optional string

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

formatdate-time
file_size: optional number

The D1 database’s size, in bytes.

jurisdiction: optional "eu" or "fedramp" or "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 string

D1 database name.

Deprecatednum_tables: optional number

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

read_replication: optional object { mode }

Configuration for D1 read replication.

mode: "auto" or "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 string

D1 database identifier (UUID).

version: optional string
success: true

Whether the API call was successful

Undelete D1 Database

curl https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/d1/database/$DATABASE_ID/undelete \
    -X POST \
    -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
{
  "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
}