Skip to content
Start here

Undelete D1 Database

client.D1.Database.Undelete(ctx, databaseID, params) (*D1, error)
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
databaseID string

D1 database identifier (UUID).

params DatabaseUndeleteParams
AccountID param.Field[string]

Path param: Account identifier tag.

maxLength32
NewName param.Field[string]Optional

Body param: 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
type D1 struct{…}

The details of the D1 database.

CreatedAt TimeOptional

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

formatdate-time
FileSize float64Optional

The D1 database’s size, in bytes.

Jurisdiction D1JurisdictionOptional

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:
const D1JurisdictionEu D1Jurisdiction = "eu"
const D1JurisdictionFedramp D1Jurisdiction = "fedramp"
const D1JurisdictionUs D1Jurisdiction = "us"
Name stringOptional

D1 database name.

DeprecatedNumTables float64Optional

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

ReadReplication D1ReadReplicationOptional

Configuration for D1 read replication.

Mode D1ReadReplicationMode

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:
const D1ReadReplicationModeAuto D1ReadReplicationMode = "auto"
const D1ReadReplicationModeDisabled D1ReadReplicationMode = "disabled"
UUID stringOptional

D1 database identifier (UUID).

Version stringOptional

Undelete D1 Database

package main

import (
  "context"
  "fmt"

  "github.com/cloudflare/cloudflare-go"
  "github.com/cloudflare/cloudflare-go/d1"
  "github.com/cloudflare/cloudflare-go/option"
)

func main() {
  client := cloudflare.NewClient(
    option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
  )
  d1, err := client.D1.Database.Undelete(
    context.TODO(),
    "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    d1.DatabaseUndeleteParams{
      AccountID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
    },
  )
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", 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
}